我想使用文本函数将一些信息添加到gui中的曲线。但问题是,当我设置坐标并指定图形的手柄时,我没有在图中显示任何内容。该文本没有显示任何内容。代码在for循环中。但这里是我的代码的一小部分,包含文本函数..
我在其他地方定义了一些矩阵d,s,c,J和mi ..
animh=handles.runAnimationOnAxes;
V=s*Es+c*0.7053*Z^2/A^(1/3)+...
J(it).*(J(it)+1)*(hbar)^2./(2*(mi*2/5*M*r0^2*A^(2/3)+...
4*M*a^2));
p=polyfit(d,V,5);
pol=p(1)*d.^5 + p(2)*d.^4+p(3)*d.^3+p(4)*d.^2+p(5)*d+p(6);
plot(animh,d,pol,'k')
ylabel(animh,'$V(r/R_0)\ (Mev)$','interpreter','latex',...
'FontSize',11);
xlabel(animh,'$r/R_0$','interpreter','latex',...
'FontSize',11);
xlim(animh,[0.3 2.5]);
ylim(animh,[Ymin Ymax]);
title(animh,'MLDM potential energy surface');
indexmin = find(min(pol) == pol);
xmin = d(indexmin);
ymin = pol(indexmin);
indexmax = find(max(pol) == pol);
xmax = d(indexmax);
ymax = pol(indexmax);
strmin = ['Minimum = ',num2str(ymin)];
text(animh,xmin,ymin,strmin);
strmax = ['Maximum = ',num2str(ymax)];
text(animh,xmax,ymax,strmax);
答案 0 :(得分:1)
text
function在其输入参数中没有handle
添加字符串的axes
。
实际上,前两个输入应该是添加字符串的点的x coord
和y coord
。
此外,text
也可用于在3D图表中添加字符串,因此在您的说明中
text(animh,xmin,ymin,strmin);
和
text(animh,xmax,ymax,strmax);
轴句柄被解释为x coord
,而xmax
和ymax
分别被解释为y coord
和z coord
。
如果在您的GUI中只有一个axes
,则只需删除调用text
中的第一个参数。
如果你的GUI中有多个axes
,你应该在axes
中添加字符串“当前轴”:
编辑:删除了对text
axes(handles.runAnimationOnAxes)
strmin = ['Minimum = ',num2str(ymin)];
text(xmin,ymin,strmin);
strmax = ['Maximum = ',num2str(ymax)];
text(xmax,ymax,strmax);
希望这有帮助。
Qapla'