Matlab 避免等高线标签重叠

Matlab 避免等高线标签重叠,matlab,plot,contour,contourf,Matlab,Plot,Contour,Contourf,我有这样的代码 [Cp hp] = contourf(log2(S_pr),log2(C_pr),ClassRateMatr_pr); clabel(Cp,hp,'LabelSpacing',150,'BackgroundColor',[1 1 1],'fontsize',16); 这给了我这个 正如你所见,标签重叠的方式让人无法阅读 我如何随机放置它们或使用其他技巧 谢谢,恐怕没有方便的方法来做你想做的事 如果您无法使用“LabelSpacing”获得所需的结果,那么可能没有其他简单的方

我有这样的代码

[Cp hp] = contourf(log2(S_pr),log2(C_pr),ClassRateMatr_pr);

clabel(Cp,hp,'LabelSpacing',150,'BackgroundColor',[1 1 1],'fontsize',16);
这给了我这个

正如你所见,标签重叠的方式让人无法阅读

我如何随机放置它们或使用其他技巧


谢谢,

恐怕没有方便的方法来做你想做的事

如果您无法使用
“LabelSpacing”
获得所需的结果,那么可能没有其他简单的方法可以实现自动、可靠地正确设置标签

我建议手动执行此操作:

[C,h] = contour(X,Y,Z,obj_Z);
t = clabel(C,h,'manual','LabelSpacing',2000,'FontSize',8)
现在,当“体形”窗口弹出时,会出现一个十字线,您可以单击每条等高线以精确指定放置标签的位置。经过一些练习,你很快就能完成。 我希望你不会有上百个这样的情节;)
只需在打印最终绘图之前准备好所有内容,并将其设置为
“手动”
,作为最后一步。

这是我一直在寻找的,谢谢,实际上我只有两个绘图,但我需要它们干净!相关职位: