Pandas DataFrame DataFrame.plot.hist() 函式

Minahil Noor 2023年1月30日 2020年11月7日
  1. pandas.DataFrame.plot.hist() 語法
  2. 示例程式碼:DataFrame.plot.hist()
  3. 示例程式碼:DataFrame.plot.hist() 繪製複雜的直方圖
  4. 示例程式碼: DataFrame.plot.hist() 改變 bin 數量
Pandas DataFrame DataFrame.plot.hist() 函式

Python Pandas DataFrame.plot.hist() 函式繪製了一個 DataFrame 的列的單一直方圖。直方圖以圖形的形式表示資料。它可以建立範圍的條形圖。越高的條形圖表明有更多的資料落入這個條形圖的範圍。

pandas.DataFrame.plot.hist() 語法

DataFrame.sample(by=None,
                 bins=10,
                 **kwargs) 

引數

by 它是一個字串或序列。它代表 DataFrame 中要分組的列。
bins 它是一個整數。它表示直方塊的數量。一個直方塊就像一個範圍,例如,0-5,6-10 等。
**kwargs 這些是自定義直方圖的附加關鍵字引數。你可以在這裡檢視更多資訊。

返回值

它返回一個繪製的直方圖和 AxesSubplot 資料。

示例程式碼:DataFrame.plot.hist()

讓我們先用一個簡單的 DataFrame 繪製一個直方圖。

import pandas as pd
dataframe = pd.DataFrame({'Value':[100, 200, 300]})
print(dataframe)

我們的 DataFrame 看起來像,

 Value
0  100
1  200
2  300

這個函式的所有引數都是可選的。如果我們在執行這個函式時不傳遞任何引數,那麼它將產生以下輸出。

import pandas as pd
from matplotlib import pyplot as plt

dataframe = pd.DataFrame({'Value':[100, 200, 300]})

histogram = dataframe.plot.hist()
print(histogram)
plt.show()

輸出:

AxesSubplot(0.125,0.125;0.775x0.755)

Pandas DataFrame.plot.hist 基礎

示例程式碼:DataFrame.plot.hist() 繪製複雜的直方圖

現在,我們將把我們的 DataFrame 轉換為一個複雜的情況。

import pandas as pd
import numpy as np

dataframe = pd.DataFrame(
                        np.random.randint(0,200,size=(200, 3)), 
                        columns=list('ABC'))
                        
print(dataframe)

我們的 DataFrame 變成:

 A    B    C
0     15  163  163
1     29    7   54
2    195   40    6
3    183   92   57
4     72  167   40
..   ...  ...  ...
195   79   35    7
196  122   79  142
197  121   46  124
198  138  141  114
199  148   95  129

[200 rows x 3 columns]

我們已經使用 NumPy.random.randint() 函式建立了一個包含隨機整數的 DataFrame。現在,我們將使用 DataFrame.plot.hist() 函式繪製這個 DataFrame 的直方圖。

import pandas as pd
import numpy as np

from matplotlib import pyplot as plt

dataframe = pd.DataFrame(
                        np.random.randint(0,200,size=(200, 3)), 
                        columns=list('ABC'))

histogram = dataframe.plot.hist()
print(histogram)
plt.show()

輸出:

AxesSubplot(0.125,0.125;0.775x0.755)

Pandas DataFrame.plot.hist 基礎 2

該函式繪製了一個直方圖,預設有 10 個 bin。它顯示了 DataFrame 中三列的頻率分佈。每一列用特定的顏色表示。

示例程式碼: DataFrame.plot.hist() 改變 bin 數量

import pandas as pd
import numpy as np
from matplotlib import pyplot as plt

dataframe = pd.DataFrame(
                        np.random.randint(0,200,size=(200, 3)), 
                        columns=list('ABC'))
                        
histogram = dataframe.plot.hist(bins= 2)
print(histogram)
plt.show()

輸出:

AxesSubplot(0.125,0.125;0.775x0.755)

帶有引數 bin 的 Pandas DataFrame.plot.hist

import pandas as pd
import numpy as np
from matplotlib import pyplot as plt

dataframe = pd.DataFrame(
                        np.random.randint(0,200,size=(200, 3)), 
                        columns=list('ABC'))
                        
histogram = dataframe.plot.hist(bins= 50)
print(histogram)
plt.show()

輸出:

AxesSubplot(0.125,0.125;0.775x0.755)

帶有引數 50 bins 的 Pandas DataFrame.plot.hist

在第一個例子的程式碼中,我們將 bins 數改為 2,而在第二個例子的程式碼中,則是 50。請注意,bins 數越多,越容易理解直方圖。第一個直方圖是模糊的,因為我們無法看到 A 欄。

相關文章 - Pandas DataFrame

相關文章 - Pandas DataFrame Plot