我用下面的代碼行繪製圖像:於imagesc()在Matlab中沒有表現出等於軸
for t=1:subplotCol
subplot(subplotRow,subplotCol,t)
imagesc([1 100],[1 100],c(:,:,nStep*t));
colorbar
xlabel('X-axis')
ylabel('Y-axis')
title(['Concentration profile at t_{',num2str(nStep*t),'}'])
subplot(subplotRow,subplotCol,subplotCol+t)
hold on;
plot(distance,gamma(:,1,t),'-ob');
plot(distance,gamma(:,2,t),'-or');
plot(distance,gamma(:,3,t),'-og');
xlabel('h');ylabel('\gamma (h)');
legend(['\Theta = ',num2str(theta(1))],...
['\Theta = ',num2str(theta(2))],['\Theta = ',num2str(theta(3))]);
end
我得到的圖像下面的插曲:
正如你可以看到在第一行中的圖像現在被縮放在X和Y軸(Y軸是比X軸長),即使圖像矩陣的大小是100×100用於在第一行的每個圖像同樣。
可以用如何在第一行的圖像看起來像正方形比矩形我目前得到別人的幫助。謝謝。
喬納斯:謝謝您的回答。使用你建議的命令在子圖上給出一個圖像,但是它會給出一個錯誤,說'???錯誤使用==>設置 沒有「dataAspectRatio」在 「圖像」 class.'屬性。我不確定爲什麼它會在第一張圖像後出現,但不會出現在第一張圖像上。你知道爲什麼嗎? – Pupil 2012-07-07 23:33:31
對不起,那是我不好。按照您的建議,我使用了imagesc()中的句柄,而不是從該子圖中獲取句柄。一個跟進的問題:現在的圖像是正方形的,但它們在尺寸上比在第二排的那些小得多。您可以查看問題更新以查看相對大小。 – Pupil 2012-07-07 23:54:20