已知一組資料,如何用matlab畫出它的概率密度分佈圖

2021-04-21 03:51:33 字數 3600 閱讀 1842

1樓:匿名使用者

上simwe的matlab論壇吧,我到**給你解答

已知一組資料,如何用matlab畫出它的概率密度分佈圖,請給出具體程式

2樓:紗織守鶴

clear all;

clc;

data = importdata("n(0,1).txt");%這裡n(0,1).txt為你要匯入的資料

[a, b] = normfit(data);%求出你給的服從正態分佈的資料的均值和標準差,並賦給a,b

d = normpdf(data,a,b);%求出均值為a,標準差為b的正態分佈密度函式在data各點的值

figure;

plot(data,d,'.');%以data為橫座標,d為縱座標畫出圖形,『.』為 圖形各點的樣式

3樓:藍芽刀

例項程式,應對普通情況應該夠了,但是有些特殊情況不合適,不過大多數情況不必要求非常準確,如果要很準確,自行修改下。

% 資料

ydata = random('normal',0,1,1,1024);

% 準備一些變數

bins = 100; %分100個區間進行統計

maxdat = max(ydata);%最大值

mindat = min(ydata);%最小值

bin_space = (maxdat - mindat) / bins;%每個bin寬度

xtick = mindat : bin_space : maxdat - bin_space;

% 求pdf

distribution = hist(ydata,bins);%使用直方圖得到資料落在各區間的總數

pdf = bins * distribution / ((sum(distribution )) * (maxdat - mindat));%計算pdf

% 畫圖

figure;

plot(xtick,pdf);

% 驗證:sum(pdf) * bin_space應該接近1

4樓:

一般通過已知資料,求取概率密度。需要統計學的知識。大致是畫頻譜圖。具體好像是求什麼頻數等等。但是這個也不是太難。

你照著相關書籍,就應該能寫程式了。至於重複數值,那肯定是可能的啊。因為一個未知變數都能夠重複出現,畢竟是概率事件。

用matlab畫出概率密度分佈圖

5樓:59分粑粑

方法和詳細的操作步驟如下:

1、第一步,在matlab的主介面中,將出現相關視窗,見下圖,轉到下面的步驟。

2、第二步,完成上述步驟後,直接通過命令列視窗輸入初始化內容,見下圖紅框處,轉到下面的步驟。

3、第三步,完成上述步驟後,需要根據圖示的輸入繪製影象,見下圖紅框處**,轉到下面的步驟。

4、第四步,執行完上面的操作之後,輸入相應的內容來新增標籤,見下圖,轉到下面的步驟。

5、第五步,執行完上面的操作之後,請按enter鍵確認,概率密度分佈圖就畫好了,見下圖。這樣,就解決了這個問題了。

6樓:仙人掌的憂傷

資料在y這個陣列中:

y=rand(1,3000)

ymin=min(y);

ymax=max(y);x=linspace(ymin,ymax,20)%將最大最小區間分成20個等分點(19等分),然後分別計算各個區間的個數。

工具箱是matlab函式的子程式庫,每一個工具箱都是為某一類學科專業和應用而定製的,主要包括訊號處理、控制系統、神經網路、模糊邏輯、小波分析和系統**等方面的應用。

7樓:匿名使用者

比方說,你的資料在y這個陣列中.

y=rand(1,3000)

ymin=min(y);

ymax=max(y);

x=linspace(ymin,ymax,20); %將最大最小區間分成20個等分點(19等分),然後分別計算各個區間的個數

yy=hist(y,x); %計算各個區間的個數yy=yy/length(y); %計算各個區間的個數bar(x,yy) %畫出概率密度分佈圖

s=0for i=2:length(x)

s=[s,trapz(x([1:i]),yy([1:i]))];

endfigure;

plot(x,s,x,s,'*')

如何用matlab畫一組資料的概率密度曲線

8樓:化學工程

clc;clear

x=randn(1,1000);

%hist(x)

[mu,sigma] = normfit(x)d=pdf('norm',x,mu,sigma);

figure

plot(x,d,'.')

matlab如何將一組資料的概率密度函式與頻數直方圖畫在一起?

9樓:匿名使用者

%生成一組隨機數(正態分佈)

data=normrnd(0,1,1,500);

%繪製直方圖

hist(data,20); hold on;

%求出概率密度函式引數

[mu,sigma]=normfit(data);

%繪製概率密度函式

[n,x]=hist(data,20);

y=normpdf(x,mu,sigma);

%處理一下資料,使得密度函式和最高點對齊

y=y/max(y)*max(n);

plot(x,y,'r-');

10樓:用著追她

1、首先,我們隨機產生三組範圍不同的資料,資料量都為500,他們的邊界分別為[10,15],[23,38],,[38,58]。

2、分別畫出x1,x2,x3對應的曲線,用matlab的內建函式plot進行操作,分別用三個plot進行繪圖。

3、需要用一個語句來保留前面所繪製的圖,在需要保留的圖的後面加一句hold on,即可將該圖保留,使它不被後面的圖所覆蓋。

4、這樣就可以將三條曲線畫在一張圖上,為了區別,要分別給這三條曲線定義不同的顏色。

5、為了圖的美觀,我們可以用grid on新增網格線,還需要新增橫縱座標軸標題。

6、因為我們畫的是多條曲線,因此還需要新增圖例。

11樓:匿名使用者

頻數分佈直方圖

x=load('檔名');

y=[始值:組距:末值];

histogram(x,y);

ax=gca;

ax.ylim=[0 11]; %座標軸刻度範圍ax.ytick=[0:

1:11]; %刻度ax.yticklabel=[0:

1:11]; %顯示出來的刻度ax.xlabel.

string='x軸標題';

ax.ylabel.string='';

ax.xlabel.position=[1700 -0.8 0]; %座標軸標題文字的位置

12樓:夏澀頎·哀

histogram(變數,'normalization','pdf')

已知一組資料如何用matlab擬合出正態分佈曲線求詳細命

這組資料不論是直接畫圖還是畫分佈圖,都和正態分佈曲線不太吻合啊?已知一組資料服從正態分佈,怎麼用matlab畫出其正態分佈曲線 200 先求出這一組資料的方差 均值 然後呼叫函式 y gaus f x,正態分佈又被稱為高斯分佈 如下 比如一組資料 data 2 4 6 8 10 12 data 2 ...

matlab實現,已知一組資料的核密度函式,根據核密度函式

窗寬h,樣本點x1,x2,xn的取值是多少?matlab中,如何根據已知的直方圖,近似求得其概率密度函式圖呢?15 舉個例子 x normrnd 10,4,1380000,1 生成1380000個均值為10標準差為4的正態分佈隨內機數 mu,sigma normfit x 對這些資料進行容正態分佈擬...

在matlab下如何實現對一組資料振幅譜和相位譜

cl img imread 15.bmp img double img f fft2 img 傅立葉變換 f fftshift f 使影象 bai對稱 r real f 影象頻域du實部 zhii imag f 影象頻域虛部 margin log abs f 影象幅dao度譜,加log便於顯版示 p...