2014-11-03 71 views
0

我有兩個正態分佈,我試圖從它們中獲得一個體積表面。我得到了下面的圖Matlab 3D表面正態分佈

enter image description here

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

「體積」意味着三個維度。您想要第三個維度代表什麼? – Floris 2014-11-03 03:04:11

+0

blitzstat 2014-11-03 03:19:19

+0

這是假裝的表面。但顏色不是。我只想成爲藍色和紅色。謝了哥們! – blitzstat 2014-11-03 03:20:57

回答

0

我現在不能編寫測試的解決方案 - 不能訪問Matlab許可證服務器。但這裏有兩個問題。

第一個是創建密度的曲面圖。您可以使用hist3功能對於這一點 - 如果你返回倉的值就可以控制自己繪製:

[NC] = histc(X)

(對不起,這不是我清楚你真的想要什麼 - 是R,S,ZR+S?這就是爲什麼我用X)。

然後爲圖表着色,可以使用補丁着色 - 請參閱http://www.mathworks.com/help/matlab/visualize/specifying-patch-coloring.html瞭解如何做到這一點。

這兩者的結合應該會讓你有很長的路要走......但它還是有點不清楚你真正想做什麼。我希望這些提示可以幫助你。