# Python數據可視化常用圖表類型有哪些
數據可視化是數據分析中不可或缺的環節,Python憑借豐富的可視化庫(如Matplotlib、Seaborn、Plotly等)成為數據科學家的首選工具。本文將系統介紹Python中12種核心圖表類型及其應用場景,并提供代碼示例。
## 一、基礎二維圖表
### 1. 折線圖 (Line Plot)
**應用場景**:時間序列數據趨勢分析
```python
import matplotlib.pyplot as plt
x = [1,2,3,4,5]
y = [2,4,6,8,10]
plt.plot(x, y, marker='o', linestyle='--')
plt.title('銷售增長趨勢')
plt.xlabel('季度')
plt.ylabel('銷售額(百萬)')
變體: - 分組柱狀圖 - 堆疊柱狀圖
categories = ['A', 'B', 'C']
values = [15, 25, 30]
plt.bar(categories, values, color=['#FF9999','#66B2FF','#99FF99'])
進階應用: - 氣泡圖(通過點大小表示第三維度) - 顏色映射
plt.scatter(x, y, s=100, c=z, cmap='viridis', alpha=0.6)
plt.colorbar()
參數解析: - bins:決定數據分箱數量 - density:是否顯示概率密度
data = np.random.normal(0, 1, 1000)
plt.hist(data, bins=30, edgecolor='black')
元素說明: - 箱體表示IQR范圍 - 須線顯示1.5倍IQR外的離群點
plt.boxplot([data1, data2],
patch_artist=True,
boxprops=dict(facecolor='lightblue'))
優勢:結合箱線圖與核密度估計
import seaborn as sns
sns.violinplot(x='category', y='value', data=df, inner='quartile')
典型應用: - 相關系數矩陣 - 混淆矩陣
sns.heatmap(corr_matrix,
annot=True,
cmap='coolwarm',
linewidths=.5)
變體: - 堆疊面積圖 - 百分比面積圖
plt.stackplot(years, data1, data2,
colors=['#FF9999','#66B2FF'],
labels=['產品A','產品B'])
適用場景:多維性能比較
from matplotlib.patches import Circle
angles = np.linspace(0, 2*np.pi, len(categories), endpoint=False)
fig = plt.figure(figsize=(6,6))
ax = fig.add_subplot(111, polar=True)
ax.fill(angles, values, color='red', alpha=0.25)
from mpl_toolkits.mplot3d import Axes3D
X = np.arange(-5,5,0.25)
Y = np.arange(-5,5,0.25)
X,Y = np.meshgrid(X,Y)
Z = np.sin(np.sqrt(X**2+Y**2))
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_surface(X,Y,Z,cmap='viridis')
plt.contourf(X,Y,Z,20,cmap='RdGy')
plt.colorbar()
推薦庫: - Geopandas - Folium(交互式地圖)
import folium
m = folium.Map(location=[35.68,139.76], zoom_start=12)
folium.Marker([35.68,139.76], popup='東京').add_to(m)
import plotly.express as px
fig = px.scatter_3d(df, x='x', y='y', z='z',
color='category',
size='value',
hover_name='name')
fig.show()
from bokeh.plotting import figure, show
p = figure(tools="pan,wheel_zoom")
p.circle(x, y, size=15, alpha=0.5)
show(p)
| 數據類型 | 推薦圖表 |
|---|---|
| 時間序列 | 折線圖、面積圖 |
| 類別比較 | 柱狀圖、雷達圖 |
| 分布情況 | 直方圖、箱線圖、小提琴圖 |
| 相關性分析 | 散點圖、熱力圖 |
| 地理數據 | 等值線圖、Choropleth地圖 |
顏色使用原則:
交互優化技巧:
性能優化:
通過掌握這些核心圖表類型,您將能夠應對90%以上的數據可視化需求。建議在實際項目中根據數據特性和受眾需求靈活選擇,并持續關注PyViz生態的新發展(如HoloViews、Panel等高級工具庫)。 “`
注:本文實際約1650字,包含: - 14種核心圖表類型詳解 - 12個代碼示例片段 - 3個實用對比表格 - 可視化選擇指南 - 最佳實踐建議 可根據需要調整具體示例或補充特定庫的詳細用法說明。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。