gpt4 book ai didi

r - 在ggplot2中,条形的边框可以只在一侧改变吗? (颜色、厚度)

转载 作者:行者123 更新时间:2023-12-04 09:32:54 27 4
gpt4 key购买 nike

我知道,3D 条形图是一种罪过。但是我被要求做它们,作为一种权衡,我建议只制作一个比酒吧顶部和右侧的酒吧颜色稍深的边框。像那样,酒吧会有某种“阴影”(urgh),但至少你仍然可以比较它们。

有没有办法做到这一点?

ggplot(diamonds, aes(clarity)) + geom_bar() 

最佳答案

正如您已经说过的 - 3D 条形图“不好”。您不能直接在 ggplot2 中执行此操作,但这里有一个可能的解决方法。

首先,制作包含清晰度级别和每个级别对应计数的新数据框。

library(plyr)
df2<-ddply(diamonds,.(clarity),nrow)

然后在 ggplot()调用使用新数据框和 clarity作为 x 值和 V1 (计数)作为 y 值并添加 geom_blank() - 这将使 x 轴具有我们需要的级别。然后添加 geom_rect()为条形图生成阴影 - 此处 xminxmax值已生成 as.numeric()来自 clarity并添加常量 - 对于 xmin常数应小于条形宽度的一半和 xmax常数大于条形宽度的一半。 ymin是 0 和 ymaxV1 (计数)加上一些常数。最后加 geom_bar(stat="identity")在此阴影上方绘制实际条形图。
ggplot(df2,aes(clarity,V1)) + geom_blank()+
geom_rect(aes(xmin=as.numeric(clarity)-0.38,
xmax=as.numeric(clarity)+.5,
ymin=0,
ymax=V1+250),fill="green")+
geom_bar(width=0.8,stat="identity")

enter image description here

关于r - 在ggplot2中,条形的边框可以只在一侧改变吗? (颜色、厚度),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19927114/

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