semilog plot:轴不会保持一致

时间:2014-02-13 01:49:57

标签: matlab matlab-figure

我试图为5个数据集获得5个不同的半对数x数字(并且每个数字在其图上有许多行)。当我没有输入任何数据时(即轴范围是我想要的),该图很有效,但是当我输入数据时,轴范围会发生变化(限制保持不变,但不同值之间的间距会发生变化) 。例如,对于第一个数据集,我输入它,并且10 ^ 2出现在x轴的大约1/4处,但是我输入了第二个数据集,并且10 ^ 2出现在穿过x轴上。无论数据是否发生变化,如何使轴保持完全一致?

我的代码如下:

function createfigure_log_orient_autocorr(X1, YMatrix1)

plot(X1,YMatrix1,'LineWidth',2);

set(gca,...
    'YTickLabel',['0  ';'0.2';'0.4';'0.6';'0.8';'1  '],...
    'YTick',[0 0.2 0.4 0.6 0.8 1],...
    'XTickLabel',['0';'1';'2';'3'],...
    'XTick',[1 10 100 1000],...
    'XScale','log',...
    'XMinorTick','on',...
    'PlotBoxAspectRatioMode','manual',...
    'PlotBoxAspectRatio',[1.999 1 0.5],...
    'FontWeight','bold',...
    'FontSize',16,...
    'DataAspectRatioMode','manual',...
    'DataAspectRatio',[1000 1 2],...
    'XLimMode','manual',...
    'XLim', [0 2000],...
    'YLimMode', 'manual',...
    'YLim', [0,1]);

我理解我的问题可能令人困惑,所以我可以尝试澄清是否有人需要我。

1 个答案:

答案 0 :(得分:0)

我使用函数semilogx(...)而不是plot,然后用axis跟进它来设置我想要的限制。

更多here