gpt4 book ai didi

matlab - 如何在 MATLAB 的子图中显示文本/字符串行?

转载 作者:太空宇宙 更新时间:2023-11-03 19:52:37 26 4
gpt4 key购买 nike

我在 MATLABfigure 中有一组 subplots。我生成了一组测试,这些测试与这些子图中的图表相关联。我想要一个单独的子图来呈现这些字符串。我不想注释图表或生成在其上打印文本的图表。我想在子图中打印大约 5 行文本。

我尝试手动将字符串放在坐标处,但它变得很乱。有直接的方法吗?

最佳答案

使用 text() 函数,将“Parent”属性设置为子图的句柄,即

figure;
h1 = subplot(2, 1, 1);
% Do some plotting on h1

h2 = subplot(2, 1, 2);
text(0, 0, sprintf('%s\n%s\n%s ... etc', line1Str, line2Str, line3Str), 'Parent', h2);

请注意,我在这里传递了 sprintf 的返回值,以便在字符串中包含换行符(文本接受新行并毫无问题地显示它们)。

您可能还希望将文本置于坐标轴的中心,为此您可以将前两个参数替换为 xPos、yPos,它们是:

xl = xlim(h2); 
xPos = xl(1) + diff(xl) / 2;
yl = ylim(h2);
yPos = yl(1) + diff(yl) / 2;
t = text(xPos, yPos, sprintf('%s\n%s\n%s ... etc', line1Str, line2Str, line3Str), 'Parent', h2);
set(t, 'HorizontalAlignment', 'center');

最后一行也将对齐设置为居中。

关于matlab - 如何在 MATLAB 的子图中显示文本/字符串行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15546312/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com