【问题标题】:Which type of MATLAB plot would produce spikes on a curve based on certain condition?哪种类型的 MATLAB 绘图会根据特定条件在曲线上产生尖峰?
【发布时间】:2018-10-09 20:18:27
【问题描述】:

我在 MATLAB 中有一个 29736 x 6 的表。表的第 6 列由 0 和 1 组成。我想要样本编号(表中的 1 到 29736)和第 6 列(1 和 0)之间的图,这样每当出现 1 时就会出现一个很好的尖峰,而出现 0 时会出现规则曲线。有人可以建议哪一行代码/函数可以做到这一点,以及如何系统地去做?

编辑:

我使用以下代码得到了一个不需要的结果(一个纯蓝色块):

stem(table_fault_test_data.Fault_Condition, 'Marker', 'none');
set(gca, 'YLim', [0 2]);       % Adjust the y-axis range

我基本上想参考包含 1 和 0 的表格的第 6 列,并仅绘制那些峰值。

【问题讨论】:

  • 我不确定。是的,可能类似于茎图,只需要 1s 处的尖峰和 0s 处的正态曲线。

标签: matlab plot data-analysis curve


【解决方案1】:

您是否正在寻找stem plot?你可以制作一个没有标记的,所以你会得到一个尖峰和零个零:

data = rand(1, 100) < 0.2;     % Some random sample data
stem(data, 'Marker', 'none');  % Make the stem plot
set(gca, 'YLim', [0 2]);       % Adjust the y-axis range

【讨论】:

  • 感谢您的回答,但我得到了一盒蓝领,没有任何尖刺。请看编辑。我指的是表格的第 6 列。我的表有 29736 个值,在第 6 列中混合了 1 和 0,即 Fault_Condition。
  • @JoyjitChatterjee:这可能是因为沿 x 轴有太多数据点,以至于所有尖峰都非常靠近,使它看起来是一个实心矩形。您需要放大或将 x 轴限制在数据的较小部分。
  • 好的。非常感谢。很有帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-05
  • 2019-03-04
  • 2021-11-08
相关资源
最近更新 更多