Matlab绘制点和显示值

时间:2013-09-28 01:51:57

标签: matlab plot piecewise

我有一个简单的情节问题。

在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 等。

我该怎么做?

非常感谢,

卡斯帕

1 个答案:

答案 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);

和其他人......