matlab - 在用 imagesc 创建的图上覆盖一个半透明矩形?

标签 matlab matlab-figure

我在 MatLab 中使用 imagesc 绘制声场。我现在想在图像的某个位置覆盖一个半透明的填充矩形。理想情况下,我希望能够执行以下操作:

imagesc(g,g,field);
hold on
plotRectangle([100,100,200,200], 'b', 0.5)
hold off

其中 b 是矩形的颜色 0.5 是透明度。这能做到吗?

最佳答案

您可以使用 rectangle创建一个矩形对象,然后使用指定为 RGBA 的颜色来包含透明度

rectangle('Position', [100 100 200 200], 'FaceColor', [0 0 1 0.5])

或者,您可以只使用 patch对象

p = patch('vertices', [100, 100; 100, 200; 200, 200; 200 100], ...
          'faces', [1, 2, 3, 4], ...
          'FaceColor', 'b', ...
          'FaceAlpha', 0.5)

关于matlab - 在用 imagesc 创建的图上覆盖一个半透明矩形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43410762/

相关文章:

javascript - 我怎样才能在Javascript中实现这样的多维数组?

Matlab 在 RegressionTree mex 文件中崩溃

image - 在 vl_feat vl_svmtrain 函数中设置成本参数

matlab - 对数对数图最佳拟合线的 Y 截距错误

matlab - 在Matlab中正确绘制粗体轴

matlab - 使用 MATLAB 图形中的数据工具将 XTickLabel 显示为坐标

matlab - 如何向量化从向量中找到最近的点

Matlab原生消除xy点的方法

matlab - quiver3 返回长度不正确的向量

matlab - 如何在 MATLAB 绘图图例中添加独立文本