2013-11-24 46 views
5

你能告訴我如何改變一個軸的「乘數」?我的意思是我在圖片中圈出的一個值,假設我想要x10^3而不是x10^4。Matlab - 改變軸倍數

enter image description here

回答

2

我有點棘手的解決方案:

  1. 設置YTickModemanual
  2. 設置您自己的YTickLabel
  3. 將文本置於所需的倍數上。

這裏是:

set(gca, 'YTickMode', 'manual'); 
set(gca, 'YTickLabel', get(gca,'YTick')/1000); 
text(0, 1.02 * get(gca,'YLim')(2), 'x 10^3'); 

播放與第三行乘數1.02到您的文本放置的好地方。

+1

您不明白我的問題。我不想改變軸的極限值,而是軸上的值。在我的例子中,我需要使用x10^3乘數而不是0,1,2,的值爲0,10,20,...,100。 ..,10在我的Y軸上有x10^4乘數 – kozooh

+0

我編輯了答案。 –

+0

你檢查過它嗎? – kozooh

1

將您的數據縮放0.1,從而爲您提供所需的乘數。

然後覆蓋刻度標記,使蜱1.0標記10等

+0

但是覆蓋刻度標籤刪除乘數,不是嗎? –

+0

@路易斯:我看到了一些沒有的地塊,但他們可能做了一些異國情調。 –

1

由於R2015b的是數字標尺屬性的一部分:

ax = get(gca); 
ax.YAxis.Exponent = -3;