我有两个正态分布,我正在尝试从它们制作体积曲面。我得到了下面的图表
clear; clc;
nsamp = 100000;
%
% Basic variables
%
m1=2.724;
dp1=0.375;
R = normrnd(m1,dp1, nsamp, 1);
m2=1.345;
dp2=0.135;
S = normrnd(m2,dp2, nsamp, 1);
%
Z = R - S;
I = (Z < 0);
pf = sum(I)/nsamp
beta = -norminv(pf)
%
% Histograms
hist(S,20)
hold on
hist(R,40)
set(findobj('Type','patch'),'Facecolor','none','Edgecolor','black')
set(gca,'Fontsize',18,'Fontname','euclid')
xlabel('R & S')
figure
scatterhist(R,S)
xlabel('R'),ylabel('S')
我想制作一个3D表面,红色点保持红色,蓝色点保持蓝色。有人能帮我吗?此致
答案 0 :(得分:0)
我现在无法编写经过测试的解决方案 - 无法访问Matlab许可证服务器。但是你有两个问题。
首先是创建密度的曲面图。你可以使用hist3
函数 - 如果你返回垃圾箱的值,你可以自己控制阴谋:
[N C] = histc(X)
(对不起,我不清楚你真正想要绘制的内容 - 是R
,S
,Z
还是R+S
?这就是我使用X
)的原因。
然后为图表上色,您可以使用色块着色 - 请参阅http://www.mathworks.com/help/matlab/visualize/specifying-patch-coloring.html了解如何操作。
这两者的结合应该会让你走得很远......但是你还不清楚你真正想要做什么。我希望这些提示可以帮助你。