我有一个简单的情节问题。
在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 等。
我该怎么做?
非常感谢,
卡斯帕
答案 0 :(得分:0)
您可以使用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);
和其他人......