MATLAB采用双坐标轴同时绘制柱状图和折线图

时间:2024-03-22 15:33:54

利用MATLAB同时绘制柱状图和折线图,其中柱状图表示温度,折线图表示颗粒物浓度,左侧y轴表示温度(单位摄氏度),右侧y轴表示颗粒物浓度(个/每立方米)。

MATLAB采用双坐标轴同时绘制柱状图和折线图


  • MATLAB
  • plotyy

方法/步骤

  1. 第一,以某地区一周的温度和空气中颗粒物浓度为例,一周(7天)的温度分别为35,33,31,30,28,26,27摄氏度,颗粒物浓度分别为550,515,450,375,215,150,195个/立方米。下面利用MATLAB同时绘制柱状图和折线图,其中柱状图表示温度,折线图表示颗粒物浓度。

    启动MATLAB,新建脚本(Ctrl+N),在脚本编辑区输入如下代码:

    close all; clear all; clc

    days=1:1:7;

    temperature=[35,33,31,30,28,26,27];

    concentration=[550,515,450,375,215,150,195];

    [hAxes,hBar,hLine]=plotyy(days,temperature,days,concentration,'bar','plot');

    MATLAB采用双坐标轴同时绘制柱状图和折线图
  2. 第二,保存和运行上述脚本,得到如下图像,柱状图表示温度,折线图表示颗粒物浓度。

    MATLAB采用双坐标轴同时绘制柱状图和折线图
  3. 第三,为使柱状图和折线图对比明显,现在改变折线图的颜色、粗细和标记点。在脚本编辑区接着输入如下代码:

    set(hLine,'color',[1,0,0],'LineWidth',2,'Marker','o','MarkerSize',15,...

        'MarkerFace','y')

    MATLAB采用双坐标轴同时绘制柱状图和折线图





  4. 第四,保存和运行上述脚本,得到如下图形,折线图的颜色、粗细、标记点的样式及颜色都做了相应改变。

    MATLAB采用双坐标轴同时绘制柱状图和折线图






  5. 第五,为上述图形添加标题和坐标轴名称,并且设置左侧y轴单位为温度,右侧y轴单位为颗粒物浓度。在脚本编辑区接着输入如下代码:

    title('Trend Chart for Temperature & Concentration')

    xlabel('Days')

    ylabel(hAxes(1),'Temperature(^{o}C)')

    ylabel(hAxes(2),'Concentration(num*m^-3)')

    MATLAB采用双坐标轴同时绘制柱状图和折线图





  6. 第六,保存和运行上述脚本,得到如下图形。柱状图表示温度,折线图表示颗粒物浓度,左侧y轴单位为摄氏度,右侧y轴单位为个/立方米。

    MATLAB采用双坐标轴同时绘制柱状图和折线图
    END







注意事项

  • MATLAB采用双坐标同时绘制柱状图和折线图用到了plotyy命令。