MATLAB繪圖隨記(1)--如何畫一個透明平面
http://blog.sina.com.cn/s/blog_5cd4cccf0100q90p.html
小老板讓我繪個圖
MATLAB畫矩形的簡單手工打造方法
http://zhongcheng0519.blog.163.com/blog/static/16169068820130129515760/
在MATLAB中畫矩形,當然有很簡單的辦法,一個rectangle函數就可以簡單搞定。然而,如果想自己弄一個呢,就比較麻煩了。例如,若想在平面上畫一個
的矩形,其中
、
分別為橫縱坐標。最簡單的辦法當然就是一根線一根線的畫。這樣來弄畢竟比較復雜,也很容易出錯。但如果利用下面的公式來畫矩形,我想就比較簡單了:
用MATLAB來實現則為
x1 = -2:0.1:2;
x2 = 2:-0.1:-2;
[X1,X2] = meshgrid(x1,x2);
Z = (max(abs(X1),abs(X2)) == 1);
figure,imshow(Z);
接下來,如果需要對矩形進行平移、拉伸等操作,就只需要在第四條語句上稍作修改即可。即,假設起始於a,結束於b;
起始於c,結束於d。則第四條語句可更改為
Z = (max(abs(X1-(a+b)/2)/(b-a),abs(X2+(c+d)/2)/(b-a)) == 1);
這樣,就可以用較為簡單的方法畫出矩形。
Matlab 三維作圖 3-D Graph
http://hi.baidu.com/nature_and_man/item/93a2f5183024310ce65c36c7
.............
畫一個可透視的橢球
figure
a = 15;
b = 10;
c = 5;
k = 5;
n = 2^k-1;
theta = pi*(-n:2:n)/n;
phi = (pi/2)*(-n:2:n)'/n;
X = a*cos(phi)*cos(theta);
Y = b*cos(phi)*sin(theta);
Z = c*sin(phi)*ones(size(theta));
surf(X,Y,Z,'FaceColor','interp',...
'EdgeColor','none',...
'FaceLighting','phong')
axis tight
camlight left
alpha(.33) % 產生透視效果
這是在7.1.上畫的圖: