如何消除R语言折线图X、Y轴上的加粗线段?
解决Posit Cloud中Base R折线图轴线段中部加粗问题
问题原因
使用xaxs="i"和yaxs="i"时,绘图区域边界与数据极值完全对齐,刻度线端点和轴线重叠,在Posit Cloud渲染环境下产生视觉上的加粗效果。
解决方案
以下几种方法可解决问题,同时保留紧凑的绘图区域(无需将轴起点设为0):
方法1:统一轴线与刻度线线宽
在plot函数中直接指定axis.lwd参数,确保轴线和刻度线使用相同线宽,避免重叠加粗:
plot( x= 1:13, y= 3:15, xaxs = "i", yaxs = "i", type="l", col="#32a852", bty = "l", xlab = 'Bias Current [mA]', ylab = "Voltage [V]", main ="IV Characteristic of 1270nm Laser", axis.lwd = 1 # 统一线宽为1(可根据需求调整) )
方法2:调整刻度线方向
将刻度线改为向内绘制,避免与轴线重叠:
# 临时设置刻度线向内 par(tcl = 0.5) plot( x= 1:13, y= 3:15, xaxs = "i", yaxs = "i", type="l", col="#32a852", bty = "l", xlab = 'Bias Current [mA]', ylab = "Voltage [V]", main ="IV Characteristic of 1270nm Laser" ) # 恢复默认刻度线方向(向外) par(tcl = -0.5)
方法3:手动绘制边框与轴
关闭默认边框,手动绘制统一线宽的L型边框和轴:
plot( x= 1:13, y= 3:15, xaxs = "i", yaxs = "i", type="l", col="#32a852", bty = "n", # 不绘制默认边框 xlab = 'Bias Current [mA]', ylab = "Voltage [V]", main ="IV Characteristic of 1270nm Laser" ) # 绘制L型边框 box(bty = "l", lwd = 1) # 添加X、Y轴 axis(1, lwd = 1) axis(2, lwd = 1)
内容的提问来源于stack exchange,提问作者Haydn C
相关产品推荐
相关产品推荐

