R ggplot中的条形图正在删除第一个和最后一个值
我想创建一个非常简单的条形图。 这里是我想要绘制的变量和数据(请注意,虽然它是一个时间序列,但x变量不是一个日期,而是一个有序因子): 这是ggplot中非常简单的代码,我用它来绘制这些值:R ggplot中的条形图正在删除第一个和最后一个值,r,ggplot2,bar-chart,R,Ggplot2,Bar Chart,我想创建一个非常简单的条形图。 这里是我想要绘制的变量和数据(请注意,虽然它是一个时间序列,但x变量不是一个日期,而是一个有序因子): 这是ggplot中非常简单的代码,我用它来绘制这些值: ggplot(data, aes(x= Wave, y=value))+ geom_bar( stat="identity")+ theme(axis.text.x = element_text(angle=90, vjust = 0.5)) 除了不绘制序列的第一个和最后一个值之外,
ggplot(data, aes(x= Wave, y=value))+ geom_bar( stat="identity")+ theme(axis.text.x = element_text(angle=90, vjust = 0.5))
除了不绘制序列的第一个和最后一个值之外,一切正常(这是一个非常基本的绘图)
我从过去关于类似问题的帖子中了解到,我需要扩展x轴,事实上,这段代码解决了这个问题:
ggplot(Graphs, aes(x= Wave, y=`More optimistic`))+ geom_bar( stat="identity")+ theme(axis.text.x = element_text(angle=90, vjust = 0.5))+ scale_x_discrete(limits= c("Spring 2015", "Autumn 2015", "Spring 2016", "Autumn 2016", "Spring 2017", "Autumn 2017", "Spring 2018", "Autumn 2018", "Spring 2019", "Autumn 2019", "Spring 2020", "Autumn 2020"))
然而,这是相当繁琐的,需要大量的写作
任何人都知道:
非常感谢 您可以尝试用
比例离散(限制=排序(波浪))替换比例离散(限制=排序(波浪))
除非您使用dput()
提供数据,否则我无法进行测试,因为几乎每个问题都包含标签并询问标签的顺序,这些问题可以通过以下两种方式之一解决:(1)转换为数字(当它是字符串中类似数字的东西时,应该是数字)或(2)转换为因子
,并显式控制其级别=
。如果Wave
变量中有个月,则我们可以将其作为日期
处理(如上面的1类数字)。但是,既然没有,您可以显式地控制向量中的顺序,那么我们应该使用选项2。因为您知道候选季节(“春季”
在“秋季”
之前,以及“2018”
在“2019”
之前),所以我们可以通过编程强制执行顺序
如果您的数字(1)每个波有一个以上的观测值,可能是堆叠条形图,或者(2)它们不是天生有序的,那么这里有一种技术可以确保它们的顺序正确。首先,我将故意对它们进行无序排列,以证明该方法(显然,您的解决方案中不需要此步骤)
set.seed(2021年)
数据因为它是一个因子,所以x轴按因子值排序,而不是按外观顺序或字母顺序。当您向scale\u x\u discrete
提供限制向量时,您实际上是在手动覆盖按因子级别排序。这与扩展x轴无关。您可以尝试重新设置escale\u x\u离散(limits=c(“2015年春季”、“2015年秋季”和[…])
带有scale\u x\u离散(limits=sort(Wave))
。除非您使用dput()提供数据,否则我无法进行测试
。你好,马里奥,谢谢你的建议。但是,我不完全理解你的答案,因为问题不是我把变量按错误的顺序排序,而是我没有得到两个数据点(“本系列开头的2015年春季”和结尾的2020年秋季)在图表中绘制。作为后续,重新排序因子变量确实有效!非常感谢。我仍然想了解链接“排序”的原因是什么在变量中,两个值根本没有被绘制……您提供的绘图上没有丢失任何数据,只是与您认为提供的顺序不同。
ggplot(Graphs, aes(x= Wave, y=`More optimistic`))+ geom_bar( stat="identity")+ theme(axis.text.x = element_text(angle=90, vjust = 0.5))+ scale_x_discrete(limits= c("Spring 2015", "Autumn 2015", "Spring 2016", "Autumn 2016", "Spring 2017", "Autumn 2017", "Spring 2018", "Autumn 2018", "Spring 2019", "Autumn 2019", "Spring 2020", "Autumn 2020"))