显示密度continuesly在Matlab
问题描述:
我要显示一组离散数据的连续彩色图像。我用下面的代码,但它显示离散的彩色点,而不是继续彩色背景。显示密度continuesly在Matlab
scatter(xm,ym,[],c/(max(c)),'filled','d')
我怎么能显示我的颜色数据(每种颜色表示不同的密度),但持续?任何人都可以帮我吗?
例如,
ym=[7.5;7.5;7.5;5;5;5;2.5;2.5;2.5]
xm=[2.5;5;7.5;2.5;5;7.5;2.5;5;7.5]
c=[30000;30092;30084;30090;3052;30070;30042;30064;30079;30074]
答
试试这个:
clear
ym=[7.5;7.5;7.5;5;5;5;2.5;2.5;2.5];
xm=[2.5;5;7.5;2.5;5;7.5;2.5;5;7.5];
c=[30000;30092;30084;30090;30052;30070;30042;30064;30079];
cm=c-min(c);
F = scatteredInterpolant(xm,ym,cm);
ti = 2.5:.1:7.5;
[qx,qy] = meshgrid(ti,ti);
qz = F(qx,qy);
figure(1)
mesh(qx,qy,qz,'EdgeColor','none','FaceColor','interp');
hold on;
plot3(xm,ym,cm,'o');
hold off
view(2)
奖励:
figure; contourf(qx,qy,qz,'ShowText','on')
+0
输出轴在1和3之间。这些数字是什么? –
+0
我想让xm和ym成为c的位置。这意味着轴在[2.5,7]范围内。为什么x轴到3 –
+0
我改变了代码。尝试新的。 –
没有ü尝试网? –
我该如何尝试? @MendiBarel –
使用网格的问题是,c是n乘n向量,而不是n乘n矩阵。 @MendiBarel –