簡體   English   中英

如何在Matlab中繪制圓形3D圖

[英]How to draw a circular 3D plot in matlab

我想在matlab中繪制此函數:磁盤上的sin(4*x)*cos(4*y)

這就是我繼續的方式:

syms x y;
f=@(x,y) sin(4*x)*cos(4*y);
ezmesh(f,'circ')

此方法適用於f=@(x,y) sin(2*x)*cos(2*y);

但是具有更快的變化函數,例如f=@(x,y) sin(4*x)*cos(4*y); ezmesh將這些變化誤認為是不連續的。 問題是我不能使用'circ'參數並增加ezmesh同時使用的點數(ezmesh不接受)

還有其他辦法嗎?

我不確定是否可以通過添加另一個參數來完成。 但是,如果您想要一種快速而又骯臟的方法,請執行以下操作:

x = -2*pi:0.1:2*pi;
y = -2*pi:0.1:2*pi;
[xx, yy] = meshgrid(x,y);
zz = sin(4*xx).*cos(4*yy);
zz(xx.^2 +yy.^2 >(2*pi)^2) = 0;
surf(xx,yy,zz);

產生:

磁盤上的sin(4x)* cos(4x)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM