我使用ggplot来生成一个按因子堆叠的条形图。
ggplot(X) +
geom_bar(aes(X$Decade, fill=factor(X$Motivation)),
position='fill') +
theme(legend.position = "bottom")+
theme(axis.title.x = element_text(size = 20),
axis.title.y = element_text(size = 20))+
theme(text = element_text(size=20))+
theme(legend.text = element_text(size = 16),legend.title = element_blank())+
xlab("Decade")+
ylab("Percentage")+
scale_y_continuous(labels=percent)
但是程序会给出以下警告,
警告信息:position_fill需要不重叠的x间隔
结果数字如下
所示
似乎1940年的十年是一个警告。当1940年的观测值是
时
我不知道这里有什么问题,因为其他的观测结果看起来像1940年的,当我删除1940年的观测结果时,就不再有任何警告了。
1条答案
按热度按时间8ehkhllq1#
尝试将x变量(Decade)转换为因子。不幸的是,我们无法测试您的代码,因为您没有提供数据的reprex。此外,正如评论者提到的,您不应该使用X$Decade,因为在ggplot中,您已经将X加载为数据集。