【问题标题】:How to plot graph with numbers (strings in between)?如何用数字(中间的字符串)绘制图形?
【发布时间】:2014-02-25 10:33:43
【问题描述】:

我想绘制一个包含 2 个数组的图形,一个是时间(X 轴),另一个是当前(Y 轴),但我的场景有一些事件,例如:收到中断、定时器过期或组件启动。

事件是存在于数组元素(数字)之间的字符串

例子:

time current
1     10
2     8
3     6
4     5
5     5

interrupt_received
6     60

component_up
7     65
8     70
...   ...
...   ...

我正在寻找一个绘图仪,将字符串作为输入,并用 X 标记将其显示在图表上,或者可以更改颜色

如果有任何可用的工具,请告诉我,或建议使用 Matlab 或 Octave 工具的方法

非常感谢!

【问题讨论】:

    标签: matlab graph plot octave


    【解决方案1】:

    使用 MATLAB PLOT 本身并在循环中逐点绘制它。

    使用 MATLAB 命令检测传入的输入是字符串(不绘制)还是数字(绘制)。

    代码-

    str1 = newline_read_from_input_text_file;
    if(isstrprop(str1(1), 'digit'))
        data1 = str2num(str1);
        plot(data1(1),data1(2))
        hold on
    else
        do_something_with_the_events(str1);
    end
    

    如果事件和数据存储在文本文件中,您可以在 MATLAB 本身中读取它 - textread

    【讨论】:

    • 非常感谢 Divakar!
    • 这非常有用。另外,请让我知道我是否可以在图表本身的每个字符串出现的位置放置一些标记或一些文本。如果我可以在图表上查明在哪个点触发了哪个事件会很有帮助
    • 看看 - mathworks.in/help/matlab/creating_plots/… 我认为这个文本绘图将归入“do_something_with_the_events(str1);”下
    猜你喜欢
    • 2017-02-23
    • 1970-01-01
    • 2021-08-11
    • 2022-11-11
    • 1970-01-01
    • 1970-01-01
    • 2020-07-27
    • 1970-01-01
    • 2021-07-01
    相关资源
    最近更新 更多