日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Matlab】山地建模?立体热度?怎么绘制三维曲面图?

發布時間:2025/3/15 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Matlab】山地建模?立体热度?怎么绘制三维曲面图? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.Introduction

距離上次寫博客已經差不多兩個月了,期間基本也是沒碰過代碼了,最近搞了下數學建模,重新用了下Matlab,很多語法都忘記了,同時也學到一些新的工具,今天就介紹一下如何將二維矩陣,三維可視化。可以利用山地海拔進行山地建模,也可以對特征矩陣輸出三維熱度圖(如下圖)。

2.Materials and methods

將二維矩陣轉化為三維立體圖,本質是在原始X-Y的坐標系中,加入Z軸,其中每一點的Z軸坐標就是二維矩陣中的值,也就是說將數值轉化為“高度”,這樣數值小的位置會“凹下去”,數值高的位置會“凸出來”。

在進行三維可視化的過程中,首先需要一個二維矩陣,這里我們以 Matlab 中的 Magic square 矩陣為例,利用函數生成5×5大小矩陣效果如下:

矩陣所表達信息在二維平面很難獲取,這也是本文章所想表達的一點,所以我們對其進行三維可視化。代碼如下:

x = 1:5; y = 1:5; [X,Y] = meshgrid(x,y); Z = magic(5); s = surf(X,Y,Z,'FaceAlpha',0.5);

3. Results and discussion

經過上面5行代碼,對5階“魔方”三維化的結果如下圖

誒,等等,好像有一點點意思,不過還不夠意思,轉起來~


可以看到,我們把原來平平無奇的平面矩陣,轉化成了上圖的的的的 小狗(從側后方看)?咳咳,本來想寫科技論文的,怎么畫風又改了?

同時,還可以對更高分辨率的矩陣進行三維可視化,magic(50)登場~

可以看到,50歲的小狗變強了,也變胖了。

另外,對于非方陣的矩陣也可以實現三維化,只需在代碼中對應修改即可

x = 1:5; % 改我 y = 1:5; % 改我 [X,Y] = meshgrid(x,y);

最后,一般在山地三維圖中,都會伴隨有 等高線 ,實現代碼如下:

contour(X,Y,Z); % 二維等高線 contour3(X,Y,Z); % 三維等高線



因為大狗畢竟不是大山,下面展示下大山等高線的效果。

4. Conclusion

本博客提出的方法可以實現對任意二維矩陣的三維可視化,可以對具有高度信息的矩陣進行建模,同時,后期可以對特征矩陣,統計結果等多種表格數據可視化,增強視覺效果。

猜你喜歡:👇🏻
?【Matlab】如何對二維矩陣進行線性/非線性插值?
?【Matlab】一個超簡單的生成順序數組的方法
?【Matlab】矩陣中選取任意子矩陣

總結

以上是生活随笔為你收集整理的【Matlab】山地建模?立体热度?怎么绘制三维曲面图?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。