1、008. 二维绘图(极坐标、隐函数等)一极坐标图形调用格式为:polar(t, r, 选项)其中,t为极角,r为极径,选项的使用和plot()类似。例1 画半径为1的圆t = 0:0.01:2*pi;a = 1;r5 = ones(size(t); polar(t,r5,r);运行结果:例2 阿基米德螺线 r = att = 0:0.01:2*pi;a = 2;r1 = a.*t; polar(t, r1, r);运行结果: 例3 心形线 r = a(1+cos t)t = 0:0.01:2*pi;a = 2;r2 = a.*(1+cos(t);polar(t, r2, r);运行结果:例4
2、对数螺线 r = eatt1 = -4*pi:pi/50:4*pi;a1 = 0.2;r3 = exp(a1.*t1);polar(t1,r3);plot(x,y);运行结果: 例 5 同极坐标图下画多个极坐标函数曲线:(高数习题册Ch 6 A. 12题)【注:polar() 没有多输出变量形式】 t = 0:pi/100:2*pi;r6 = sqrt(2).* sin(t);r7 = sqrt(abs(cos(2.* t);polar(t,r6,r); hold onpolar(t,r7,g);hold off运行结果:二、其他形式的坐标图在线性直角坐标中,其他形式的图形有条形图、阶梯图、杆
3、图和填充图等,所采用的函数分别为:bar(x, y, 选项)条形图stairs(x, y, 选项)阶梯图stem(x, y, 选项)杆图用法与polar()函数类似。fill(x1, y1, 选项1, x2, y2, 选项2, )序依次用直线段连接x, y对应元素定义的数据点。例6条形图、填充图、阶梯图和杆图示例x=0:0.35:7;y=2*exp(-0.5*x);subplot(2,2,1);bar(x,y,g);title(bar(x,y,g);axis(0, 7, 0 ,2);subplot(2,2,2);fill(x,y,r);title(fill(x,y,r);axis(0, 7,
4、0 ,2);subplot(2,2,3);stairs(x,y,b);title(stairs(x,y,b);axis(0, 7, 0 ,2);subplot(2,2,4);stem(x,y,k);title(stem(x,y,k);axis(0, 7, 0 ,2);运行结果:三、对数坐标图对数坐标系其实就是对正常坐标系的一个变换比如正常坐标系中的自变量和变量为x和y,而对数坐标系中的自变量和变量为x和y那么有x=logx, y=logy在实际应用中,经常用到对数坐标图,用对数坐标系有什么好处呢?例如,应用对数坐标系,能够较好反映股票的实际盈亏幅度:假定某一股票连续上涨,从6元涨到12元,每天
5、涨1元,在普通坐标系中画出的就是6条一样长的阳线。而在对数坐标系中,由于第一根阳线从5元到6元涨幅为20%,最后一根阳线从11元到12元涨幅为10%,因此最后一根阳线长度是第一根K线的一半。【用法同plot()】:semilogx(x1, y1, 选项1, x2, y2, 选项2, )半对数坐标:x轴对数刻度,y轴直线刻度;semilogy(x1, y1, 选项1, x2, y2, 选项2, )半对数坐标:x轴直线刻度,y轴对数刻度;loglog(x1, y1, 选项1, x2, y2, 选项2, ) 对数坐标:x轴、y轴均为对数刻度。例7 对数坐标图以及与直角坐标对比x=0:0.1:10;y
6、=10*x.*x;subplot(2,2,1);plot(x,y);title(plot(x,y););grid on;subplot(2,2,2);semilogx(x,y);title(semilogx(x,y);grid onsubplot(2,2,3);semilogy(x,y);title(semilogy(x,y);grid onsubplot(2,2,4);loglog(x,y);title(loglog(x,y);grid on运行结果:四、绘制隐函数与指定函数的图形 1. 显函数、隐函数、参数方程ezplot() ezplot(f(x), a,b)在xa,b上绘制显函数y=f
7、(x)的图形; ezplot(f(x,y), x0,x1,y0,y1)在xx0,x1, yy0,y1上绘制隐函数f(x,y)=0的图形; ezplot(x(t), y(t), t0,t1) 在tt0,t1上绘制参数方程x=x(t), y=y(t) 的图形。2. 绘制指定函数名(m文件)的图形fplot()fplot(fun, x0,x1) 表示绘制函数名fun的函数在区间x0,x1的图形。注:(1)fun必须是M文件的函数名或是独立变量为x的字符串;(2)fplot() 不能画参数方程和隐函数图形,但在一个图上可以画多个图形。例8 ezplot()与fplot() 示例subplot(2,3,
8、1);ezplot(sin(x),0,2*pi);subplot(2,3,2);ezplot(cos(t)3, sin(t)3, 0,2*pi); % 星形线subplot(2,3,3);ezplot(exp(x)+sin(x*y),-2,0.5,0,2) % 隐函数 exp(x)+sin(x*y) = 0subplot(2,3,4);fplot(myfun1,-1,2); % 需要先创建函数文件myfun1.m,其内容为: % function Y=myfun1(x) % Y=exp(2*x)+sin(3*x.2);subplot(2,3,5);fplot(tanh,-2,2);subplot(2,3,6);fplot(tanh(x),sin(x),cos(x),-2*pi,2*pi,-2*pi,2* pi);运行结果:五、其他形式的二维图形 饼型图、向量图 例9 (1)某次考试优良、良好、中等、及格、不及格的人数为7、17、23、19、5,试用饼形图进行成绩统计分析(2)绘制复数的向量图:3+2i、5.5-i、-1.5+5isubplot(1,2,1);pie(7,17,23,19,5);title(饼图);legend(优秀,良好,中等,及格,不及格);subplot(1,2,2);compass(3+2i,5.5-i,-1.5+5i);title(向量图);运行结果: