R ggplot2绘制geom_line()图时坐标轴不从原点起始问题求助
问题原因
ggplot2对连续型坐标轴默认会添加5%的扩展边距,用于避免数据点紧贴绘图区域边界,该边距不会被coord_cartesian()的xlim/ylim参数覆盖,所以会出现坐标轴没有从原点紧贴绘图区角落显示的情况。
解决方法
在x、y轴的连续刻度配置中添加expand参数,将扩展量设置为0即可消除多余边距。
修改后的完整代码
Graph <- ggplot(data=Test,aes(x=Enc1,y=N,group=Trial,colour=Trial)) + geom_line(size = 1) + coord_cartesian(xlim = c(0, 100), ylim = c(0, 7)) + # 取消坐标轴默认扩展边距 scale_x_continuous(expand = c(0, 0)) + scale_y_continuous(expand = c(0, 0)) + scale_color_manual(values=c('#f92410','#644196')) + ggtitle("Valutazione peel su provino 50 mm") + theme_bw() + theme(plot.title = element_text(hjust = 0.5)) + xlab('Allungamento (mm)') + ylab('Forza (N)') Graph
补充说明
如果需要保留少量边距避免数据贴边,可调整expand参数的取值:参数接收两个数值,第一个为相对比例扩展值,第二个为固定单位扩展值。例如设置为expand = c(0, 0.2)即可在轴两端各添加0.2单位的固定边距,可根据实际显示需求调整数值。
内容的提问来源于stack exchange,提问作者GiacomoDB
相关产品推荐
相关产品推荐

