paper_quicker 2022-07-04 20:23 采纳率: 100%
浏览 111
已结题

matlab做的热力图为什么不是顺滑的过渡

问题遇到的现象和发生背景

matlab做热力图为什么是色块,而不是顺滑的过度

问题相关代码,请勿粘贴截图

clear; clc; close all

[,,raw ] = xlsread('体育设施热力图数据.xlsx');

mat = cell2mat(raw(2:end, 2:end));
imagesc(mat); %生成热图
c=colorbar;
colormap hot;
ylabel(c,'Population Heat');
caxis([1 11]) %更改右侧颜色条最大最小值

xticks(1:13) %x轴分成13等分
xticklabels(raw(1,2:end))
yticks(1:15)
yticklabels(raw(2:end,1))

运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

1条回答 默认 最新

  • 鹅毛在路上了 Matlab领域优质创作者 2022-07-04 20:57
    关注

    你的数据量有多大?截图发一下看看,可能是数据量较少的原因,预期效果应该用了插值;
    而不仅仅是用的imagesc,更像是颜色插值后的伪彩图,建议尝试pcolor()

    clc,clear,close all;
    data=round(rand(1,900)*100);
    data=reshape(data,10,90);
    h=pcolor(data);
    h.FaceColor = 'interp';
    set(h,'LineStyle','none');
    
    clc,clear,close all;
    data=round(rand(1,900)*100);
    data=reshape(data,10,90);
    h=pcolor(data);
    h.FaceColor = 'interp';
    colormap jet;
    colorbar; 
    set(h,'LineStyle','none');
    

    效果:

    img


    img

    参考文档:
    https://ww2.mathworks.cn/help/matlab/ref/pcolor.html?s_tid=doc_ta

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 7月13日
  • 已采纳回答 7月5日
  • 创建了问题 7月4日

悬赏问题

  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?