当前位置: 首页 > 知识库问答 >
问题:

使用GGPLOT2:在制作散点图时保留数据表的某些行

萧宣
2023-03-14

进入R课的第三周(请耐心等待我,即使很明显哪里出了问题!),我正在与使用R ggplot2库的作业问题作斗争。使用内置的钻石数据框架,问题是为原木(克拉)和原木(价格)绘制散点图回归线,但只绘制公平理想的切割钻石。

这就是剧情应该是什么样的

一个简单的背景,这里有三个变量是克拉(num)、切割(公平、良好、非常好、溢价、理想)和价格(int)。

我从以下代码开始:

set.seed(123) 
d <- ggplot(diamonds[sample(nrow(diamonds),5000),] #this was provided to us in the homework

d + geom_point(aes(x = log(carat), y = log(price), colour = cut) +
  labs(title = 'Regression line for Fair and Ideal Cut Diamonds') +
  stat_smooth(aes(x = log(carat), y = log(price), colour = cut), method = "gam")

这是我得到的

现在,我知道这是不正确的,因为“color=cut”显示了所有的剪裁,但我只想要“公平”和“理想”。教授暗示我们应该尝试diamonds$cut%在%c(...)中,所以我尝试了许多不同的方法。最新的(错误的)代码之一是:

d + geom_point(aes(x = log(carat), y = log(price), colour = diamonds[diamonds$cut%in%c("Fair","Ideal")]), alpha = 0.5) +
 labs(title = 'Regression line for Fair and Ideal Cut Diamonds') +
 stat_smooth(aes(x = log(carat), y = log(price), colour = diamonds[diamonds$cut%in%c("Fair","Ideal")]), method = "gam")

无论我试图在哪里子集diamonds$cut(例如,'['的逻辑索引向量的长度必须等于列数,astitute必须长度为1或与数据(5000)相同:color),我都会继续得到错误消息。

我如何提取公正和理想的切割来制作这张图?

任何帮助都很感激!

共有1个答案

公孙宏远
2023-03-14

这是将data参数定义ggplot2的方法,然后在ggplot参数中声明它,尽管我不确定在AES(color=cut)中将cut列指定为映射变量时,如何筛选cut列。尽管情节并不完全像你的帖子所说的那样,如果这一点很重要的话。希望这能有所帮助。

library(ggplot2)

set.seed(123)
z <- diamonds[sample(nrow(diamonds),5000),]
z <- z[z$cut %in% c("Fair", "Ideal"),]

d <- ggplot(data = z) +
  geom_point(aes(x = log(carat), y = log(price), colour = cut), alpha = 0.5) +
  labs(title = 'Regression line for Fair and Ideal Cut Diamonds') +
  stat_smooth(aes(x = log(carat), y = log(price), colour = cut), method = "gam")
d

于2019-03-21由reprex包(V0.2.1)创建

 类似资料:
  • 我有一个碳/石墨堆栈与一些非常基本的保留模式设置。除了一些统计数据之外,这些保留期工作得很好--这些似乎只持续一周。 我的存储-schemas.conf: 在受影响的.wsp上使用whisper-info.py会显示以下内容: 有人能提出我可能错过的什么吗?

  • 我想标记我在python中绘制的每个点,但我没有找到合适的方法。 假设我有两个名为和的元素列表,我以这种方式打印它们: 我想用变量k来标记每个点,的范围显然是从到。谢谢你抽出时间

  • 我的目标是用JFreeChart XY散点图显示一些数据,以便在按下jButton时显示该散点图,并且还可以单击该散点图上的数据点并查看有关它们的一些附加信息。在按下jButton之后,从外部数据文件导入数据点,并创建散点图。绘图按预期工作,但情节对鼠标单击没有反应。 我试图在包含散点图的图表面板中添加一个ChartMouseListener,但它似乎没有注册鼠标单击,或者对单击没有反应。 这是代

  • 我用图表js设置了一个折线图。 正如你所看到的,我有太多的数据点。有没有办法限制图表本身的点数,或者减少数据?此图的当前形式难以读取,对性能不利。

  • 我有数据,这些数据由一个2坐标数据点(例如[0,2])汇总。然而,我的数据框和条形图是按字母顺序排列的,即使坐标是因子数据类型。 数据帧/ggplot默认行为:[0,1]、[0,13]、[O,2]我希望发生的事情:[0.1]、[0,2]、[o,13] 此坐标变量是通过粘贴两列中的数字创建的 其中sl_ subsection_index是整数并且sl_。 坐标可以有任何组合,因此我想避免手动强制因子

  • 问题内容: 我有在同一活动中多次动态添加的 自定义 。 每个自定义视图实例在其他东西旁边都有一个孩子。该有它的 ID ,它是同每个视图的实例。 对于每个自定义视图实例,我在创建活动时都设置了不同的内容。当我旋转屏幕时,将重新创建活动,但是现在每个活动都显示相同(文本与最后一个实例的文本相同)。 这是因为实例状态的保存和还原会自动保存一些信息,但是该信息显然与ID链接,在我的情况下会产生问题。 有没