Re: [討論] 等高線圖刻度有效位數如何一致

看板MATLAB作者 (琰)時間11年前 (2013/06/07 07:31), 編輯推噓1(105)
留言6則, 3人參與, 最新討論串3/3 (看更多)
※ 引述《profyang (prof)》之銘言: : 試試這樣吧: : [xx,yy,zz]=peaks; : contour(xx,yy,zz,100);colorbar; : [c,h]=contour(xx,yy,zz,-10:0.25:10); : text_handles=clabel(c,h); : n=length(text_handles); : hold on : for i=1:n, : a=get(text_handles(i),'UserData'); : y=num2str(a,'%0.2f'); : set(text_handles(i),'String', y); : end : 這種好像除了這樣手動硬幹沒啥其他辦法? : 不知道有沒有內建功能... 先謝謝你回答我~ 我試過了的確可以一致!! 但是會影響到後面的另一張圖 變成畫不出來>"< %------contour------ [xx,yy,zz]=peaks; contour(xx,yy,zz,100);colorbar; [c,h]=contour(xx,yy,zz,-10:0.25:10); text_handles=clabel(c,h); n=length(text_handles); hold on for m=1:n, a=get(text_handles(m),'UserData'); ky=num2str(a,'%0.2f'); set(text_handles(m),'String', ky); end %------figure------ for k=1:n^2 A=1+40*(k-1); B=40*k; plot(G_new(A:B,1),G_new(A:B,2),'-om'); hold on end axis([-3,3,-3,3]) figure for k=1:n^2 A=1+40*(k-1); B=40*k; plot(P_(A:B),F_new(A:B),'-o'); hold on end 上面的第二張figure沒辦法出現 原因好像是因為Index exceeds matrix dimensions.(超過矩陣尺寸) 這樣又遇到新難題卡關了QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.126.5.168

06/07 09:20, , 1F
我猜是你原本程式就有用到n 而n=length(text_handles);
06/07 09:20, 1F

06/07 09:20, , 2F
把n改掉了 把變數名稱改掉試試
06/07 09:20, 2F

06/07 11:52, , 3F
應該是樓上講的問題沒錯
06/07 11:52, 3F

06/07 21:07, , 4F
原來如此!!我星期一再試試看再回來說結果 現在沒有程式~
06/07 21:07, 4F

06/07 21:08, , 5F
謝謝兩位的回答!!!希望程式快跑完專題快做完>"<
06/07 21:08, 5F

06/10 09:32, , 6F
成功了!!謝謝兩位!!
06/10 09:32, 6F
文章代碼(AID): #1HiHl04b (MATLAB)
文章代碼(AID): #1HiHl04b (MATLAB)