7
我想繪製兩個條形序列,使用相同的y軸。其中一個序列在底部,另一個在頂部(從頂部到底部),y軸分成兩個(一半用於底部條,一半用於頂部條)。底部條使用一種顏色,如綠色,頂部條使用另一種顏色,紅色,而y軸使用軸上每個半色的相應顏色。將條形和反向條繪製到Y軸上
問題:如何我可以分割在上圖中所示的方式在y軸上?
感謝您的幫助! = D
我想繪製兩個條形序列,使用相同的y軸。其中一個序列在底部,另一個在頂部(從頂部到底部),y軸分成兩個(一半用於底部條,一半用於頂部條)。底部條使用一種顏色,如綠色,頂部條使用另一種顏色,紅色,而y軸使用軸上每個半色的相應顏色。將條形和反向條繪製到Y軸上
問題:如何我可以分割在上圖中所示的方式在y軸上?
感謝您的幫助! = D
您可以通過分層三個軸並相應地調整their properties來創建此效果。例如:
% The larger left axes:
hLeft = axes('Position', [0.1 0.1 0.8 0.8], ... % Normalized position
'XLim', [0 11], 'YLim', [0 3], ... % Set desired limits
'Box', 'off'); % Turn off outline
hLeft.XLabel.String = 'Time'; % Add an x label
hLeft.YLabel.String = 'Line'; % Add a y label
hLeft.Title.String = 'Bar-bar-plot'; % Add a title
hLine = line(hLeft, 1:10, rand(1,10)+1, 'Color', 'k'); % Plot a sample line
% The lower right axes:
hLower = axes('Position', [0.1 0.1 0.8 0.4], ... % Position over bottom half
'XLim', [0 11], 'YLim', [0 1.5], ... % Set desired limits
'YColor', [0 0.5 0], 'Color', 'none', ... % Change colors
'YAxisLocation', 'right'); % Position y axis
hLower.XAxis.Visible = 'off'; % Turn of x axis
hLower.YLabel.String = 'Bar 1'; % Add a y label
hold on;
hBarLower = bar(hLower, 1:10, rand(1,10), ... % A sample bar plot
'FaceColor', 'none', 'EdgeColor', [0 0.5 0]);
% The upper right axes:
hUpper = axes('Position', [0.1 0.5 0.8 0.4], ... % Position over top half
'XLim', [0 11], 'YLim', [0 1.5], ... % Set desired limits
'YColor', [1 0 0], 'Color', 'none', ... % Change colors
'YAxisLocation', 'right', ... % Position y axis
'YDir', 'reverse'); % Reverse y axis
hUpper.XAxis.Visible = 'off'; % Turn off x axis
hUpper.YLabel.String = 'Bar 2'; % Add a y label
hold on;
hBarUpper = bar(hUpper, 1:10, rand(1,10), ... % A sample bar plot
'FaceColor', 'none', 'EdgeColor', [1 0 0]);
% Add a legend:
hLegend = legend(hUpper, [hLine hBarLower hBarUpper], ...
{'line', 'bar 1', 'bar 2'}, 'Color', 'w');
而這裏的情節:
需要通過它左鍵點擊可以定位圖例並將其拖動到最佳點。
哇!這是一個非常優雅和令人難以置信的解釋良好的解決方案。非常感謝你! –
對於那些使用連續日期的人,您必須在每個繪圖之後的不同軸上添加'datetick'命令。例如,假設你先在左軸上繪圖,然後調用'datetick',然後你繼續繪製右下角的軸,然後再次調用'datetick',然後移動到右上軸,你應該再次調用'datetick'。這可確保您的x軸正確對齊。 –
添加一個標題似乎打破了這個數字,圖形被推下,另一個隱藏的圖形出現。 –