2017-03-01 60 views
10

我想在Matlab中製作一個條形圖,其中一個類別是「突破軸線的頂點」,超過了y軸限制,但我無法確定如何執行此操作。當我將上限更改爲較低值時,酒吧會被卡車運送。如何讓我的堆棧溢出?

我該怎麼辦?

這裏是我的數據:

data = 
    115 116 97 99 107 NaN NaN NaN 
    111 118 101 114 102 108 111 119 

我想上y軸的限制是600

這裏是我的嘗試:

bar(data,0.5,'stack') 
ylim([0 600]) 

這裏是示範結果:

stack not overflow

+0

Badum-tssssssss –

+1

這是一個有點難以明白你想要看到的答案之前做的,什麼.. –

+1

在堆棧溢出問一個stackoverlow問題 - 你必須明白:D – Shai

回答

12

一個簡單的選項是將軸的clipping屬性設置爲off

bar(data,'stack') 
colormap('lines') % make it colorfull :) 
bax = gca; % get axis handle 
bax.Clipping = 'off'; 
bax.YLim(2) = 600; % set the upper limit 

爲了更好的結果,你可能想也縮小軸的很少,所以酒吧將​​保持內。此外,它沒有拳擊軸更好:

top = bax.YLim(2); % before you change the limit 
bax.YLim(2) = 600; % set the upper limit 
bax.Position(4) = bax.Position(4)*(bax.YLim(2)/top); 
box off 

結果:

stack overflow

+1

很高興知道!我不記得過去曾使用過「剪輯」屬性 –