[繪圖] 如何畫出不是對稱的矩陣圖形?

看板MATLAB作者 (河豚)時間9年前 (2016/02/05 18:35), 9年前編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
各位鄉民大家好,小弟最近在繪圖時遇到一個狀況 以前如果說[X,Y]是個長方形數據的話,我可以用mesh+surf等指令輕鬆繪圖 但是現在我遇到一個狀況是,我有56522 x 3 的一個矩陣,裡面的資料形式類似: 溫度 壓力 密度 1 1 1 1 2 2 2 2 2 2 3 2 2 4 3 3 2 3 3 3 3 3 4 3 3 5 4 也就是說,X = 1的時候,有2個Y值,X = 2時會變成3個Y值 並不是說每個X都會存在相同數量的Y值 我將數據圖用下面這個指令畫圖的話,可以產生: x = OUTPUT_97(1:56522,1)'; y = OUTPUT_97(1:56522,2)'; z = OUTPUT_97(1:56522,3)'; plot3(x,y,z) http://imgur.com/mzDkLJt
這張圖的形式就是我所想要的,但是我無法讓他依照密度的大小來改變顏色 後來我參考了網路上的指令,改用: x = OUTPUT_97(1:56522,1)'; y = OUTPUT_97(1:56522,2)'; z = OUTPUT_97(1:56522,3)'; tri=delaunay(x ,y) ; trisurf(tri,x,y,z,'LineStyle','none') 此時結果變成: http://imgur.com/xg9BMSd
雖然圖形有顏色了,但是本來沒有數據的地方反而跑出東西來了 不知道是否有辦法解決這個狀況? 因為數據沒有用成矩陣,因此mesh、surf、surf3等指令都無法使用 希望鄉民們能夠指點小弟一些方向,google到的數據範例都是很完美的長方形矩陣 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.22.13 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1454668532.A.93E.html

02/05 19:41, , 1F
help scatter
02/05 19:41, 1F
非常感謝您的幫忙!!! x = OUTPUT_97(1:56522,2)'; y = OUTPUT_97(1:56522,1)'; z = OUTPUT_97(1:56522,3)'; scatter(x,y,[],z,'filled') 已解決~~把圖改成 "點" 的形式來繪圖就不用擔心那些問題了 :) ※ 編輯: dogs1231992 (140.112.22.13), 02/05/2016 19:46:41
文章代碼(AID): #1Mj7hqa- (MATLAB)
文章代碼(AID): #1Mj7hqa- (MATLAB)