Matlab:缩放数据,在单个图形上绘制多个向量

Matlab:缩放数据,在单个图形上绘制多个向量,matlab,plot,scale,Matlab,Plot,Scale,我想在一个单比例图上绘制以下内容。以下是我的数据和这些数据的单点图: A = [11 115 167 44 51 5 6]; B = [100 1 1 87]; C = [2000 625]; D = [81 623 45 48 6 14 429 456 94]; E = [89]; F = [44 846 998 2035 498 4 68 4 1 89]; G = {A,B,C,D,E,F}; [max_val, idx] = max(cellfun(@numel, G)); % Find

我想在一个单比例图上绘制以下内容。以下是我的数据和这些数据的单点图:

A = [11 115 167 44 51 5 6];
B = [100 1 1 87];
C = [2000 625];
D = [81 623 45 48 6 14 429 456 94];
E = [89];
F = [44 846 998 2035 498 4 68 4 1 89];

G = {A,B,C,D,E,F};
[max_val, idx] = max(cellfun(@numel, G)); % Find max sizes of vectors

figure(1);plot(1:numel(A),A,'*');
figure(2);plot(1:numel(B),B,'*');
figure(3);plot(1:numel(C),C,'*');
figure(4);plot(1:numel(D),D,'*');
figure(5);plot(1:numel(E),E,'*');
figure(6);plot(1:numel(F),F,'*');
如何使用
max_val
表示100%,以便将x轴数据缩放到单个图形中。结果应为单个图形,x轴为0到100%(因此向量中的第一个值应表示0%,向量中的最后一个值应表示100%),y值不变

在这种情况下,
max_val
为10,表示向量
F
。因此,这应该是一个不需要缩放的图形。因此,所有其他图形应在x轴上展开(缩放),并绘制在同一图形上


为了用图片进行解释,这里是一个常规的无标度图,显示了同一图表上的所有数据点:

这是我想要的近似结果,它是同一图表上所有数据点的缩放图(通过手动excel篡改实现):

我希望这是清楚的。
非常感谢您的帮助。

不过,我还是不能100%确定我是否理解您的意思。但是,如果您只想让单元格中每个字段的x轴介于0和100%之间,我建议您使用
重缩放
功能:

A = [11 115 167 44 51 5 6];
B = [100 1 1 87];
C = [2000 625];
D = [81 623 45 48 6 14 429 456 94];
E = [89];
F = [44 846 998 2035 498 4 68 4 1 89];
G = {A,B,C,D,E,F};

xScaled = cellfun(@(x) rescale(1:length(x),0,100),G,'UniformOutput',false);

for i = 1:length(G)
    plot(xScaled{i},G{i},'*')
    hold on
end