当前位置: 首页 > news >正文

【第一章:人工智能基础】02.数据处理及可视化-(3)可视化工具与技术

第一章 人工智能基础

第二部分:数据处理及可视化

第四节:可视化工具与技术

内容:Matplotlib 和 Seaborn 的基础使用及图表类型(如折线图、柱状图、散点图等)


一、为什么要可视化数据?

数据可视化是人工智能项目中不可或缺的一环。它能帮助我们:

  • 快速理解数据的分布与趋势

  • 识别数据中的异常与模式

  • 对模型结果进行直观展示

Python 中常用的可视化工具有 MatplotlibSeaborn,后者是在前者基础上的高级封装,使用更简洁,样式更美观。


二、Matplotlib 基础使用

【人工智能】Python常用库-Matplotlib常用方法教程-CSDN博客

1. 导入和基本设置
import matplotlib.pyplot as plt
%matplotlib inline  # Jupyter 中可视化显示
2. 折线图(Line Chart)
x = [1, 2, 3, 4]
y = [2, 4, 1, 3]
plt.plot(x, y)
plt.title("折线图示例")
plt.xlabel("X轴")
plt.ylabel("Y轴")
plt.show()
3. 柱状图(Bar Chart)
labels = ['A', 'B', 'C']
values = [10, 15, 7]
plt.bar(labels, values)
plt.title("柱状图示例")
plt.show()
4. 散点图(Scatter Plot)
x = [1, 2, 3, 4]
y = [10, 8, 6, 4]
plt.scatter(x, y)
plt.title("散点图示例")
plt.show()


三、Seaborn 基础使用

【人工智能】Python常用库-Seaborn常用方法教程_pip install seaborn-CSDN博客

Seaborn 是基于 Matplotlib 的高级可视化库,风格更加现代美观,适合快速进行统计图表绘制。

import seaborn as sns
import pandas as pd
1. 示例数据集
df = sns.load_dataset("tips")  # 自带数据集
df.head()
2. 关系图(散点图)
sns.scatterplot(x="total_bill", y="tip", data=df)
plt.title("消费金额 vs 小费")
plt.show()

3. 柱状图
sns.barplot(x="day", y="total_bill", data=df)
plt.title("不同日期的消费总额")
plt.show()
4. 折线图

虽然 Seaborn 不专门用于折线图,但可配合 pandas:

df_grouped = df.groupby("day")["total_bill"].mean().reset_index()
sns.lineplot(x="day", y="total_bill", data=df_grouped)
plt.title("每日平均消费")
plt.show()


四、其他常见图表(Seaborn)
  • 箱型图(boxplot):查看分布与异常值

  • 直方图(histplot):查看频率分布

  • 热力图(heatmap):查看变量相关性

# 相关性热力图
corr = df.corr()
sns.heatmap(corr, annot=True, cmap="coolwarm")
plt.title("变量相关性")
plt.show()

五、总结对比
特性MatplotlibSeaborn
适用范围基础绘图、完全自定义统计类图表、快速绘图
美观性较基础,需要手动美化默认风格美观
学习曲线相对较陡简洁易用
功能覆盖低层控制、多种图表类型高层封装,部分依赖 pandas 数据结构

六、小结要点
  • Matplotlib 提供底层控制,适合自定义复杂图形;

  • Seaborn 提供更高层次接口,适合数据分析与统计可视化;

  • 推荐:数据探索初期优先使用 Seaborn,需精细定制时再用 Matplotlib;

  • 掌握基本图表类型:折线图、柱状图、散点图、箱线图、热力图等。

http://www.xdnf.cn/news/982945.html

相关文章:

  • 详细解释aruco::markdetection _detectInitialCandidates函数
  • wxWidgets常见辅助类的应用示例
  • 智能制造——解读86页敏捷制造业务模型设计方案【附全文阅读】
  • 【Lua热更新知识】学习一 Lua语法学习
  • Unity Android 启动应用的时候黑屏问题
  • 嵌入式学习笔记DAY36(事务、网页制作、HTTP协议)
  • Linux日志分割压缩实战指南
  • Spring Boot 中ConditionalOnClass、ConditionalOnMissingBean 注解详解
  • java基础学习(二十五)
  • STM32单片机独立看门狗IWDG使用CubeMX配置方法
  • 认识RNN-循环神经网络
  • Java中读取YAML文件配置信息
  • vxetable框架在前端开发大数据量界面展示是很友好的
  • 室内腔体耦合器
  • 馈线与馈线连接器详解
  • 几个常见远程工作平台
  • vue项目 报错 error ‘xxx‘ is assigned a value but never used
  • Context7 Mcp Quickstart
  • 《Qt安卓编程:开启跨平台移动开发新时代》
  • arm服务器运行Jmeter报错问题UseG1GC
  • 微服务架构中的 Kafka:异步通信与服务解耦(二)
  • 探索偏微分方程数值解法的领域-AI云计算
  • 复习日!!
  • 2025年Typescript最新高频面试题及核心解析
  • AI应用开发---全套技术+落地方向
  • 论文笔记 - 《Implementing block-sparse matrix multiplication kernels using Triton》
  • C++ 通过AES-NI指令集高级硬件加速实现AES-128-CFB算法。
  • c++ std::invoke
  • influxdb3常用查询命令
  • 小型综合实验拓扑图(eNSP)