matlab繪圖時legend顯示分式(latex風格)
阿新 • • 發佈:2019-01-27
需求
用matlab繪圖時,希望legend命令顯示分式,如
然而直接呼叫legend(‘z=(x^2)/(2^2)+(y^2)/(4^2))’)顯示的卻是
顯然不夠美觀。
程式碼示例
正確程式碼示例:
%環境:matlab2016a%%%%%%%%%%%%%%%%%%%
%%時間:2017-07-28 23:51:40%%%%%%%%%%
%%作者:xiaohu%%%%%%%%%%%%%%%%%%%%%%%
%%功能:測試legend顯示分式%%%%%%%%%%%%%
[x,y] = meshgrid(-2:0.01:2, -4:0.01:4); %計算網格
z = (x.*x)/(2*2) + (y.*y)/(4*4); %計算z
figure,mesh(x,y,z);xlabel('x');ylabel('y');zlabel('z'); %顯示曲面z及座標軸
h=legend('$z=\frac{{x^2}}{{2^2}}+\frac{{y^2}}{{4^2}}$'); %latex分式
set(h,'Interpreter','latex','Location','SouthOutside') %設定legend為latex直譯器顯示分式
錯誤程式碼示例:
[x,y] = meshgrid(-2:0.01:2, -4:0.01:4); %計算網格
z = (x.*x)/(2*2) + (y.*y)/(4*4); %計算z
figure,mesh(x,y,z);xlabel('x');ylabel('y');zlabel('z'); %顯示曲面z及座標軸
legend('$z=\frac{{x^2}}{{2^2}}+\frac{{y^2}}{{4^2}}$','Interpreter','latex'); %這樣無法顯示分式
實驗結果
更多
具體參看matlab幫助中關於legend命令的介紹。