【问题标题】:Coloring specific points with specific colors on a graph in MATLAB plot在 MATLAB 图中用特定颜色为特定点着色
【发布时间】:2015-04-30 07:52:29
【问题描述】:

我有“类”和“输入”数组。两个数组的尺寸都是 1x2000。

在“classes”数组中,记录了“inputs”数组中的数据簇。例如,

classes = [5, 2, 4, 3, 5, ...]
inputs = [5.234, 6.345, 4.342, 2.532, 5.345, ...]

当我绘制像plot(inputs) 这样的“输入”数组时,我想对与“类”数组中的特定集群对应的每个数据进行不同的着色。

我该如何管理?

谢谢。

【问题讨论】:

  • 你想绘制输入与 x 的关系吗?请解释一下。
  • 我想绘制输入。并且inputs数组中每个数据的簇都记录在classes数组中。

标签: arrays matlab plot figure


【解决方案1】:

最简单的解决方案是:

x = 1:numel(inputs);
plot(x(classes == 1), inputs(classes == 1), '.b', 
     x(classes == 2), inputs(classes == 2), '.g', 
     x(classes == 3), inputs(classes == 3), '.r');

您可以扩展这个想法,例如循环类、自定义颜色顺序等等。 如果您想要更具体或更详细的答案,请在您的问题中添加更多信息。

【讨论】:

  • 感谢您的回答 Naveh,但现在的问题是,我无法连续绘制图表。每个集群从 x = 0 开始。我怎样才能设法将图形连续绘制为原始图形?
  • 你可以使用classes数组直接给线条上色,根据这篇帖子stackoverflow.com/a/11172348/1770618
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-16
  • 1970-01-01
  • 1970-01-01
  • 2023-01-07
  • 2012-11-28
  • 1970-01-01
相关资源
最近更新 更多