【问题标题】:Plot many functions in single figure in Matlab在 Matlab 中以单个图形绘制多个函数
【发布时间】:2015-04-25 23:51:08
【问题描述】:

在 Matlab 中,我有以下形式的数据:

k1=[1 2 3 ...]
f1=[34 23 12 ...]
k2=[ ... ]
f2=[ ... ]
k3=
f3=
...

绘制 k1(f1) 我使用

plot (k1,f1) 

如何在一个图形上简单地绘制所有 k#(f#) 而无需每次都调用 plot

谢谢

【问题讨论】:

    标签: matlab loops plot figure


    【解决方案1】:

    要编写多个变量,请使用plot,以便在同一图中获取多个变量,请遵循以下模式..

    k1=[1 2 3 ...]
    f1=[34 23 12 ...]
    k2=[ ... ]
    f2=[ ... ]
    k3=
    f3=
    
    figure
    plot (k1,f1,k2,f2,k3,f3) 
    

    编辑 1: 由于您的数据是矢量形式,如您的问题所示,因此将它们连接成 kf 组将允许您遍历循环并将每个数组中所需的列相互匹配..

    我将此信息的来源作为来自 youtube 的链接放在下面的 cmets 中,然后为了方便起见,我决定将其添加到此处。

    f1 = [34 23 12];
    f2 = [5 6 7];
    f3 = [18 22 34];
    
    k1 = [1 2 3];
    k2 = [3 5 6];
    k3 = [8 3 2];
    
    k = cat(1, k1, k2, k3);
    f = cat(1, f1, f2, f3);
    
    [~, col] = size(k);
    
    hold on;
    
    for kk = 1 : col
    
        plot(k(:,kk), f(:,kk))
    
    end
    

    【讨论】:

    • 有什么办法可以将编号放入循环中,例如for i=1:N,其中 i 是 k 和 f 的索引?我有很长的 k,f 列表。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多