用 echarts4r 绘图添加数据标签的话,e_labels(show = TRUE)
像这样打开开关就可以了。但本新手发现,ggplot2 添加的数据标签不是自动生成的,而是需要再特别指定。俺今天又遇到了两个问题。
其一,aes()
挪地方会报错
下面是代码,如果不加geom_text()
,那么aes(x=cut)
不管放到ggplot()
里面还是放到geom_bar()
里面都能执行,但是加了geom_text()
后,把aes(x=cut)
挪到geom_bar()
里面会报错,这里俺想不明白。
# 正常执行
ggplot(diamonds, aes(x = cut)) + geom_bar()
# 正常执行
ggplot(diamonds) + geom_bar(aes(x = cut))
# 正常执行
ggplot(diamonds, aes(x = cut)) +
geom_bar() +
geom_text(aes(label = ..count..), stat = "count", vjust = -0.5)
# 报错
ggplot(diamonds) +
geom_bar(aes(x = cut)) +
geom_text(aes(label = ..count..), stat = "count", vjust = -0.5)
其二,geom_text()
中的 stat 参数是起什么作用的?
本菜鸟误打误撞计算得到了一个分组的比例,但是不明白这里明明是要将比例作为数据标签展示,为撒要设定stat = "count"
才不会报错呢?
ggplot(data = diamonds, aes(
x = cut,
y = ..prop..,
group = color,
fill = color
)) +
geom_bar(position = position_dodge(0.9)) +
geom_text(
aes(label = scales::percent(..prop..)),
stat = "count",
position = position_dodge(0.9),
vjust = -0.5,
size = 3
)