您好,我一直在尝试通过特定列的总和来汇总我的数据集,并直接使用ggplot和geom_bar()来这样做,而不是使用tidyvers和dplyr库。
我了解了重量美学,它可以帮助将条形图绘制为特定特征的总和,而不是计数,并且有效。
问题是我无法在条形图上绘制y值,因为我不知道如何编写geom_text(????) 代码:
p1<-ggplot(df, aes(x= ageBracket, fill= movement, **weight= amount**))+ geom_bar(width= 0.5, position= 'dodge')+ theme_hc()+scale_x_discrete('Age Group', limits=c("16 to 25 years", "26 to 35 years", "36 to 45 years", "> 46 years"))+ theme(legend.position= "bottom",legend.background = element_rect(fill="lightblue", size=0.2, linetype="solid"))+ scale_fill_brewer(palette = "Dark2")+ scale_y_continuous("Amount per Age Group",labels = comma)+ **geom_text(?????)**
print(p1)
Blockquote
这里的填充帮助我隔离了我所躲避的条形图,权重帮助我基于以下元素的过滤器对数据进行了求和:Movement&ageBracket,我只想将y轴值放在相应条形图的顶部,而不想要创建一个单独的数据框。我该怎么办??
答案 0 :(得分:0)
使用权重美学时,当前版本的ggplot2不允许在geom_text()中使用标签。您必须总结数据框,然后使用标签美感进行常规处理。
实际上,并不需要使用mtcars数据集显示的那样多的额外工作。仅需要多两行,并且如果将结果转发给管道,则无需创建新的数据框。
STATIC_PATHS = [
'images',
'extra',
'html',
]
EXTRA_PATH_METADATA = {
'extra/custom.css': {'path': 'custom.css'},
'extra/robots.txt': {'path': 'robots.txt'},
'extra/favicon.ico': {'path': 'favicon.ico'},
'extra/CNAME': {'path': 'CNAME'},
'extra/LICENSE': {'path': 'LICENSE'},
'extra/README': {'path': 'README'},
'html/page_name.html' : {'path' : 'page_name.html'}
}
(1)使用权重美学将library(ggplot2)
library(dplyr)
data(mtcars)
和mpg
的{{1}}变量求和。无法将标签添加到条形图(6行)。
am
(2)首先汇总数据,然后将标签美化与geom_text结合使用,可以将标签添加到条形图(多出2行)。
cyl