【发布时间】:2020-06-07 14:43:35
【问题描述】:
我正在寻求有关我为生成堆叠条形图而编写的一些 R 代码的帮助。这是使用 ggplot2 包。这是我的代码:
Plot1 = ggplot(data = data1, aes(x= Main_Cat, y= Percentage, fill= Sub_Cat)) + # don't change these
geom_bar(position = position_stack(), stat="identity", width = 1) + # don't change these
ggtitle("title") + # title text
theme(plot.title = element_text(hjust = 0.5, size=14, face = "bold")) +
xlab("All Categories") + # x axis text
ylab("Percentage (%)") + # y axis text
geom_text(aes(label = Percentage), position = position_stack(vjust = 0.5), size = 4.6) + # number labels on graph
theme(panel.background = element_blank()) + # background colour
theme(axis.line = element_line(colour = "black")) + # axis colour
scale_y_continuous(expand = c(0,0)) + scale_x_discrete(expand = c(1,1)) + # change position of axis
theme(axis.text=element_text(size=12, face = "bold", colour = "black"),
axis.title=element_text(size=14,face="bold", colour = "black")) + # axis settings
scale_fill_manual(values = c("#FFFF00", "#98FB98", "#00BFFF", "#0000FF")) + #change colours
theme(axis.line.x = element_line("white"))
print(Plot1)
我想将条形图移近 y 轴或将 y 轴移近条形而不改变条形本身的宽度。
有什么建议吗?
【问题讨论】:
-
您能提供“data1”或它的一小部分以便能够使用您提供的代码吗?
-
请使用此参考来生成相同的t-redactyl.io/blog/2016/01/…
-
嗨@Dave,我创建了一个示例数据集以与以下代码一起使用:Main_Cat = c("All") Sub_Cat = c("A", "B", "C", "D ") 百分比 = c(4, 5, 67, 24) data1 = data.frame(Main_Cat, Sub_Cat, Percentage)
标签: r ggplot2 stacked-chart