Re: [問題] Legend 繪圖的問題.已回收
我重新看了你的問題了
假如你figure(4)是想要繪出2D曲線
之所以legend不能呈現你的結果在於u1以及u2
因為他們都是100*100的二維矩陣
所以當使用plot(u1,Y,'g',u2,Y,'--r')時
看起來似乎只有兩條曲線
其實裡面包含了200曲線
所以前一百條是以'g'呈現;後一百條是以'--r'呈現
因此使用legend('X=-0.05','X=0',2)會呈現出'前兩條'曲線'g'的結果
假如使用legend('X=-0.05','X=0')會呈現所有曲線結果(很難看,也不是你要的答案)
所以對於u1或是u2你可能需要著墨一下
希望有回答到你的問題,謝謝
※ 引述《Jerryamd (Let's go cubbies)》之銘言:
: 請問一下版上的前輩..
: 我現在有兩條資料..
: 可是我用legend 指令他會顯示出兩行第一條的資料.
: 就是圖出來以後legend 的那欄只有兩行綠線的描述..
: 而原本應該是紅色三角形的描述卻變成
: 綠線然後X=0.
: http://www.wretch.cc/album/show.php?i=Jerryamd&b=18&f=1874287603&p=0
: 想請問一下要怎麼修正呢..?
: clc
: clear all
: X=linspace(-2,2,100);
: Y=linspace(-2,2,100);
: [XX,YY]=meshgrid(X,Y);
: u=0.2.*YY-0.2.*(XX.^2).*YY-0.4.*(YY.^3);
: v=0.2.*XX.*(YY.^2);
: figure(1)
: contour(XX,YY,u,100)
: hold on
: figure(2)
: sx=linspace(-2,2,8);
: sy=linspace(-2,2,8);
: [sxx,syy]=meshgrid(sx,sy);
: h=stream2(XX,YY,u,v,sxx,syy);
: streamline(h)
: hold on
: figure(3)
: Xq=linspace(-2,2,10);
: Yq=linspace(-2,2,10);
: [XXq,YYq]=meshgrid(Xq,Yq);
: uq=0.2.*YYq-0.2.*(XXq.^2).*YYq-0.4.*(YYq.^3);
: vq=0.2.*XXq.*(YYq.^2);
: quiver(XXq,YYq,uq,vq);
: hold on
: figure(4)
: X1=-0.05;
: X2=0;
: u1=0.2.*YY-0.2.*(X1.^2).*YY-0.4.*(YY.^3);
: u2=0.2.*YY-0.2.*(X2.^2).*YY-0.4.*(YY.^3);
: plot(u1,Y,'g',u2,Y,'--r')
: hold on
: xlabel('U vector')
: ylabel('U vector y value')
: title('U vector y value at X point')
: legend('X=-0.05','X=0',2)
: 感謝回答的前輩..謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.73.66.52
※ 編輯: artdaniel 來自: 203.73.66.52 (02/04 12:03)
推
02/04 16:57, , 1F
02/04 16:57, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):