【发布时间】:2020-02-06 12:22:34
【问题描述】:
我有一些调查数据,其中有一个因素在采访中被提及的次数,然后是每个提及的正面、中性或负面的百分比。我想在圆形堆叠条形图中显示它,图中的每个部分都显示每个因素的响应百分比是正面/中性/负面,每个条形/片段的宽度表示与每个因素相关的响应数量因素。我已经能够使用 ggplot 和 coord_polar 来实现这一点,但我遇到的问题是圆圈周围的每个因素都是均匀分布的,在条形之间留有间隙。但我想知道是否有可能改变这些因素在圆圈周围的位置,从而产生一个“完整”的饼图,其中包含不同大小的段但它们之间没有间隙?
这是我到目前为止所做的;
data <- data.frame(Factor = c("One", "Two", "Three", "Four", "Five", "Six"),
responses = c(23,16,8,16,17,20),
positive = c(65.2,56.3,25,68.8,76.4,50),
neutral =c(30.4,12.5,25,12.5,17.6,20),
negative=c(4.3,31.3,50,18.8,5.9,30))
data2 <-melt(data, id=c("Factor","responses"))
data2$Factor <- factor(data2$Factor, levels = c("One", "Two", "Three",
"Four", "Five","Six"))
ggplot(data2) +
geom_bar(aes(Factor, value, fill=variable, width=responses/25), stat="identity", alpha=0.5) +
coord_polar()
这是由谁制作的;
但是我想要更接近这个的东西,就填充圆圈的线段的宽度而言,然后让每个线段像上面一样堆叠;
任何帮助将不胜感激!谢谢
【问题讨论】:
-
如果不将其扭曲成一个圆圈,该图将提供更多信息。我至少对简单的饼图还算满意,但径向分割也是一团糟。
标签: r ggplot2 stacked-area-chart radial