利用matlab绘制图形
生活随笔
收集整理的這篇文章主要介紹了
利用matlab绘制图形
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目前存在的一些問題:
1.第一題的兩個圖像無法重疊
2.最后一個題的第一個圖是六瓣,而我寫的是八瓣
感謝張同學給我指出來,目前我正在思考解決方法
第一個的話我以為把框縮小就可以重疊了,但是今天試了一下還是分開的,還沒想出來怎么實現能夠通過縮小框讓他們重疊
第二個我一開始以為是玫瑰線,但是k是偶數則有2k個瓣,k是奇數則有k個瓣,所以按道理不存在六瓣玫瑰線,仔細一看發現,這個不是玫瑰線,而是其他什么圖形,但是我不知道函數,所以無法寫
希望有其他同學大佬能夠解決一下,還有最后一個圖形的畫法我也不會,主要是函數的問題
一、實驗任務和目的
二、實驗內容
1. 畫出如下圖形
這個怎么說呢,明明就是個**,第二個圖形是cosx?
而且matlab有現成的gui可以對圖形編輯,為什么非要用代碼做出來?
我就是先畫個大致輪廓,然后用matlab里邊圖形編輯做的
代碼結果
然后我直接用圖形編輯器,上色加粗移動說明文字加箭頭都是分分鐘的事啊,而且matlab里面有個固定的就是x軸范圍顯示默認為int,所以要是指定2*pi的范圍,x軸還會顯示10,那又要求不能顯示十,那只好通過編輯器對x軸范圍更改,我改成7.9就ok了,要是直接用代碼,我是實現不出來
2.畫出以下圖形
subplot(3, 3, 1);f = @(x)200*sin(x)./x;fplot(f, [-20 20]);title('y = 200*sin(x)/x'); subplot(3, 3, 2);ezplot('x^2 + y^2 = 1', [-1.1 1.1]); axis equal; title('單位圓');subplot(3, 3, 3);ezpolar('1+cos(t)'); title('心形圖');subplot(3, 3, 4);x = [10 10 20 25 35]; name = {'趙', '錢', '孫', '李', '謝'}; explode = [0 0 0 0 1]; pie(x, explode, name) title('餅圖');subplot(3, 3, 5);stairs(-2*pi:0.5:2*pi,sin(-2*pi:0.5:2*pi)); title('樓梯圖');subplot(3, 3, 6);stem(-2*pi:0.5:2*pi,sin(-2*pi:0.5:2*pi)); title('火柴桿圖');subplot(3, 3, 7);Z = eig(randn(20,20)); compass(Z); title('羅盤圖'); subplot(3, 3, 8);theta = (-90:10:90)*pi/180; r = 2*ones(size(theta)); [u,v] = pol2cart(theta,r); feather(u,v); title('羽毛圖');subplot(3, 3, 9);t = (1/16:1/8:1)'*2*pi;fill(sin(t), cos(t),'r'); axis square; title('八邊形');3.
x=-3*pi:0.01:3*pi; for i=1:length(x)if(x(i)==0) y(i)=1;else y(i)=sin(x(i))/x(i);end end plot(x,y); set(gca,'YGrid','on');
4.畫圖形
圖1:
t = 0 : 0.01 : 2*pi; polar(t, sin(2*t).*cos(2*t))圖2:
ezsurf('u*sin(v)','u*cos(v)', '4*v',[-2*pi,2*pi,-2*pi,2*pi])圖3:
t=0:pi/20:2*pi;[x,y,z]= cylinder(2+sin(t),100); surf(x,y,z); xlabel('X'); ylabel('Y'); zlabel('Z'); set(gca,'color','none'); shading interp; colormap(copper); light('Posi',[-4 -1 0]); lighting phong; material metal; hold on;%plot3(-4,-1,0,'p','markersize', 18); % text(-4,-1,0,'光源','fontsize',14,'fontweight','bold');圖4:
不知道函數不會畫鴨總結
以上是生活随笔為你收集整理的利用matlab绘制图形的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c#中connect函数_Flink算子
- 下一篇: java jmx 监控_只用五分钟为系统