Matlab 绘图标记标签 (NodeLabel) 属性

Matlab plot marker label (NodeLabel) property

有没有办法在 Matlab 中访问和设置绘图标记 属性?

在某些情况下,尤其是使用用户自定义的Marker时(如下图),需要设置NodeLabel的位置、字体和颜色,使其在图.

g_obj = graph(sources, targets);
gp = plot(g_obj);

gp 是一个 Matlab GraphPlot 对象,即使 gp.NodeLabel 位于上层,但与用户定义的标记的黑线有视觉干扰,例如 AL1NAL1S6R2 不可读。

有没有办法使用 gp 本身来设置标记的字体和位置?

我尝试了这个solution,它提供了一些灵活性,只是复制了位置和标签,然后使用文本而不是 NodeLabel,在颜色、字体等方面具有更大的灵活性

%%---
gp = plot(graph_object,'Layout','layered');
labels = gp.NodeLabel;
gp.NodeLabel = [];
gp.LineStyle = 'none'; gp.Marker = 'none';

for i=1:length(labels)
    text(gp.XData(i)+2, gp.YData(i)-5,labels(i),...
       'fontsize', 8,'FontName', 'Arial', 'Color',[0 0.25 0],...
       'FontWeight', 'bold');
end