您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# 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进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。