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...