Rea1Hassan 2023-02-16 09:56 采纳率: 100%
浏览 3430
已结题

【matlab】错误使用 vertcat 要串联的数组的维度不一致。

matlab绘制热力图,但是提示15行 “错误使用 vertcat,
要串联的数组的维度不一致。”

代码如下:


%Load data "bias10.mat".
load bias10

%Create a figure 
figure('DefaultAxesFontSize',16);
ax = gca;

%Create a heatmap
mat = bias{2}.*ones(61,144)+bias{3}'.*ones(61,144);
imagesc(mat);
c = colorbar;
colormap hot;
ylabel(c,'Speed(km/h)');
ax.XTick = [1,13,25,37,49,61,73,85,97,109,121,133,144];
ax.XTickLabel = ['00:00'; '02:00';'04:00';'06:00';'08:00';'10:00';'12:00';...
    '14:00';'16:00 ';'18:00';'20:00';'22:00';'23:50'];
xtickangle(45);
ax.YTick = [1,6,11,16,21,26,31,36,41,46,51,56,61];
ax.YTickLabel = ['08-01';'08-06';'08-11';'08-16';'08-21';'08-26';'08-31';...
    '09-05';'09-10';'09-15';'09-20';'09-25';'09-30'];
    
% Save the figure as "heat_map10.pdf"
set(gcf,'PaperSize',[6 4.5]);
set(gcf,'PaperPositionMode','manual');
set(gcf,'PaperPosition',[0 0 6 4.5]);
saveas(gcf,'heat_map10','pdf');


展开全部

  • 写回答

4条回答 默认 最新

  • wan9zhi 2023-02-16 10:53
    关注

    这个错误通常是由于垂直串联(vertcat)的数组在维度上不匹配导致的。具体来说,在此代码中,可能是在以下行中某个地方出现了问题:

    ax.XTickLabel = ['00:00'; '02:00';'04:00';'06:00';'08:00';'10:00';'12:00';...    '14:00';'16:00 ';'18:00';'20:00';'22:00';'23:50'];
    ax.YTickLabel = ['08-01';'08-06';'08-11';'08-16';'08-21';'08-26';'08-31';...    '09-05';'09-10';'09-15';'09-20';'09-25';'09-30'];
    

    这些行试图将字符数组串联在一起,但是由于它们的维度不匹配,所以会导致错误。要解决此问题,可以将字符数组转换为单个字符串,然后使用大括号将它们放在一个单元格数组中。例如,将这些行更改为以下内容:

    ax.XTickLabel = {'00:00', '02:00', '04:00', '06:00', '08:00', '10:00', '12:00', ...
        '14:00', '16:00', '18:00', '20:00', '22:00', '23:50'};
    ax.YTickLabel = {'08-01', '08-06', '08-11', '08-16', '08-21', '08-26', '08-31', ...
        '09-05', '09-10', '09-15', '09-20', '09-25', '09-30'};
    

    这将创建一个单元格数组,其中每个元素都是一个字符串。这些字符串可以按预期方式传递给XTickLabel和YTickLabel属性,从而解决垂直串联错误。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 2月24日
  • 已采纳回答 2月17日
  • 创建了问题 2月16日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部