matlab怎么单独调grid的线型?
如果在图形的moreproperties界面里面把LineWidth调大,比如2.0这个网格线也跟着变的很粗,很难看。有没有办法把坐标轴调和grid的线型分别调整?...
如果在图形的more properties界面里面把LineWidth调大,比如2.0 这个网格线也跟着变的很粗,很难看。
有没有办法把坐标轴调和grid的线型分别调整? 展开
有没有办法把坐标轴调和grid的线型分别调整? 展开
1个回答
展开全部
axes 的 LineWidth 线宽属性是针对整个坐标轴系各要素的,包括各坐标轴、grid、box 以及 Tick,没有办法单独调整。
如果对 Tick 的线宽不看重,可以有变通的做法:坐标轴的LineWidth属性保持默认值不变(或者用你喜欢的grid线宽),而坐标轴则通过画线来达到粗线条效果:
plot(peaks);
xlim=get(gca,'xlim');
ylim=get(gca,'ylim');
grid on;
line(xlim(1)*[1 1],ylim,'Linewidth',2,'color','k','Clipping','off');
line(xlim,ylim(1)*[1 1],'Linewidth',2,'color','k','Clipping','off');
注解:
(1)这种做法弊端很多,最好在其它绘图步骤结束后再做,否则很多命令会产生影响,例如plot默认会把原来的绘图对象清除,而一旦坐标范围改变,坐标轴的位置也需要修改(包括缩放)。
(2)如果需要粗线宽的box,可以考虑使用rectangle画框(当然,画4个line也可以)。
(3)如果坐标轴的位置要求在上方或右侧,则相应的语句要调整。
如果对 Tick 的线宽不看重,可以有变通的做法:坐标轴的LineWidth属性保持默认值不变(或者用你喜欢的grid线宽),而坐标轴则通过画线来达到粗线条效果:
plot(peaks);
xlim=get(gca,'xlim');
ylim=get(gca,'ylim');
grid on;
line(xlim(1)*[1 1],ylim,'Linewidth',2,'color','k','Clipping','off');
line(xlim,ylim(1)*[1 1],'Linewidth',2,'color','k','Clipping','off');
注解:
(1)这种做法弊端很多,最好在其它绘图步骤结束后再做,否则很多命令会产生影响,例如plot默认会把原来的绘图对象清除,而一旦坐标范围改变,坐标轴的位置也需要修改(包括缩放)。
(2)如果需要粗线宽的box,可以考虑使用rectangle画框(当然,画4个line也可以)。
(3)如果坐标轴的位置要求在上方或右侧,则相应的语句要调整。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询