1. 程式人生 > >matlab繪圖時legend顯示分式(latex風格)

matlab繪圖時legend顯示分式(latex風格)

需求

用matlab繪圖時,希望legend命令顯示分式,如

z=x222+y242
然而直接呼叫legend(‘z=(x^2)/(2^2)+(y^2)/(4^2))’)顯示的卻是
z=x2/22+y2/42
顯然不夠美觀。

程式碼示例

正確程式碼示例:

%環境: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'); %這樣無法顯示分式

實驗結果legend分式顯示

更多

具體參看matlab幫助中關於legend命令的介紹。