我在Matlab中有一個數組,每個時間步更新:每行對應一個時間,每列代表距離中心一定半徑處的溫度。如果可以使用meshgrid
和contourf
命令將顏色漸變應用於繪圖,它也會很方便。到目前爲止,這是我有的Matlab代碼,但我不知道如何將溫度加入到繪圖中並使溫度變化動畫化。使用Matlab繪製不同半徑的熱傳導溫度
Tinf = 200; % ambient temperature
% where r1 = radius1, r2 = radius2, etc.
% t = time
% rows = time
% columns = radius
% r1 r2 r3 r4 r5
T = [98 105 110 118 128; % t=1
109 110 117 124 134; % t=2
110 118 120 130 144]; % t=3
r = 0.08; % radius of circle
rx = -r:0.01:r;
ry = r:-0.01:-r;
[x_coor, y_coor] = meshgrid(rx, ry);
radius = sqrt(x_coor.^2+y_coor.^2);
figure(1)
contourf(radius,'edgecolor','none')
我試圖創建在Matlab圓形的情節,將顯示在每個半徑的溫度(顏色)和動態顯示溫度(變色),因爲它增加或隨時間而減少。
在一定的時間這樣的情節的一個例子是:
所以第t陣列中列1對應於節點1中的圖像,列2對應於節點2等因此,在時間= 0,則節點1 = 98,節點2 = 105,節點3 = 110,節點4 = 118,節點5 = 128;在時間= 1時,則節點1 = 109,節點2 = 110,節點3 = 117,節點4 = 124,節點5 = 134;等等。
任何建議來完成這樣的情節將是非常有益的。
請參閱我更新的答案並添加了一些代碼。我正在嘗試使用'meshgrid'和'contourf'命令。 – wigging
@Gavin我更新了代碼,看看... –
我用'contourf'替換了'surf'命令。並刪除了'陰影interp','set(h,...)'和'view(...)'行,一切正常。我現在所要做的就是弄清楚如何顯示x和y軸,然後我將被設置。謝謝您的幫助! – wigging