【发布时间】:2014-11-10 14:35:11
【问题描述】:
我在 MATLAB 中有几个二维图。在每个图中都有一些线(每条线是固定长度值的行向量)。总是有一条基线(黑色的),其余的彩色线可能存在也可能不存在。
, .
我需要将所有这些图连接成一个图,如下所示:
请注意,这些仅用于代表性目的,但可以很好地解释我的问题。我不知道该怎么做。有人有想法吗?一个例子可能是?此外,如上图所示,连续连接的图之间必须存在垂直间隙。 需要注意的几点:
- y 轴对于所有图都是固定长度
- 如果每个单独绘图的 x 轴为 1:m。那么最终串联图的 x 轴为 1:(n*m),其中 n 是要串联的单个图的数量。
另外,由于每条彩色线对应一种特定的数据,如何创建它的图例?谢谢!
【问题讨论】:
-
如果您希望
x轴上的最终点为n*m,则不能有垂直间隙,因为这会在x轴上引入更多点。但是,您可以这样做,但是您必须消除每个信号的一些点以便为垂直间隙腾出空间,并且您当然可以在x轴n*m上制作最后一个点。如果消除每个信号上的点不是一个选项,那么您将最终的x点可能必须类似于n*m + 20,其中我们有 20 个点来考虑图之间的所有间隙。这是可行的吗? -
@rayryeng 我认为如果我选择不在第一行的端点和下一行的起点之间绘制线,则可以避免这种情况。 x 轴仍为 n*m。不是吗?可以说:情节(x(1:10)); plot(x(11:20)) 等等可能是...
-
执行
x(1:10)然后x(11:20)与x(1:20)相同。如果你想有一个垂直间隙并且仍然保持点数为 20,你必须删除一些点。例如,如果你想在两个信号之间有 2 个元素的间隙,你可以这样做x(1:9),然后x(12:20) -
只是一个小问题,你想在 x 轴上有什么标签?
-
@natan - 这是一个非常有效的问题,我没想到自己会问这个问题!
标签: matlab plot concatenation matlab-figure legend