matlab中hist函式的用法

時間 2021-09-07 07:07:55

1樓:南非烏雀

histogram是一個在影象上應用廣泛的一個統計工具,bag-of-word,spatial pymarid matching等等都是基於histogram的。那麼如何去做到有效的統計,而不去自己寫很長很慢的迴圈完成這項工作呢?matlab提供了一個非常便利的函式:

hist

下面將得到hist的一些函式用法:

設資料為10000個正態分佈:y = randn(10000,1);區間從-4到4:x = -4:0.1:4;

1.n=hist(y);

預設十個等間隔區間,並返回每個範圍內的y的元素個數作為一行向量,2.n=hist(y,x);

x是一個事先給定的區間劃分,統計y在x這個區間劃分下的個數,3.n=hist(y,nbins);

nbins是間隔數,也就是說我們應該統計多少個間隔,這裡設nbins=20,

4.[n,xout]=hist(...);

返回的引數多了很多,n是每一個區間的個數,xout是區間的中心位置

2樓:匿名使用者

直方圖也被稱為頻數直方圖,它用來顯示資料集的分佈情況。

在matlab中繪製直方圖的函式是hist,用法是hist(y,x),表示以向量x的各個元素為統計範圍,繪製y的分佈情況。

3樓:一起包菜角

x軸是範圍(bin),y軸是頻率(個數),它的bin是1-1.75, 1.75-2.

5, 2.5-3.25, 3.

25-4 四個範圍,3,2,3,2是這些data有多少個屬於bin對應的範圍,即 3個資料在1-1.75這個範圍,2個資料在1.75-2.

5的範圍,...

[n,bins]=hist(data,4),可以輸出對應的bin(這裡輸出的bin是範圍中心的位置,可以換算成以上提到的範圍)

4樓:

在matlab中hist 是用來繪製直方圖函式

呼叫語法:

n = hist(y)

n = hist(y,x)

n = hist(y,nbins)

[n,xout] = hist(...)

hist(...)

hist(axes_handle,...)

描述:直方圖顯示了資料值的分佈情況。

n = list(y)

將向量y中的元素分到10個等間隔的範圍內,並返回每個範圍內元素的個數作為一行向量。

如果y是一個m x p的矩陣,hist將y的每一列作為一個向量,並返回一個10 x p的矩陣n。n的每一列的值對應y的該列。

n = hist(y, x)

x是一個向量,返回x的長度個以x為中心的,y的分佈情況。

例如:如果x是一個5元素的向量,返回y在以x為中心的,x長度個範圍內資料直方分佈。

注:如果更需要制定數值邊界而不是中心,可以使用histc。

n = hist(y, nbins)

nbins是一個範圍,使用nbins間隔數。

[n,xout] = hist(...)

返回n和xout,包含有數目頻率和間隔位置。可以使用bar(xout, n)來繪製直方圖。

hist(...)

使用上述方法繪製沒有輸出的直方圖。

hist(axes_handle)

使用exes_handle軸繪製,代替目前的軸(gca)。

在你給的樣例當中,hist是用來計算data陣列的分佈情況,也就是分別統計1,2,3,4每個數出現的次數。

其中,data中有3個1,2個2, 3個3, 2個4.

所以輸出是3 2 3 2.

MATLAB中的DEBLANK函式

多瑙的萊茵 deblank函式是用來刪除字串中尾部空格的一個函式。在matlab中輸入help deblank就可以檢視其用法,在裡面都有詳細介紹。matlab處理字串的函式還有 strcmp 比較兩個字串是否完全相等,是,返回真,否則,返回假 strncmp 比較兩個字串前n個字元是否相等,是,返...

matlab怎麼定義函式啊,matlab中怎麼定義一個函式?

matlab中定義函式的方式有以下幾種 1 函式檔案 呼叫函式檔案 定義多個m檔案。呼叫函式檔案 myfile.m clear clcfor x 1 10 y mylfg x end 自定義函式檔案 mylfg.m function y mylfg x 注意 函式名 mylfg 必須與檔名 mylf...

用matlab求反函式,用matlab求一個反函式

z就相當於你原來函式裡面的x,而x相當於你原來函式的y。求y x x 2 18 6 x x 2 x 3 的反函式,相當於把上述方程中y當成已知量來求x,那麼把方程,得到分子是一個關於x的4次多項式 syms x y collect numden y x x 2 18 6 x x 2 x 3 x an...