把文字放在极地情节上

时间:2015-06-26 12:17:38

标签: matlab plot textbox

我正在使用极地情节,我希望在情节周围移动小方块。我正在使用以下命令绘制那些

h(1) = polar(handles.tab2_axes, testAngle, testRng, '-rs');
set( findobj(h(1), 'Type', 'line'), 'LineWidth',1, 'MarkerEdgeColor','r', ...
    'MarkerFaceColor','r', 'MarkerSize',16, 'annotation', text);

绘制角度testAngle和半径testRng的红色正方形。我试图在方块后面的方格上方/下方有文字,这取决于它在情节上的位置。有谁知道实现这个目标的简单方法?

2 个答案:

答案 0 :(得分:1)

您可以使用text - 命令为绘图添加注释。因此,您需要计算xy中的实际testAngletestRng值。

以下代码绘制了一些点并为其分配了单独的文本:

% to use your variable names
figure;
handles.tab2_axes = axes;

% create sample data
testAngle = [1, 2, 3, 4];
testRng   = [1, 2, 3, 4];
names     = {'object 1', 'object 2', 'object 3', 'object 4'};

% plot points
h(1) = polar(handles.tab2_axes, testAngle, testRng, '-rs');
set( findobj(h(1), 'Type', 'line'), 'LineWidth',1, 'MarkerEdgeColor','r', ...
    'MarkerFaceColor','r', 'MarkerSize',16);

% plot the labels
text(testRng.*cos(testAngle),testRng.*sin(testAngle),names,...
    'HorizontalAlignment','center',...
    'VerticalAlignment','bottom')

结果如下: result

答案 1 :(得分:0)

至少对于MatlabR2018a,发现应直接在极坐标中指定文本。例如: 文字(az_angle_in_radiance,r_distance,“我的文字”);