zoukankan      html  css  js  c++  java
  • MATLAB二维绘图(四)其他特殊的二维绘图函数介绍及用法

    MATLAB二维绘图(四)其他特殊的二维绘图函数介绍及用法

    1、使用semilogy、semilogx和loglog绘制指数函数的图像,示例:

    %% 对指数进行绘图,使用不同的绘图函数
    clear; clc; close all;
    x = logspace(-1,1,100);  % 产生间距,在10^{-1}到10^{1}的100个点
    y = x.^2;
    subplot(2,2,1); 
    plot(x,y);   % 正常使用plot进行绘图
    title('Plot');
    subplot(2,2,2); 
    semilogx(x,y);    % 对x轴绘制间距为10的指数次方
    title('Semilogx');
    subplot(2,2,3); 
    semilogy(x,y);   % 对y轴绘制间距为10的指数次方
    title('Semilogy');
    subplot(2,2,4); 
    loglog(x, y);   % 对x,y绘制
    title('Loglog');
    set(gca,'XGrid','on');   % 显示网格
    

    效果显示:
    指数图
    2、使用hist函数绘制柱状图,示例:

    %% 显示柱状图
    clear; clc; close all;
    y = randn(1,100);   % 产生随机数,1000个
    subplot(2,1,1);
    hist(y,10);  % 显示柱状图
    title('Bins = 10');
    subplot(2,1,2);
    hist(y,50);
    title('Bins = 50');
    

    效果显示:
    柱状图
    3、使用bar函数绘制条形图,示例:

    %% 使用bar函数画条状图
    clear; clc; close all;
    x = [1 2 5 4 8]; 
    y = [x;1:5];
    subplot(1,3,1); 
    bar(x);   % 一维条状图
    title('A bargraph of vector x');
    
    subplot(1,3,2); 
    bar(y); % 二维条状图
    title('A bargraph of vector y');
    
    subplot(1,3,3); 
    bar3(y);  % 三维条状图
    title('A 3D bargraph');
    

    效果显示:
    条形图
    4、使用pie函数绘制饼状图,示例:

    %% 饼状图
    clear; clc; close all;
    a = [10 15 20 30];   % 数据的占比
    subplot(1,3,1); 
    pie(a);  % 画出饼状图,并且自动计算出百分比
    subplot(1,3,2); 
    pie(a, [0,0,0,1]);   % 将第四个饼状图提取出来
    subplot(1,3,3); 
    pie3(a, [0,0,0,1]);  % 画三维饼状图,并且最后一个提取出来
    

    效果显示:
    饼状图
    5、使用polar函数绘制极坐标图,示例:

    %% 极坐标图
    clear; clc; close all;
    x = 1:100; 
    theta = x/10; 
    r = log10(x);
    polar(theta,r);  % 只需要给出角度和半径即可
    

    效果显示:
    极坐标图
    6、使用stairs函数绘制阶梯图,示例:

    %% 阶梯图
    clear; clc; close all;
    x = linspace(0, 4*pi, 40); 
    y = sin(x);
    stairs(y);  % 阶梯图
    

    效果显示:
    楼梯图
    7、使用stem绘制杆状图,示例:

    %% 杆状图
    clear; clc; close all;
    x = linspace(0, 4*pi, 40); 
    y = sin(x);
    stem(y);  % 杆状图
    

    效果显示:
    杆状图
    8、使用scatter函数绘制散点图,示例:

    %% 散点图
    clear; clc; close all;
    figure;
    x=[1 3 4 7 9 10 15];
    y=[5 3 5 9 7 3 7];
    subplot(1,2,1);
    scatter(x,y);   % 显示散点
    subplot(1,2,2);
    scatter(x,y,[],[1 0 0],'fill')   % 散点的颜色和填充,[]表示圆的大小相同
    

    效果显示:
    散点图
    9、使用compass函数绘制罗盘图,示例:

    %%  绘制罗盘图
    clear ;clc; close all;
    x=[1 -3 5 -6 8 9];
    y=[5 7 -9 12 15 -9];
    figure;
    compass(x,y,'r');		% 绘制罗盘图
    

    效果示例:
    罗盘图
    10、使用feather函数绘制羽毛图,示例:

    %% 羽毛图
    clear;clc; close all;
    x=[1 3 5 6 8 9];
    y=[5 7 -9 3 -5 2];
    figure;
    feather(x,y);  % 羽毛形状的图
    

    效果显示:
    羽毛图
    11、使用comet函数绘制彗星图,示例:

    %% 绘制彗星图,动态图
    clear ;clc; close all;
    x = 0:pi/50:2*pi;
    y = sin(x);
    comet(x,y);  % 画动态图
    

    效果显示:
    彗星动态图
    12、使用boxplot函数绘制盒图,示例:

    %%   正整数的频率表
    clear;clc; close all;
    a=normrnd(1,4,50,1);
    b=normrnd(5,1,50,1);
    x=[a b];
    subplot(1,2,1);
    boxplot(x,'notch','on','symbol','b*','orientation','vertical');
    subplot(1,2,2);
    boxplot(x,'notch','off','symbol','r+','orientation','horizontal');
    

    效果显示:
    盒状图
    13、使用plotyy同时绘制两条曲线,示例:

    %% 使用plotyy画两条曲线,修改曲线的属性
    clear; clc; close all;
    x = 0:0.01:20;
    y1 = 200*exp(-0.05*x).*sin(x);
    y2 = 0.8*exp(-0.5*x).*sin(10*x);
    [AX,H1,H2] = plotyy(x,y1,x,y2);  % 获取axes句柄和两条线段的句柄
    set(get(AX(1),'Ylabel'),'String','Left Y-axis');  % 设置线段1的label
    set(get(AX(2),'Ylabel'),'String','Right Y-axis');  % 设置线段2的label
    title('Labeling plotyy');  % 显示标题
    set(H1,'LineStyle','--');  % 设置两条线的风格 
    set(H2,'LineStyle',':');
    

    效果显示:
    双y轴曲线图
    14、使用fill函数绘制填充特殊图形,了解fill填充函数用法
    。示例:

    %% 画特殊的图形,并且填充颜色
    clear; clc; close all;
    t =(1:2:15)'*pi/8;   % 画8边形,将一个圆分为16份
    x = sin(t); % x的表示和y的表示
    y = cos(t);
    
    subplot(1,2,1);
    h = fill(x,y,'r'); % 填充画出来的封闭图形
    set(h,'LineWidth',5);   % 设置线宽的大小
    axis square off;  % 不显示axes
    text(0,0,'STOP','Color', 'w', 'FontSize', 40, ...
    'FontWeight','bold', 'HorizontalAlignment', 'center');
    
    t1 =(1:4)'*pi/2; 
    x1 = sin(t1);
    y1 = cos(t1);
    subplot(1,2,2);
    h = fill(x1,y1,'y');
    set(h,'LineWidth',5);   % 获取句柄h设置边框线段的大小
    axis square off;   
    text(0,0,'WALT','Color', 'b', 'FontSize', 30, ...
    'FontWeight','bold', 'HorizontalAlignment', 'center');
    

    效果显示:
    图标绘制
    15、使用fplot绘制光滑的曲线,示例:

    %%  使用fplot绘制光滑的曲线图
    clear; clc; close all;
    x=-2:0.1:4;
    subplot(1,2,1);
    plot(x,humps(x));
    title('plot');
    subplot(1,2,2);
    fplot(@humps,[-2 4])  % 光滑绘图
    title('fplot');
    

    效果显示:
    光滑绘图

    想了解更多绘图信息,请看下面博文:
    三维:
    MATLAB三维绘图(五)高级三维绘图
    MATLAB三维绘图(四)绘制特殊的三维图
    MATLAB三维绘图(三)绘制等值线图
    MATLAB三维绘图(二)使用隐函数作三维图
    MATLAB三维绘图(一)三维基础绘图
    MATLAB三维绘图基础meshgrid函数的用法解析

    二维:
    MATLAB二维绘图(三)操作绘图句柄显示特定的效果
    MATLAB二维绘图(二)向图中添加标题,坐标轴,图标和文字信息
    MATLAB二维绘图(一)使用plot函数进行简单绘图

  • 相关阅读:
    各种数字证书区别
    微信支付前端对接流程
    ts笔记 流动类型
    支付宝支付前端对接流程
    ts笔记索引签名
    [翻译]Selenium API 命令和操作(JAVA)
    玩一玩yolo目标检测
    快速上手MyBatis
    Swift快速入门
    Windows远程桌面后不能粘贴问题处理
  • 原文地址:https://www.cnblogs.com/zhicungaoyuan-mingzhi/p/12447071.html
Copyright © 2011-2022 走看看