我再次需要您的帮助:)。我正在尝试为一个非常大的数据集绘制多条线。首先,我对数据集进行了划分,以在Matlab中获得一个TABLE,该TABLE包含6列,第一列表示我希望在x轴上显示的日期。现在,我想使用for循环在y轴上绘制其他列(并且在原始文件中超过6列)。我尝试了以下方法,但没有成功:
hold on
for i=2:1:6
plot(Doldenstock(:,1), Doldenstock(:,i));
end
hold off
据我了解,此代码将完全满足我对第2、3、4、5、6列的要求。但是,我总是得到相同的错误代码:
使用表格/图表时出错 输入参数过多。
Plotting_bogeo错误(第6行) plot(Doldenstock(:,1),Doldenstock(:,i));
现在,我不知道这样的循环是否不适用于Tabes,而仅适用于数组?
谢谢您的帮助!
干杯, 塔玛拉
答案 0 :(得分:2)
函数plot(x)
期望x为标量,向量或矩阵。但是在您的情况下,输入是一个表,因为使用括号访问表会返回一个表,这不受支持。
如果您阅读doc "how to access data in a table",将会发现需要使用花括号{}
来提取原始数据(在您的情况下为一维矩阵)。
因此使用:
plot(T{:,1},T{:,2})