如何解决如何在图形边框的最边缘放置刻度线? (ggplot)
我希望我的刻度线/网格线位于绘图边框的最边缘。
我想要的: Drawn graph with leftmost and rightmost tick marks on the borders
它的样子: GGPlot graph with leftmost and rightmost tick marks NOT on the borders
用于创建上述代码:
data <- data.frame(
year = seq(1998,2018),soc = runif(21,1,90)
)
ggplot(data,aes(x = year,y=soc)) +
geom_line(data=data) +
xlim(c(1995,2020)) +
theme_bw() +
theme(panel.grid.major = element_line(colour="gray",size=0.5))
This question 没有正确解决问题 - 我不希望将轴限制适合我的数据点的最小值和最大值,而是要确保刻度线完美地落在图表。
解决方法
您可以通过在 expand=FALSE
中设置 coord_cartesian
来移除额外的绘图区域。
然后我修改了图边距,这样最右边的数字就不会被截断。
ggplot(data,aes(x = year,y=soc)) +
geom_line(data=data) +
scale_x_continuous(limits = c(1995,2020)) +
theme_bw() +
theme(panel.grid.major = element_line(colour="gray",size=0.5)) +
coord_cartesian(expand = F)+
theme(plot.margin = margin(6,10,6,6))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。