使用热图和图例保存图形时,Matlab 尺寸不匹配?

问题描述 投票:0回答:1

编辑:从 R2020b(也许更早)开始,此问题已修复。

我想要一个一侧有热图,另一侧有一些条形图的图形。如您所见,我使用

uipanel
来保存热图和条形图。以下示例显示正确的数字,但我无法保存它。

该问题与条形图中的图例有关,但当我们不绘制热图时,问题就会消失。

当我保存图形时,出现以下错误:

Error using alternatePrintPath
Dimensions of arrays being concatenated are not consistent.
Error in alternatePrintPath
Error in print (line 83)
pj = alternatePrintPath(pj);
Error in saveas (line 181)
        print( h, name, ['-d' dev{i}] )
Error in mre (line 18)
saveas(fig, 'test.png');

这是一个最小的可重现示例:

fig = figure;

heatmap_panel = uipanel('Position', [0, 0, .7, 1]);
heatmap_data = magic(10);
my_heatmap = heatmap(heatmap_panel, heatmap_data);

bars_panel = uipanel('Position', [.7, 0, .3, 1]);
subplot(2, 1, 1, 'Parent', bars_panel);
bar_data = [.2, .4, .4; .3, .3, .4]';
my_bar = bar(bar_data);
my_legend = legend({'group1', 'group2'});

saveas(fig, 'test.png');
matlab matlab-figure
1个回答
0
投票

这是一小部分 Matlab 版本中的错误,如类似问题中所述:如何在 for 循环中保存子图?

© www.soinside.com 2019 - 2024. All rights reserved.