2

実線と灰色のマイナーグリッドで説明されているように、以前の質問を確認しましたが、問題の解決には役立ちませんでした。私の問題はxticksに関係しています。グリッド ラインを xaxis の特定のポイントに表示し、他のグリッド ラインを異なるポイントに異なる色で表示したいと考えています。このようなもの:

plot(x,y,'--g')
set(gca,'Xcolor',[0 0 0],'Xtick',[12e3,14e3,18e3,23e3,30e3,37e3,57e3],
set(gca,'Xcolor',[0.5 0.9 0.5],'Xtick',[10e3 16 28e3]);

問題は、後の xtick ラベルが前のものを上書きすることです。以前のものの xlabels を保持したいと思います。

4

1 に答える 1

2

2 番目の軸を作成します。

x=-3.14:.1:3.14;
y=sin(x);

h=plot(x,y);
ax1=findobj(gcf,'Type','axes'); %save first axis handle

%set first stype
set(gca,'Xcolor',[0 0 0],'Xtick',[-3,-2,-1,1,2,3],'gridlinestyle','-','xgrid','on')

%create new axis
ax2=axes('position',get(gca,'position'),'Visible', 'on'); 
set(ax2,'YTick',[],'Xcolor','blue','Xtick',[-2.5 0 2.5],'xgrid','on','color','none'); %color none to make the axis transparent
set(ax2,'xlim',get(ax1,'xlim')) %resize 2nd axis to match 1st

プロデュース:

例

于 2012-04-19T19:37:47.133 に答える