我一直在网上寻找解决方案,但找不到合适的解决方案。这是我的数据:
tag Center n n_tag persen
1 lisan я 103 2142 0.048085901
2 medrus я 11 2588 0.004250386
3 medsos я 28 2778 0.010079194
4 puisi я 66 2622 0.025171625
这是我可视化条形图的代码,其中 x = 标签,y = 人员。
ggplot(df_persen, aes(tag, persen, color=Center) + geom_bar(stat="identity", width=0.6) + theme_classic()
这是以下结果:
如您所见,颜色仅存在于轮廓中。我希望颜色填充整个条形图,而不仅仅是轮廓。
我知道我们可以使用填充 geom_bar 来为整个条形图着色,如下所示:
ggplot(df_persen, aes(tag, persen)) + geom_bar(stat="identity", width=0.6, fill="cyan4") + theme_classic()
我希望条形图看起来大约像那样。是的,我知道我当前的数据在 Center 列中只有 1 个变量,但稍后我会添加更多变量,以便我可以根据 Center 中变量的颜色对其进行分类。
我怎样才能做到这一点?预先感谢!
你必须在 aes() 函数中包含 fill = Center 来根据“Center”变量指定填充颜色
df_persen <- data.frame(
tag = c("lisan", "medrus", "medsos", "puisi"),
Center = rep("я", 4),
n = c(103, 11, 28, 66),
n_tag = c(2142, 2588, 2778, 2622),
persen = c(0.048085901, 0.004250386, 0.010079194, 0.025171625)
)
# Load the ggplot2 library
library(ggplot2)
# Plot the barplot
ggplot(df_persen, aes(tag, persen, fill = Center)) +
geom_bar(stat = "identity", width = 0.6) +
theme_classic()