奇怪的顺序,我试图创建一个发散堆积条形图像here,和我遇到了类似的问题,这SO question。我的方法稍有不同,但我通过一个数据集管理它,而不是两个,而且我的颜色与我的数据无关。ggplot叠置条
Reprex如下:
library(tidyverse)
library(RColorBrewer)
x <- tribble(
~response, ~count,
0, -27,
1, -9,
2, -41,
3, -43,
4, -58,
5, -120,
5, 120,
6, 233,
7, 379,
8, 388,
9, 145,
10, 61
) %>%
mutate(response = factor(response))
ggplot(x, aes(x = 1, y = count, fill = response)) +
geom_col() +
scale_fill_brewer(palette = "RdBu") +
coord_flip()
的问题是与层叠的数据在零的右侧的顺序做他们堆叠似乎按降序排列。关于如何解决此问题的任何想法,将不胜感激(预期订货会是0-10,不0-5,10-5)
这是一个棘手的问题,因为最终这应该类似于一个从0到10的Likert刻度,从左到右。 5中有2条记录的原因是因为我希望一半是图表“中点”的任一侧。这种排序不符合目的。 – Dan
啊,是的,后来注意到顺序颠倒了(相对于传说)。此外,这些值代表有序值(而不是实际计数),使其成为不理想的答案:)或者,您可以根据计数来排序变量,创建一个手动比例,包括'RColorBrewer :: brewer.pal(11,“RdBu”) '(重复5次)并附上你的DF。这可以用作'scale_fill_manual'的输入。 – timfaber