[英]MATLAB: How Do I Specify Line Properties using plot() w/ Matrix Input? i.e. plot([x1 x2 x3],[y1 y2 y3])
在matlab中,您可以將plot()與矩陣輸入一起使用,這非常快速且方便。 但是,當我嘗試確定線路時,我找不到方法。 我一直堅持不懈地分解自己的工作,然后很努力地為每個部分提供規格。
范例:
clear; clc;
x = [1 2 3;
4 5 6;
7 8 9];
y = [1 4 7;
2 5 8;
3 6 9];
subplot(2,1,1)
plot(x,y)
subplot(2,1,2)
plot(x(:,1),y(:,1),':.',...
x(:,2),y(:,2),'--',...
x(:,3),y(:,3),':.b')
如何在不分解子圖2的情況下指定子圖一?
您可以使用plot
返回的線手柄/對象分別設置屬性。 如果您使用的是Matlab R2014b或更高版本,則將返回一個線對象數組,並且可以使用點符號對其進行操作:
h = plot(x,y);
%
h(1).LineStyle = ':';
h(1).Marker = '.';
%
h(2).LineStyle = '--';
%
h(3).Color = 'b';
h(3).LineStyle = ':';
h(3).Marker = '.';
對於返回行句柄數組的舊版本,您可以一次直接set
一個值:
h = plot(x,y);
set(h(1),'LineStyle',':','Marker','.');
set(h(2),'LineStyle','--');
set(h(3),'Color','b','LineStyle',':','Marker','.');
或一次使用名稱和值數組
h = plot(x,y);
names = {'LineStyle','Marker','Color'};
values = {
':' , '.' , get(h(1),'Color');
'--' , 'none' , get(h(2),'Color');
':' , '.' , 'b'
};
set(h,names,values);
請注意,所有set
解決方案也適用於R2014 +版本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.