【发布时间】:2017-10-06 02:43:12
【问题描述】:
我想在我从矩阵中读取的图中显示特定单元格的方向。
在附图中,我可以创建左方向箭头,但我不知道如何在西南方向插入对角箭头。
显然,latex arrow symbol 适用于左箭头、右箭头、上箭头和下箭头,但不适用于对角箭头。
在附图中,我需要通过青色单元格在西南方向插入箭头。如何做到这一点?
这是我正在尝试的脚本,
for row=1:size(data,1)
for col=1:size(data,2);
if data(row,col)==1
rectangle('Position',[col-0.5 row 1 1], 'FaceColor','y','EdgeColor','k', 'LineWidth', 0.1)
text(col-0.95,row+0.6,'\leftarrow', 'fontsize', 6);
elseif data(row,col)==2
rectangle('Position',[col-0.5 row 1 1], 'FaceColor','c','EdgeColor','k', 'LineWidth', 0.1)
text(col-0.95,row+0.6,'\swarrow', 'fontsize', 6);
else
rectangle('Position',[col-0.5 row 1 1], 'FaceColor','w','EdgeColor','k', 'LineWidth', 0.1)
end
end
set(gca,'Visible','off')
end
编辑:
Annotation 选项会增加复杂性,并且需要为每个其他问题定位箭头。如果可以使用乳胶箭头符号,问题将变得更加容易。
【问题讨论】:
-
您是否考虑过只绘制矢量,而不是使用 Latex 文本?
-
不,我不知道。你能详细说明一下吗?
-
你能描述/说明为什么它会因对角线而失败吗?
-
@Mario:我认为您应该考虑查看
quiver函数。你不需要丑陋的情节。另外,我认为您也应该考虑使用pcolor。然后,您可以摆脱您的 for 循环、矩形和注释。
标签: matlab plot matlab-figure