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

使用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');

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