r-有没有办法将线条图(分辨率更高)覆盖到条形图(分辨率更低)上

  • 本文关键字:分辨率 覆盖 有没有 条形图 r ggplot2
  • 更新时间 :
  • 英文 :


因此,我有一个具有相关难度值的性能分数数据集,我想显示每个难度值的平均性能分数。难度值的范围从0到10,但最多有10个小数点,因此是超特定的。为了让它更清晰,我一直在把难度分数分组到垃圾桶里。我已经用两种不同的分辨率完成了这项工作,宽度为0.1的垃圾箱和宽度为1的垃圾箱。

我想做的是在条形图(使用更宽的分辨率(的顶部显示一个折线图(使用精细的数据点(,但我希望条形图保持其结构。现在,当我试图覆盖折线图时,x轴似乎与折线图成比例,条形图最终非常窄。

这是条形码:

g1.4 = ggplot() +
geom_bar(data = grouped_diff_wide, aes(y=mean_diff_perf, x=gr, fill=subject), stat = "identity" )+
facet_wrap(~subject)+
ggtitle("Average Performance By Difficulty")+
labs(fill = "Subject")+
ylab("Performance")+
xlab("Difficulty")+
scale_x_discrete(breaks = diff_breaks_wide, labels = seq(0, 9, 1))
g1.4

以及生成的图形:只是条形图

这是线路图代码:

g1.5 = ggplot() +
geom_line(data = grouped_diff_fine, aes(y=mean_diff_perf, x = gr, group = 1))+
facet_wrap(~subject)+
ggtitle("Average Performance By Difficulty")+
labs(fill = "Subject")+
ylab("Performance")+
xlab("Difficulty")+
scale_x_discrete(breaks = diff_breaks_fine, labels = seq(0, 9, 1))
g1.5

结果图:只是的线图

下面是我将它们结合起来的尝试:

g1.6 = ggplot() +
geom_bar(data = grouped_diff_wide, aes(y=mean_diff_perf, x=gr, fill=subject), stat = "identity" )+
geom_line(data = grouped_diff_fine, aes(y=mean_diff_perf, x = gr, group = 1))+
facet_wrap(~subject)+
ggtitle("Average Performance By Difficulty")+
labs(fill = "Subject")+
ylab("Performance")+
xlab("Difficulty")+
scale_x_discrete(breaks = diff_breaks_fine, labels = seq(0, 9, 1))
g1.6

结果如何:与瘦条的组合情节

有没有一种方法可以保持独立条形图的比例,但要覆盖折线图?

您可以使用geom_barwidth参数(请参阅此处(。作为一个使用内置mtcars数据的非常简单的例子:

ggplot(mtcars, aes(x = mpg, y = disp)) + 
geom_bar(stat = "identity", width = 1.1) + 
geom_line(colour = "blue", size = 2)

相关内容

  • 没有找到相关文章

最新更新