数据可视化(Matplotlib和pyecharts)

一 常见图形概念及使用

图表类型 适用场景 核心特点
柱状图(bar) 比较不同类别数据(如各地区销售额对比)、时间序列分析(离散时间) 高度反映数值大小,支持横向/纵向展示,可叠加分组
折线图(plot) 连续数据趋势比较(适合展示随时间的变化,如股票价格走势、用户增长趋势)、多变量趋势比较 通过线段连接数据点,强调连续性变化
散点图(scatter) 分析变量间相关性(如身高与体重关系),聚类分析初步观察 用点分布揭示数据模式,可添加回归线
饼图/环形图(pie) 显示比例分布(如市场份额占比)、简单分类(不适合多分类情况) 扇形面积代表比例,环形图可突出中心信息
热力图HeatMap() 矩阵数据密度展示(如用户活跃时段分布、网页点击热区) 颜色深浅映射数值大小,适合高维度数据聚类
箱线图(boxplot) 数据分布统计(如收入中位数、异常值检测)、实验的分组之间结果比较 展示最小值、Q1、中位数、Q3、最大值,识别数据离散度
雷达图(polar) 多维能力评估(如技能评分、产品属性对比) 多边形顶点表示维度,面积反映综合能力
地理地图(pyecharts) 空间数据可视化(如疫情分布、物流网络) 结合经纬度坐标,支持气泡图、热力层叠加
  • 选择原则

    • 明确目标: 趋势分析用折线图,占比用饼图,分布用散点/箱线图
    • 简化维度: 避免过度复杂(如3D图表可能降低可读性)
    • 颜色规范: 使用差异明显的色系,色盲友好(避免红绿对比)
  • 热力图(Heatmap)

    • 概念:热力图是一种以颜色深浅来表示数据大小的二维图形。颜色通常从浅到深表示数值从低到高,或者相反。
    • 使用场景
      • 二维数据展示 :用于展示二维数据矩阵中的数值分布情况。例如,展示不同时间段不同地区的销售额热度,或者基因表达矩阵中基因在不同样本中的表达水平。
      • 密度展示 :可以用于展示数据点的密度分布。例如,在地理信息系统(GIS)中展示人口密度。

二、Matplotlib

(一)Matplotlib 简介

Matplotlib 是 Python 中最常用的绘图库之一,它提供了丰富的绘图功能,可以用于绘制各种静态、动态、交互式的二维和三维图形。

(二)基本图形绘制

    import matplotlib.pyplot as plt
    import numpy as np
    
    # 生成数据
    x = np.linspace(0, 10, 100)
    y = np.sin(x)
    
    # 创建画布与子图
    fig, ax = plt.subplots(figsize=(8, 4))
    
    # 绘制折线图
    # linewidth(线宽)、markersize(标记大小)、alpha(透明度)
    # fontsize 和 fontfamily 用于设置标题和标签的字体大小和字体系列。
    
    
    ax.plot(x, y, label='sin(x)', color='blue', linestyle='--')
    ax.set_title("Sine Wave")          # 标题
    ax.set_xlabel("X Axis")           # X轴标签
    ax.set_ylabel("Y Axis")           # Y轴标签
    ax.legend()                       # 显示图例
    ax.grid(True, linestyle=':')      # 网格线
    
    plt.show()  # 展示图形
  1. 多子图与样式控制
    fig, axes = plt.subplots(nrows=2, ncols=2, figsize=(10, 6))
    
    # 第一个子图:柱状图
    axes[0,0].bar(['A', 'B', 'C'], [20, 35

你可能感兴趣的:(大数据分析,信息可视化,matplotlib)