# seaborn.countplot
> 譯者:[Stuming](https://github.com/Stuming)
```py
seaborn.countplot(x=None, y=None, hue=None, data=None, order=None, hue_order=None, orient=None, color=None, palette=None, saturation=0.75, dodge=True, ax=None, **kwargs)
```
seaborn.countplot 使用條形圖顯示每個類別中觀測值的數量。
這個函數可以被認為是針對類別變量的直方圖。基本的 API 和選項與[`barplot()`](seaborn.barplot.html#seaborn.barplot "seaborn.barplot")完全相同,因此可以對比學習。
可以通過多種格式傳入數據,包括:
* 通過列表、numpy 數組、或者 pandas Series 對象表示的向量數據,數據直接傳給`x`, `y`, 和/或`hue`參數。
* 長格式的 DataFrame,此時會通過`x`, `y`以及`hue`變量決定如何繪制數據。
* 寬格式的 DataFrame,此時每個數值型的 column 都會被繪制。
* 數組或者列表形式的向量
在絕大多數情況下,數據格式都可以使用 numpy 或者 Python 對象,但是推薦使用 pandas 對象,因為 pandas 對象中相關的名稱會被用于注釋坐標軸。此外,可以通過設置分組變量為使用 Categorical 類型來控制繪制元素的順序。
這個函數總會將變量作為類別變量進行處理,按順序(0, 1, ... n)在相應坐標軸繪制數據,即使數據為數值或者日期類型。
更多信息參考[tutorial](http://seaborn.pydata.org/tutorial/categorical.html#categorical-tutorial).
參數:`x, y, hue`: `data`或者向量數據中的變量名,可選
> 用于繪制長格式數據的輸入。查看解釋示例
`data`:DataFrame, 數組,或者包含數組的列表,可選
> 用于繪制的數據集。如果`x`和`y`不存在,那么會將數據按寬格式進行處理,否則應當為長格式。
`order, hue_order`:包含字符串的列表,可選
> 類別層級繪制的順序,否則層級會從數據對象中推測。
`orient`: “v” | “h”, 可選
> 繪制的朝向(豎直或者水平)。通過從輸入變量的 dtype 進行推斷。當類別變量是數值型或者繪制寬格式數據時,可以進行指定。
`color`: matplotlib 顏色,可選
> 所有元素的顏色,或者漸變調色盤的種子。
`palette`: 調色盤名稱,列表或字典,可選
> 用于`hue`變量的不同級別的顏色。應當是[`color_palette()`](seaborn.color_palette.html#seaborn.color_palette "seaborn.color_palette")可以解釋的東西,或者將色調級別映射到 matplotlib 顏色的字典。
`saturation`: float, 可選
> 在原有飽和度的比例下繪制顏色。大片的圖塊通常在略微不飽和的顏色下看起來更好,而如果想要繪制的顏色與輸入顏色規格完全匹配,應當設置此值為`1`。
`dodge`: bool, 可選
> 當使用色調嵌套時,決定是否沿著類別軸對元素進行移位。
`ax`: matplotlib 軸,可選
> 繪制圖像的軸對象,不指定時使用當前軸。
`kwargs`: 鍵值映射
> 其他關鍵字參數會被傳遞給`plt.bar`.
返回值:`ax`: matplotlib 軸
> 返回帶有繪圖的軸對象。
另請參閱
[`barplot()`](seaborn.barplot.html#seaborn.barplot "seaborn.barplot"): 使用條形圖顯示點估計和置信區間。
[`factorplot()`](seaborn.factorplot.html#seaborn.factorplot "seaborn.factorplot"): 結合類別圖與`FacetGrid`類。
示例
顯示單個類別變量的計數值:
```py
>>> import seaborn as sns
>>> sns.set(style="darkgrid")
>>> titanic = sns.load_dataset("titanic")
>>> ax = sns.countplot(x="class", data=titanic)
```

顯示兩個類別變量的計數值:
```py
>>> ax = sns.countplot(x="class", hue="who", data=titanic)
```

水平繪制條形圖:
```py
>>> ax = sns.countplot(y="class", hue="who", data=titanic)
```

使用不同的顏色色盤:
```py
>>> ax = sns.countplot(x="who", data=titanic, palette="Set3")
```

使用`plt.bar`的關鍵字參數獲得不同的顯示效果:
```py
>>> ax = sns.countplot(x="who", data=titanic,
... facecolor=(0, 0, 0, 0),
... linewidth=5,
... edgecolor=sns.color_palette("dark", 3))
```

使用[`catplot()`](seaborn.catplot.html#seaborn.catplot "seaborn.catplot")實現結合[`countplot()`](#seaborn.countplot "seaborn.countplot")以及[`FacetGrid`](seaborn.FacetGrid.html#seaborn.FacetGrid "seaborn.FacetGrid")的效果。這樣做可以在額外的類別變量中進行分組。使用[`catplot()`](seaborn.catplot.html#seaborn.catplot "seaborn.catplot")比直接使用[`FacetGrid`](seaborn.FacetGrid.html#seaborn.FacetGrid "seaborn.FacetGrid")更加安全,因為這樣做可以確保跨分面的變量順序同步:
```py
>>> g = sns.catplot(x="class", hue="who", col="survived",
... data=titanic, kind="count",
... height=4, aspect=.7);
```

- seaborn 0.9 中文文檔
- Seaborn 簡介
- 安裝和入門
- 可視化統計關系
- 可視化分類數據
- 可視化數據集的分布
- 線性關系可視化
- 構建結構化多圖網格
- 控制圖像的美學樣式
- 選擇調色板
- seaborn.relplot
- seaborn.scatterplot
- seaborn.lineplot
- seaborn.catplot
- seaborn.stripplot
- seaborn.swarmplot
- seaborn.boxplot
- seaborn.violinplot
- seaborn.boxenplot
- seaborn.pointplot
- seaborn.barplot
- seaborn.countplot
- seaborn.jointplot
- seaborn.pairplot
- seaborn.distplot
- seaborn.kdeplot
- seaborn.rugplot
- seaborn.lmplot
- seaborn.regplot
- seaborn.residplot
- seaborn.heatmap
- seaborn.clustermap
- seaborn.FacetGrid
- seaborn.FacetGrid.map
- seaborn.FacetGrid.map_dataframe
- seaborn.PairGrid
- seaborn.PairGrid.map
- seaborn.PairGrid.map_diag
- seaborn.PairGrid.map_offdiag
- seaborn.PairGrid.map_lower
- seaborn.PairGrid.map_upper
- seaborn.JointGrid
- seaborn.JointGrid.plot
- seaborn.JointGrid.plot_joint
- seaborn.JointGrid.plot_marginals
- seaborn.set
- seaborn.axes_style
- seaborn.set_style
- seaborn.plotting_context
- seaborn.set_context
- seaborn.set_color_codes
- seaborn.reset_defaults
- seaborn.reset_orig
- seaborn.set_palette
- seaborn.color_palette
- seaborn.husl_palette
- seaborn.hls_palette
- seaborn.cubehelix_palette
- seaborn.dark_palette
- seaborn.light_palette
- seaborn.diverging_palette
- seaborn.blend_palette
- seaborn.xkcd_palette
- seaborn.crayon_palette
- seaborn.mpl_palette
- seaborn.choose_colorbrewer_palette
- seaborn.choose_cubehelix_palette
- seaborn.choose_light_palette
- seaborn.choose_dark_palette
- seaborn.choose_diverging_palette
- seaborn.load_dataset
- seaborn.despine
- seaborn.desaturate
- seaborn.saturate
- seaborn.set_hls_values