【问题标题】:How to plot two lines in one graph in MATLAB?如何在 MATLAB 中在一张图中绘制两条线?
【发布时间】:2013-06-06 04:05:18
【问题描述】:

假设我有 X={0,5.4,6.18,6.81,6.85,6.95,6.96,7.20,7.51} 和

Y={0,4.84,5.52,6.00,6.12,6.21,6.23,6.34,6.61}.请帮我画两条线

使用 MATLAB 将这些点显示在一个图表中。谢谢

【问题讨论】:

    标签: matlab graph plot linegraph


    【解决方案1】:

    您将这些称为XY 令人困惑。假设它们实际上是两条具有线性增加 x 坐标的线,您有一些选择。简单的方法是使用hold

    plot(X);
    hold on;
    plot(Y);
    hold off;
    

    另一种方法是将它们组合成一个矩阵。假设它们的长度相同(并假设列向量):

    plot( [X Y] );
    

    但更根本的是,您已将数据显示为元胞数组而不是向量。您应该首先将它们转换为向量。您可以为此使用cell2mat

    Xv = cell2mat(X)';
    Yv = cell2mat(Y)';
    plot( [Xv Yv] );
    

    【讨论】:

    • 谢谢,但我希望这些点用不同的颜色标记..如何做到这一点。谢谢
    • 我应该标记点并且线条应该是不同的颜色..我该怎么做?
    • 情节(X);坚持,稍等;情节(Y);暂缓;这个程序对我有用,但我希望这些点用不同的颜色标记,线条应该用不同的颜色。谢谢
    • 您需要阅读绘图功能:help plotdoc plot。要使用绘图颜色,您必须使用我的第一种方法,一次绘制一条线。如果这对您来说还不够强大,您将需要修改图中的颜色,这超出了这个特定问题的范围。
    【解决方案2】:

    你也可以这样做:

    x_axis_X = 1:length(X);
    y_axis_Y = 1:length(Y);
    
    figure;plot(x_axis_X, X,'o-', y_axis_Y, Y, 'x-');
    

    【讨论】:

    • 非常感谢...但我想在每一行中也指出点..如何做到这一点?
    【解决方案3】:

    plot(x1, y1, x2, y2, ... x<sub>n</sub>, y<sub>n</sub>)

    您可以像这样使用 plot() 将尽可能多的 x/y 坐标对同时放入一个图中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-13
      • 1970-01-01
      • 1970-01-01
      • 2011-03-15
      • 2016-07-22
      相关资源
      最近更新 更多