【问题标题】:time series plot in MATLAB [closed]MATLAB中的时间序列图[关闭]
【发布时间】:2021-03-31 09:24:27
【问题描述】:

我想以下面第二个图的形式获得我的时间序列图。但是我不知道MATLAB中的这个条形图是如何获得一系列时间的。有没有人有过这样的经验指导我?第一个图是我想以第二个图的形式绘制的时间序列图的示例。 应该注意的是,第一张图片是在 MATLAB 中使用简单的绘图命令。 http://www.sidc.be/silso/datafiles#total data.i 的链接地址从链接中绘制了太阳黑子数量的每日数据,它就像这里的第一条曲线。现在我想为任何时间序列数据制作一条像第二张图片一样的曲线。

【问题讨论】:

标签: matlab matlab-figure


【解决方案1】:

您可以用两组不同的条形图制作堆叠条形图,然后将底部条形图设为白色,使其不可见,然后顶部条形图将看起来像您上面的图。这是一些示例代码及其制作的情节

bar_bottom = [0.5, 2, 1.5];
bar_height = [4, 5, 3];
x = 1:3;
h = bar(x, [bar_bottom; bar_height], 'stacked');
set(h(1),'EdgeColor', 'w', 'FaceColor', 'w') % set bottom bar to be white (invisible since background is white)
set(h(2),'FaceColor', 'c', 'EdgeColor', 'w', 'BarWidth', 1)
line(x, bar_bottom + 0.5 * bar_height, 'LineWidth', 2)

【讨论】:

  • 这里的 x 是一个数据集?如果我有一个数字数据,它是如何绘制的?在 y 轴上我有太阳黑子的数量,在 x 轴上我有 x=1:3432。
猜你喜欢
  • 2018-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-22
  • 2018-07-29
  • 2013-11-29
  • 2019-07-16
相关资源
最近更新 更多