matlab - 无法在matlab中的条形图上方放置图像
问题描述
我正在尝试在同一图中的条形图上方打印图像,使用带有 OuterPosition 选项的 set 命令手动更改它们的位置。
这仅在图像的垂直坐标至少为 0.42 时才有效,事实上,如果它低于此值,则图像会消失。
如何将图像置于 0.42 以下?
subplot(2,1,1)
imshow( imread('https://i.imgur.com/TVlQhpj.jpg') )
set(gca, 'OuterPosition', [.3 .42 .4 .4]);
subplot(2,1,2)
bar(1:10)
set(gca, 'OuterPosition', [.3 0 .35 .23]);
解决方案
假设您的 MATLAB 版本是最新的 (>= R2019b),您可以使用tiledlayout
而不是 subplot:
tiledlayout(2,1)
nexttile
imshow( imread('https://i.imgur.com/TVlQhpj.jpg') )
nexttile
bar(1:10)
这会将地图放在图表上方。
如果您希望地图直接位于图表上方,则必须手动修改尺寸,如下所示:
pos1 = [0.2 0.1 0.6 0.3];
subplot('Position',pos1)
bar(1:10)
pos2 = [0.2 0.41 0.6 0.3];
subplot('Position',pos2)
imshow( imread('https://i.imgur.com/TVlQhpj.jpg') )
推荐阅读
- javascript - 节点 - 变量和生成如何工作
- tfs - 在 TFS 上发布 .loadtest 结果
- json - 访问一个数组中的 JSON 对象重复值
- elasticsearch - ElasticSearch:查找索引的索引率
- marklogic - Marklogic 中 NEAR 查询的问题
- python - 用多种颜色为 Tkinter 按钮着色
- java - Hazelcast缓存实现使用Apache骆驼蓝图
- angular - 角度4:选项标签的多个值
- sql - 如何在 Postgres 中将 SQL 数据从一个视图转换为另一个视图
- rest - Meteor POST 不发送数据