【问题标题】:plot from file in matlab在matlab中从文件中绘制
【发布时间】:2018-10-05 08:50:49
【问题描述】:

robot4_motors.txt

M 204 20795 20795 3000 0 16067 16066 3000 0 0 0 6000 0
M 524 20795 20794 3000 0 16067 16066 3000 0 0 0 6000 0
M 735 20795 20795 3000 0 16067 16066 3000 0 0 0 6000 0
M 995 20795 20795 3000 0 16067 16067 3000 0 0 0 6000 0
M 995 20795 20795 3000 0 16067 16067 3000 0 0 0 6000 0
M 1233 20795 20795 3000 0 16067 16067 3000 0 0 0 6000 0
M 1499 20795 20795 3000 0 16067 16067 3000 0 0 0 6000 0
M 1763 20795 20795 3000 0 16067 16067 3000 0 0 0 6000 0

这是一个数据文件。我想从文件中取出第 3 列和第 7 列并绘制它们。我在matlab中写下代码。

代码

f = fopen('robot4_motors.txt');
plot(f(:, 3), f(:, 7))

但是代码不起作用。

引发错误位置 2 的索引超出数组 边界(不得超过 1)。

技巧 1 中的错误(第 21 行) 情节(f(:, 3), f(:, 7))

【问题讨论】:

    标签: matlab plot matlab-figure matlab-guide


    【解决方案1】:

    fopen 返回一个数字 id,它指的是打开的文件,它不是矩阵。您需要解析文件以提取数据。

    解析文件的一种方法是使用dlmread,因为这是一个以空格分隔的文件。

    % Read data into M starting at row 0, column 1.
    M = dlmread('robot4_motors.txt', ' ', 0, 1);
    

    此后,M 将包含文件中除第一列(非数字)之外的所有条目。

    >> M
    M = 
         204       20795       20795        3000           0       16067       16066        3000           0           0           0        6000           0
         524       20795       20794        3000           0       16067       16066        3000           0           0           0        6000           0
         735       20795       20795        3000           0       16067       16066        3000           0           0           0        6000           0
         995       20795       20795        3000           0       16067       16067        3000           0           0           0        6000           0
         995       20795       20795        3000           0       16067       16067        3000           0           0           0        6000           0
        1233       20795       20795        3000           0       16067       16067        3000           0           0           0        6000           0
        1499       20795       20795        3000           0       16067       16067        3000           0           0           0        6000           0
        1763       20795       20795        3000           0       16067       16067        3000           0           0           0        6000           0
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-29
      • 2012-06-07
      • 1970-01-01
      相关资源
      最近更新 更多