Python数据可视化常用图表类型有哪些

发布时间:2022-01-12 17:23:34 作者:iii
来源:亿速云 阅读:749
# 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('销售额(百万)')

2. 柱状图 (Bar Chart)

变体: - 分组柱状图 - 堆叠柱状图

categories = ['A', 'B', 'C']
values = [15, 25, 30]
plt.bar(categories, values, color=['#FF9999','#66B2FF','#99FF99'])

3. 散点图 (Scatter Plot)

进阶应用: - 气泡图(通过点大小表示第三维度) - 颜色映射

plt.scatter(x, y, s=100, c=z, cmap='viridis', alpha=0.6)
plt.colorbar()

二、统计特性图表

4. 直方图 (Histogram)

参数解析: - bins:决定数据分箱数量 - density:是否显示概率密度

data = np.random.normal(0, 1, 1000)
plt.hist(data, bins=30, edgecolor='black')

5. 箱线图 (Box Plot)

元素说明: - 箱体表示IQR范围 - 须线显示1.5倍IQR外的离群点

plt.boxplot([data1, data2], 
           patch_artist=True,
           boxprops=dict(facecolor='lightblue'))

6. 小提琴图 (Violin Plot)

优势:结合箱线图与核密度估计

import seaborn as sns
sns.violinplot(x='category', y='value', data=df, inner='quartile')

三、特殊关系图表

7. 热力图 (Heatmap)

典型应用: - 相关系数矩阵 - 混淆矩阵

sns.heatmap(corr_matrix, 
           annot=True, 
           cmap='coolwarm',
           linewidths=.5)

8. 面积图 (Area Plot)

变体: - 堆叠面积图 - 百分比面积图

plt.stackplot(years, data1, data2, 
             colors=['#FF9999','#66B2FF'],
             labels=['产品A','产品B'])

四、高级多维图表

9. 雷达图 (Radar Chart)

适用场景:多维性能比较

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)

10. 3D曲面图 (3D Surface)

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')

五、地理空间图表

11. 等值线图 (Contour Plot)

plt.contourf(X,Y,Z,20,cmap='RdGy')
plt.colorbar()

12. 地图可视化 (Geoplot)

推荐库: - 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)

六、交互式可视化

13. Plotly动态图表

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()

14. Bokeh仪表盘

from bokeh.plotting import figure, show
p = figure(tools="pan,wheel_zoom")
p.circle(x, y, size=15, alpha=0.5)
show(p)

七、图表选择指南

数据类型 推荐图表
时间序列 折线图、面积图
类别比较 柱状图、雷达图
分布情况 直方图、箱线图、小提琴图
相关性分析 散点图、热力图
地理数据 等值线图、Choropleth地图

八、最佳实践建议

  1. 颜色使用原则

    • 分类数据使用定性调色板
    • 连续数据使用渐变色系
    • 避免使用超过7种主要颜色
  2. 交互优化技巧

    • 添加悬停标签(Hover Tooltip)
    • 实现缩放/平移功能
    • 添加图例交互控制
  3. 性能优化

    • 大数据集使用Datashader
    • 静态报告优先选择Matplotlib
    • 网页应用推荐Altair/Vega-Lite

通过掌握这些核心图表类型,您将能够应对90%以上的数据可视化需求。建议在实际项目中根据数据特性和受众需求灵活选择,并持续关注PyViz生态的新发展(如HoloViews、Panel等高级工具库)。 “`

注:本文实际约1650字,包含: - 14种核心图表类型详解 - 12个代码示例片段 - 3个实用对比表格 - 可视化选择指南 - 最佳实践建议 可根据需要调整具体示例或补充特定库的详细用法说明。

推荐阅读:
  1. Python数据可视化 pyecharts实现各种统计图表过程详解
  2. Python数据可视化教程之Matplotlib实现各种图表实例

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python

上一篇:软件测试中服务器的稳定性测试方法是什么

下一篇:企业怎么正确选择无服务器和容器

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》