matlab中Axis上的特定值

时间:2014-03-24 14:35:41

标签: matlab

我想绘制三维图形,其中Y轴只有9,99,999的值。我试图使用

Y= [9, 99 , 999];
set(gca,'YTickLabel',Y);
set(gca,'YTick',Y);

我想在开始时有3分9,在中间有99分,最后有999分。有可能这样做吗?我也和Ylim一起试过,但是忍不住了

enter image description here

2 个答案:

答案 0 :(得分:2)

您可以将y - 轴更改为对数刻度 使用:

set(gca, 'YScale', 'log');

如果你也设置了

ylim([9 999]);
正如你所指出的那样,你应该得到理想的结果。

答案 1 :(得分:0)

另一种解决方案:

F = [1 2 3];
Y = [9, 99 , 999];
Y_ = [9, (999-99)/2 , 999];

figure; 
subplot(1,2,1)
plot(Y,F,'*-');
set(gca,'XTickLabel',Y,'XTick',Y);
subplot(1,2,2)
plot(Y_,F,'o-');
set(gca,'XTickLabel',Y,'XTick',Y_);

你可以看到差异:

enter image description here