如何从matlab表中绘制行数据

时间:2016-11-05 16:42:28

标签: matlab plot

如果我的结果有两行,例如

 
       methode1     m2       m3        m4
data1  .456       .567      .987      .654
data2  .768       .654      .546      .231 

我想分别绘制每一行 其中两条线在同一尺度上

1 个答案:

答案 0 :(得分:0)

从您呈现数据的方式来看,我假设您正在处理这样的m​​atlab表:

>> methode1 = [.456; .768]; m2 = [.567; .654]; m3 = [.987; .546]; m4 = [.654; .231];
>> T = table(methode1, m2, m3, m4, 'RowNames', {'data1', 'data2'})
T =   
             methode1     m2       m3       m4  
             ________    _____    _____    _____
    data1    0.456       0.567    0.987    0.654
    data2    0.768       0.654    0.546    0.231

并且实际的问题是你不确定如何绘制因为T('data1', :)生成另一个表而不是数字,因此plot(T('data1', :))不起作用,而不是因为你是只是不知道plot命令(如果你真的意识到plot命令,那么在线阅读它,你会发现很多解释性的例子)

要使用数据,您需要先将其提取到数组中。执行此操作的命令是:

>> T_data = table2array(T)
T_data =
    0.4560    0.5670    0.9870    0.6540
    0.7680    0.6540    0.5460    0.2310

您现在可以像普通数组一样绘图,例如

>> plot(T_data(1,:), 'ro-');
>> hold on                  
>> plot(T_data(2,:), 'gd--');
>> hold off                  

hold命令允许您在同一个图形窗口中显示多个图。