【发布时间】:2018-08-08 14:03:13
【问题描述】:
我目前正在研究 R,我在使用 ggplot2 包中的箱线图时遇到了一些问题。
我想做的是根据道路上车辆的速度绘制 NO2 浓度。所以我有一个 连续的 x 轴 和一个连续的 y 轴。当我使用 geom_boxplot 时,我得到了这些图表
ggplot(df, aes(x=Speed, y=Concentration)) +
geom_boxplot() +
scale_x_continuous(limits = c(0, 100)) +
scale_y_continuous(limits = c(0,500))
我们可以看到盒子随机放置在this graph上我想要的是在0到100公里/小时之间每20公里/小时得到一个不同的箱线图。
我尝试过在论坛的其他主题上看到的不同内容,例如:
aes(group = cut_width(Speed, 20))
但没有任何变化,我的箱子不会每 20 公里/小时定位一次。
我不确定我的解释是否很清楚,如果您有不明白的地方,请不要犹豫。
我试图解决这个问题已经有几天了,如果有人能帮助我解决这个问题,我将非常感激。
谢谢, 情人节
编辑:这是创建数据集的代码和结果图片。
df = data.frame(matrix(ncol = 2, nrow = 20))
colnames(df) = c("Speed", "Concentrations")
df$Speed = runif(20, 0,100)
df$Concentrations = runif(20,0,500)
ggplot(df, aes(x = Speed, y = Concentrations)) + geom_boxplot(aes(group = cut_width(Speed, 20)))
结果是here。我想要的是有一个速度为 20、40、60、80 的盒子。
【问题讨论】:
-
请发布您的数据的代表性样本,我们可以用来提供帮助。这些框按您分配给 x 的变量分组,因此在本例中是速度。所以这就是你需要申请
cut_width的地方。 -
好的,这里有一个指向数据框的链接:drive.google.com/drive/folders/… 我在发帖时犯了一个错误,我刚刚编辑了这个速度错误,谢谢。
-
请发布一个不需要我们下载数据的独立示例,最好使用
reprex包。另请参阅:reprex.tidyverse.org/articles/reprex-dos-and-donts.html -
我在我的帖子中添加了一个代码来创建数据集,因为我不明白如何使用 reprex :(。我希望它很好。谢谢。
标签: r ggplot2 boxplot continuous