[英]Add text from vectors at points in 3D graph
我想在我的3D图中的数据点添加文本。 我希望我的xx
, yy
和zz
向量的内容是它们对应点的文本。
xx = [124 87];
yy = [50 37];
zz = 1.0e-2*[0.4170 0.3163];
[x,y]=meshgrid(0:150,0:60);
z=zeros(size(x));
z(sub2ind(size(z),yy,xx))=zz;
surf(x,y,z)
下面是我尝试在循环中添加文本,以便它们可以在正确的点上显示在图形上。
str = {};
for i=1:size(xx)
str{i} = strcat( num2str(xx(i)), num2str(yy(i)), num2str(zz(i)) );
end
text(xx,yy,zz,str)
我希望我的图表显示的文字有点类似于下图。 下图也是正确的图表。
str应该是嵌套的单元数组,而不是strcat。
以下代码将起作用。
str = cell(size(xx, 2), 1);
for i=1:size(xx, 2)
str{i} = {num2str(xx(i)), num2str(yy(i)), num2str(zz(i))};
end
text(xx, yy, zz,str)
为了将'x:','y:'和'z:'添加到标签并显示偏移量(10%),我会这样做。
str = cell(size(xx, 2), 1);
for i=1:size(xx, 2)
str{i} = {['x: ' num2str(xx(i))], ['y: ' num2str(yy(i))], ['z: ' num2str(zz(i))]};
end
text(xx+0.1*xx, yy+0.1*yy, zz,str)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.