Matplotlib数据可视化实战:Matplotlib图表美化与进阶教程

图表美化:Matplotlib入门教程

学习目标

通过本课程的学习,学员将掌握如何使用Matplotlib库调整图表的样式,包括颜色、线型、标记和字体等,使学员的图表更加美观和专业。本课程将通过实际操作,帮助学员从基础到进阶,逐步提升图表制作的技能。

相关知识点

  • Matplotlib库调整图表样式

学习内容

1 Matplotlib库调整图表样式

1.1 调整图表的颜色

在数据可视化中,颜色的选择对于图表的可读性和吸引力至关重要。Matplotlib提供了多种方式来调整图表的颜色,包括使用预定义的颜色名称、十六进制颜色代码、RGB值等。

1.1.1 预定义的颜色名称

Matplotlib支持一系列预定义的颜色名称,如'red''blue''green'等。这些颜色名称可以直接在绘图函数中使用,非常方便。

bash 复制代码
%pip install matplotlib
shell 复制代码
#下载所需要的字体文件
!wget https://model-community-picture.obs.cn-north-4.myhuaweicloud.com/ascend-zone/notebook_datasets/c7ec517e2fd711f082aafa163edcddae/dingliesongtypeface20241217-2.ttf
python 复制代码
import matplotlib.pyplot as plt
import matplotlib
from matplotlib import font_manager

# 1. 把当前目录下的 font.ttf 注册到 matplotlib
font_path = './dingliesongtypeface20241217-2.ttf'
font_manager.fontManager.addfont(font_path)

# 2. 设置全局字体家族为该字体的名称
font = font_manager.FontProperties(fname=font_path).get_name()
matplotlib.rcParams['font.family'] = font
# 创建数据
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]

# 使用预定义的颜色名称
plt.plot(x, y, color='red')
plt.title('使用预定义的颜色名称')
plt.show()
1.1.2 十六进制颜色代码

如果学员需要更精确的颜色控制,可以使用十六进制颜色代码。十六进制颜色代码由#开头,后面跟着6个字符,表示红、绿、蓝三种颜色的强度。

python 复制代码
# 使用十六进制颜色代码
plt.plot(x, y, color='#FF5733')
plt.title('使用十六进制颜色代码')
plt.show()
1.1.3 RGB值

RGB值是另一种精确控制颜色的方法。RGB值是一个包含三个0到1之间浮点数的元组,分别表示红、绿、蓝三种颜色的强度。

python 复制代码
# 使用RGB值
plt.plot(x, y, color=(0.8, 0.2, 0.5))
plt.title('使用RGB值')
plt.show()
1.2 修改线型和标记

除了颜色,线型和标记也是图表美化的重要元素。Matplotlib提供了多种线型和标记样式,可以通过参数进行调整。

1.2.1 线型

Matplotlib支持多种线型,如实线、虚线、点划线等。线型可以通过linestyle参数进行设置。

python 复制代码
# 使用不同的线型
plt.plot(x, y, linestyle='--', color='blue')
plt.title('使用虚线')
plt.show()
plt.plot(x, y, linestyle=':', color='green')
plt.title('使用点线')
plt.show()


1.2.2 标记

标记用于在数据点上添加视觉效果,使图表更加清晰。标记样式可以通过marker参数进行设置。

python 复制代码
# 使用不同的标记
plt.plot(x, y, marker='o', color='red')
plt.title('使用圆形标记')
plt.show()

plt.plot(x, y, marker='s', color='purple')
plt.title('使用方形标记')
plt.show()


1.3 自定义字体和文本

在图表中,文本的样式和字体也非常重要。Matplotlib提供了多种方法来自定义文本的样式,包括字体、大小、颜色等。

1.3.1 设置字体

Matplotlib允许学员设置图表中所有文本的默认字体。可以通过rcParams来设置全局字体。

python 复制代码
# --- 设置全局自定义字体 ---
import matplotlib.pyplot as plt
import matplotlib
from matplotlib import font_manager

# 1. 把当前目录下的 font.ttf 注册到 matplotlib
font_path = './dingliesongtypeface20241217-2.ttf'
font_manager.fontManager.addfont(font_path)

# 2. 设置全局字体家族为该字体的名称
font = font_manager.FontProperties(fname=font_path).get_name()
matplotlib.rcParams['font.family'] = font

# 创建数据
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]

# 绘制图表
plt.plot(x, y, color='blue')
plt.title('使用Dingliesongtypeface字体')
plt.xlabel('X轴')
plt.ylabel('Y轴')
plt.show()
1.3.2 设置文本样式

除了全局设置,学员还可以在特定的文本元素上设置样式,如标题、标签等。

python 复制代码
# 设置特定文本的样式
plt.plot(x, y, color='blue')
plt.title('自定义标题样式', fontsize=16, color='red')
plt.xlabel('X轴', fontsize=14, color='green')
plt.ylabel('Y轴', fontsize=14, color='purple')
plt.show()
相关推荐
DKunYu几秒前
2.1线性回归
pytorch·python·深度学习·1024程序员节
大飞记Python2 分钟前
实战分享:一键自动化下载指定版本的Chrome及Chromedriver(附Python源码)
chrome·python·自动化
程序员杰哥1 小时前
如何使用Postman做接口自动化测试及完美的可视化报告?
自动化测试·软件测试·python·测试工具·jenkins·postman·1024程序员节
老歌老听老掉牙2 小时前
参数曲线切向量与叉乘向量的精确计算与分析
python·sympy·1024程序员节
Cherry Zack2 小时前
FastAPI 入门指南 :基础概念与核心特性
开发语言·python·fastapi·1024程序员节
言德斐2 小时前
Python Web框架深度对比:Django vs Flask vs FastAPI(含优缺点与选型策略)
前端·python·django
开心-开心急了3 小时前
Flask入门教程——李辉 第5章: 数据库 关键知识梳理
笔记·后端·python·flask·1024程序员节
CodeCraft Studio4 小时前
国产化Excel开发组件Spire.XLS教程:在Python中将Pandas DataFrame导出到Excel的详细教程
python·excel·pandas
B站_计算机毕业设计之家4 小时前
python舆情分析可视化系统 情感分析 微博 爬虫 scrapy爬虫技术 朴素贝叶斯分类算法大数据 计算机✅
大数据·爬虫·python·scrapy·数据分析·1024程序员节·舆情分析
B站_计算机毕业设计之家4 小时前
基于python人脸识别系统 人脸检测 实时检测 深度学习 Dlib库 ResNet深度卷积神经网络 pyqt设计 大数据(源码)✅
python·深度学习·目标检测·计算机视觉·信息可视化·人脸识别·1024程序员节