[英]Define custom linestyles in Octave for use on multiple figures
我想在Octave中定義線條樣式(例如gnuplot中)以供進一步使用:
我在想這樣的事情:
styles = {['color',[.5 .2 .8],'--', 'linewidth', 1.25], ['or', markersize, 4],
['-sb', markersize, 2]}
plot (x,y, styles{1})
plot (x,y, styles{2})
等等。 但是這樣的事情沒有用。 有人對如何解決這個問題有任何建議嗎?
提前致謝。
讓我們看一下MATLAB的工作並復制思想:您可以將逗號分隔的列表用作函數調用參數 。 實際上,有一個示例准確描述了您想要實現的目標。 但是, LineSpec
此功能按您希望的那樣工作,還必須正確地“分解” LineSpec
。 請參見以下代碼片段,以獲取您給出的示例的解決方案。
x = linspace(0, 2*pi, 50);
% styles = {['color',[.5 .2 .8],'--', 'linewidth', 1.25], ['or', markersize, 4], ['-sb', markersize, 2]}
styles = {
{'Color', [.5 .2 .8], 'LineStyle', '--', 'LineWidth', 1.25}, ...
{'Color', 'r', 'Marker', 'o', 'MarkerSize', 4}, ...
{'Color', 'b', 'LineStyle', '-', 'Marker', 's', 'MarkerSize', 2} ...
};
figure(1);
hold on;
for ii = 1:numel(styles)
plot(x, sin(x + ii * pi/4), styles{ii}{:});
end
hold off;
legend();
並且,這是示例輸出:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.