Matlab 使用两个坐标列和一个权重列的密度图
我有一个3列的矩阵。前两列是坐标,第三列是重量或强度Matlab 使用两个坐标列和一个权重列的密度图,matlab,plot,matlab-figure,density-plot,Matlab,Plot,Matlab Figure,Density Plot,我有一个3列的矩阵。前两列是坐标,第三列是重量或强度 newmat = [ 27.37 -45.69 14.47 27.37 -45.68 18.58 27.37 -45.67 29.05 27.37 -45.66 51.7 ... ... ... ] 我已经创建了散点图: 但是,我想要一个密度图(作为第二个图)。我尝试使用中的hist3函数,但我不知道如何考虑第
newmat = [ 27.37 -45.69 14.47
27.37 -45.68 18.58
27.37 -45.67 29.05
27.37 -45.66 51.7
... ... ... ]
我已经创建了散点图:
但是,我想要一个密度图(作为第二个图)。我尝试使用中的
hist3
函数,但我不知道如何考虑第三列-权重。您可以从newmat
中的数据创建一个矩阵(使用函数和),并将其绘制为:
以下是一些与您的格式类似的示例数据:
[X, Y] = meshgrid(0:0.1:2, 3:0.1:5);
Z = peaks(21);
newmat = [X(:) Y(:) Z(:)];
这是上面的代码根据这些数据生成的图:
从图片链接:
out=accumarray([idxx,idxy],1)代码>将其替换为out=accumarray([idxx,idxy],权重)代码>谢谢,但是它到底对我有什么帮助呢?非常感谢。它非常有用!
[X, Y] = meshgrid(0:0.1:2, 3:0.1:5);
Z = peaks(21);
newmat = [X(:) Y(:) Z(:)];