我在MATLAB中为我选择的数据插入一个散点热图。下面的代码是关于随机数据的。然而,我的数据清楚地显示了“明确定义的不同方块”,使其看起来非常不稳定。正在寻找一种更好的和改进的方法来在散布热图上插值,或者更好的是另一种创建散布热图的新方法?
下面是我的代码:
xd = randn(100000,1)';
yd = randn(100000,1)';
n = 100;
xi = linspace(min(xd(:)),max(xd(:)),n);
yi = linspace(min(yd(:)),max(yd(:)),n);
xr = interp1(xi,1:numel(xi),xd,'nearest')';
yr = interp1(yi,1:numel(yi),yd,'nearest')';
z = accumarray([xr yr], 1, [n n]);
figure;
imagesc(z)
j = jet
j(1,:) = [ 1 1 1 ]; %
colormap(j);
colorbar;发布于 2019-02-19 06:00:33
您应该能够通过使用pcolor而不是imagesc,然后将着色模式设置为"interpolated",调用命令shading interp来获得更平滑的热贴图。
https://stackoverflow.com/questions/54755779
复制相似问题