我有一个简单的情节问题。
在 x 轴上,值是 K,例如从 2 到 12,离散的。在 y 轴上,值是 C,例如从 1 到 10,离散的。
我的功能是分段的:
K 如果 K<2C; 如果 K>=2C,则 K+2C;
我想显示点(K,C)的值:
(1,1) 显示为 1 (1,2) 显示为 1 (2,1) 显示为 4 (2,2) 显示为 2 等。
我该怎么做?
非常感谢,
卡斯帕
您可以使用ndgrid创建 K 和 C:
[K C] = ndgrid(2:12,1:10);
然后使用逻辑索引来计算单独的部分:
z=zeros(11,10);
ind = K>=(2*C);
z(~ind) = K(~ind);
z(ind) = K(ind)+2*C(ind);
然后绘制任何你想要的方式:
surf(C,K,z);
或者
image(z);
和别的....