gpt4 book ai didi

r - 使用 facet_grid 时在 ggplot2 中指定自定义误差线

转载 作者:行者123 更新时间:2023-12-04 09:33:10 26 4
gpt4 key购买 nike

我使用 stat_summary 从我的数据创建了多个条形图。但是,我想手动指定误差线的限制(而不是使用 mean_cl_boot)。对于使用 facet_grid 绘制的数据,如何做到这一点?

我用来创建图表的代码如下:

graph <- ggplot(slantclean, aes(x = View,value, fill = Texture))

graph + stat_summary(fun.y = mean, geom = "bar", position = "dodge") +
stat_summary(fun.data = mean_cl_boot, geom = "pointrange",
position = position_dodge(width = 0.90)) +
labs(x = "View", y = "Vertical height of ellipse (cm)", fill = "Texture") +
facet_grid( Shape ~ TNOGroup)

不幸的是,数据的复杂性意味着不可能有一个最小的例子。数据框可以访问here .该图的一个示例是 here .

最佳答案

您可以定义自己的函数以在 stat_summary() 中使用。如果你在 stat_summary() 中使用 geom="pointrange" 那么你的函数应该给出 y, yminymax 一个数据帧中的值。

这里只是制作函数 my.fun 的示例,该函数计算最小值、最大值和平均值。在 stat_summary() 中使用时,将为数据中的每个级别计算此值。

my.fun<-function(x){data.frame(ymin=min(x),ymax=max(x),y=mean(x))}

graph <- ggplot(slantclean, aes(x = View,value, fill = Texture))

graph + stat_summary(fun.y = mean, geom = "bar", position = "dodge") +
stat_summary(fun.data = my.fun, geom = "pointrange", position = position_dodge(width = 0.90)) +
labs(x = "View", y = "Vertical height of ellipse (cm)", fill = "Texture") +
facet_grid( Shape ~ TNOGroup)

enter image description here

关于r - 使用 facet_grid 时在 ggplot2 中指定自定义误差线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16153779/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com