我有 X 轴的值 [2,6,10] 和 Y 轴 [0.5,0.4,0.2,0.2,....0.5],所有值都在 0 和 1 之间。
有一些点对应于 2,比如 1/3 和剩余的 1/3 对应 6,剩余的 1/3 对应 10。对应于 2 的点可以具有 0 和 1 之间的任何值,同样适用于点 6 和第 10 点。我怎样才能绘制这个?
我猜你有办法将每个 Y 值与其对应的 X 值匹配。通过使用这些 X 值生成与 Y 长度相同的向量,然后可以将它们相互绘制。
这两个向量将具有以下形式:
X = [2,6,2,10,6,6,10,2,....6]
Y = [0.5,0.4,0.2,0.2,0.9,0.3....0.5]
这是一个示例代码
% X-data
X = [2,6,10];
% Generate random Y-data
n1 = 10;
n2 = 20;
n3 = 30;
n = n1 + n2 + n3;
Y = rand(1,n);
% Match X indices corresponding to Y
% Xall = [2,2,2,...,2,6,6,6,...,6,10,10,10,...,10]
X1 = zeros(1,n1);
X1(:) = X(1);
X2 = zeros(1,n2);
X2(:) = X(2);
X3 = zeros(1,n3);
X3(:) = X(3);
Xall = [X1 X2 X3];
plot(Xall,Y,'o')
xlim([min(X)-2,max(X)+2])
这将生成以下形式的图形
plot(a(1:3:end))
这将绘制每三个点。
a=[0.5,0.4,0.2,0.2,....0.5]
b=[1:3:length(a)]
plot(a(b))