【问题标题】:Adding a curve to Matlab Figure将曲线添加到 Matlab 图
【发布时间】:2013-04-09 23:54:22
【问题描述】:

我编写了一个程序,它可以获取大量数据并生成图形。如果我可以在现有图形上绘制曲线并将它们的值加在一起以形成一条曲线,那将非常方便并节省大量时间。举个简单的例子,假设我有以下代码,

x = [0 1 2 3 4 5];
y = [0 1 2 3 4 5];
z = [4 6 2 8 7 9];

figure
plot(x,y,x,z)   

此代码将生成一个包含两条曲线的图形。在不修改代码或重新运行程序的情况下,只使用图形选项,我想将曲线 y + z 添加到绘图中。这可能吗?谢谢。

我不想添加功能的原因是情节代码被埋在 8 个循环中 从文件名字符串的 4D 元胞数组中调用数据。

【问题讨论】:

    标签: matlab plot


    【解决方案1】:

    如果您在图中使用了x、y 和z 变量,您只需在图中添加新行即可

    hold on
    plot(x,y+z)
    hold off
    

    如果您没有直接拥有它们(例如,它们是在函数中生成的,您始终可以从带有线对象的XData、YData 属性的图形中获取它们。

    hline = findobj(gca,'type','line');
    x = get(hline,'XData');
    y = get(hline,'YData');
    X = x{1}; % let's assume that all lines have the same x values.
    Y = sum(cell2mat(y));
    
    hold on
    plot(X,Y)
    hold off
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-13
      • 1970-01-01
      • 2015-06-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多