emm*_*ale 4 matlab plot line matlab-figure
我绘制了一条带有多条线的图形,并且注意到该图形的线为零时与x轴重叠。有没有一种方法可以使x轴绘制在顶部而不是线条上?
这是执行相同操作的MWE(由于数据集非常大,因此我没有提交确切的代码)。
xdata=1:1:10;
ydata=[1;0.8;0.6;0.4;0.2;0;0;0;0;0];
line(xdata,ydata)
Run Code Online (Sandbox Code Playgroud)
在绘制线(在我的情况下为每个图多个)后,我会对轴进行各种其他操作,以便得到所需的东西(包括添加第二组轴)。关于x轴是否绘制在线条的顶部,这似乎没有任何区别。
我确实在网上进行搜索,但是找不到与此相关的任何内容。
Luis给出的答案是一个不错的解决方法,但是解决此问题的官方方法是使用layeraxis对象的属性,请参见手册。要在数据上绘制轴
set(gca,'Layer','top')
Run Code Online (Sandbox Code Playgroud)
要针对您的所有图自动执行此操作,可以在您的代码中添加以下行startup.m:
set(0,'DefaultAxesLayer','top')
Run Code Online (Sandbox Code Playgroud)
您无法自己解决这类问题,很多年前,我在comp.soft-sys.matlab上或多或少地问了相同的问题后才发现了这个技巧。另请参阅此SO问题。