2016-05-12 31 views
0

我嘗試創建一個線條圖,其中包含幾行代碼L。如果可以爲每條線分配不同的線寬,那將是非常好的。下面拋出一個錯誤信息:線條圖:使用矢量來定義不同的線寬

lWidth = {1;2;3;4;5;1;2;3;4;5;1;2;3}; %% 13 Elements, as <data> is 13x4 matrix 

L = line([data(:,1) data(:,2)]', [data(:,3) data(:,4)]', ... 
    'LineWidth', lWidth(:), 'Color', 'red'); 

使用線而設置欄的「線寬」屬性錯誤:值 不是數字標

有沒有使用規定的線寬的方式在矢量lWidth

回答

2

你不能這樣做,使用line命令參數,但set功能有特殊的語法來處理:

data = randn(13,4); 
lWidth = {1,2,3,4,5,1,2,3,4,5,1,2,3}; %% 13 Elements, as data is 13x4 matrix 

L = line([data(:,1) data(:,2)]', [data(:,3) data(:,4)]', 'Color', 'red'); 
set(L, {'LineWidth'}, lWidth(:)); 

注意,這兩個屬性名和屬性值必須是單元陣列,以及財產的尺寸單元格數組應該與圖形句柄數組的數組相同。

+0

謝謝。我嘗試了'set(L,'LineWidth',lWidth(:));'這實際上非常接近。 – stm