数据分析三剑客【AIoT阶段一(下)】(十万字博文 保姆级讲解)—Matplotlib—数据可视化入门—基础知识(2)(二)

简介: 你好,感谢你能点进来本篇博客,请不要着急退出,相信我,如果你有一定的 Python 基础,想要学习 Python数据分析的三大库:numpy,pandas,matplotlib;这篇文章不会让你失望,本篇博客是 【AIoT阶段一(下)】 的内容:Python数据分析,

1.1.2 标题、标签、坐标轴刻度

1.1.2.1 标题的设置

🚩标题其实就是图片的名字,即这个图片是什么,表达的是什么样的含义

# 数据还是刚刚绘制的正弦图
plt.plot(x, y)
# 图的标题设置为 Sin(x),字体大小设为18,颜色设为红色,标题离图片的间距为20
plt.title('Sin(x)', fontsize = 18, color = 'red', pad = 20)

image.png

那么我们是否可以把标题设置为中文呢?

# 数据还是刚刚绘制的正弦图
plt.plot(x, y)
# 图的标题设置为正弦波,字体大小设为18,颜色设为红色,标题离图片的间距为20
plt.title('正弦波', fontsize = 18, color = 'red', pad = 20)

53.png

WTF??? 居然乱码报错了,下面我们来介绍解决的方法:

首先先来查看一下我们电脑都有哪些字体:

# 找到电脑的字体
from matplotlib import font_manager
fm = font_manager.FontManager()
# 用列表生成式获取字体
[font.name for font in fm.ttflist]

image.png

我们的电脑有很多的字体,这个截图只展示了一部分字体,其中有英文字体,中文字体…

我们可以找找有没有 KaiTi(楷体)

浏览器页面搜索(Google浏览器),按下 Ctrl + F,输入 KaiTi:

54.png

或者你搜宋体什么的都是可以的,一般电脑都会有这些字体,接下来回到我们的报错代码上,我们来设置我们的字体:

# 数据还是刚刚绘制的正弦图
plt.plot(x, y)
# 设置字体为楷体
plt.rcParams['font.family'] = 'KaiTi'
# 图的标题设置为正弦波,字体大小设为18,颜色设为红色,标题离图片的间距为20
plt.title('正弦波', fontsize = 18, color = 'red', pad = 20)

55.png

这下 正弦波 被显示出来了,可是还是有报错,这波啊~,这波叫做对了但没完全对,我们通过观察图像可以发现是负号有出了问题:

image.png

害,多大点事儿嘛,有 bug 咋们就接着改就完了:

# 数据还是刚刚绘制的正弦图
plt.plot(x, y)
# 设置字体为楷体
plt.rcParams['font.family'] = 'KaiTi'
# 设置数字的负号
plt.rcParams['axes.unicode_minus'] = False
# 图的标题设置为正弦波,字体大小设为18,颜色设为红色,标题离图片的间距为20
plt.title('正弦波', fontsize = 18, color = 'red', pad = 20)

56.png

ok,这下所有的 bug 就完美的解决了,但是总看的不得劲,字体有点小了,看起来费眼睛,我们来把所有的字体都变得大一点:

# 数据还是刚刚绘制的正弦图
plt.plot(x, y)
# 设置字体为楷体
plt.rcParams['font.family'] = 'KaiTi'
# 设置数字的负号
plt.rcParams['axes.unicode_minus'] = False
# 把所有的字体都设置成 28 大小
plt.rcParams['font.size'] = 28
# 图的标题设置为正弦波,字体大小设为18,颜色设为红色,标题离图片的间距为20
plt.title('正弦波', fontsize = 18, color = 'red', pad = 20)

58.png

好家伙,又出问题了,我们的字体虽然都变大了(图片显示的不明显,读者自己执行一下代码会有明显的变化),但是相对应的我们的图变小了,我们来设置一下图片的尺寸:

# 设置图片的大小
plt.figure(figsize = (12, 9))
# 数据还是刚刚绘制的正弦图
plt.plot(x, y)
# 设置字体为楷体
plt.rcParams['font.family'] = 'KaiTi'
# 设置数字的负号
plt.rcParams['axes.unicode_minus'] = False
# 把所有的字体都设置成 28 大小
plt.rcParams['font.size'] = 28
# 图的标题设置为正弦波,字体大小设为18,颜色设为红色,标题离图片的间距为20
plt.title('正弦波', fontsize = 18, color = 'red', pad = 20)

59.png

1.1.2.2 标签的设置

🚩标签对应到我们的上图之中其实就是横纵坐标

plt.figure(figsize = (9, 6))
plt.plot(x, y)
plt.rcParams['font.family'] = 'KaiTi'
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams['font.size'] = 28
plt.title('正弦波', fontsize = 18, color = 'red', pad = 20)
# 设置横坐标为 X
plt.xlabel('X')
# 设置纵坐标为 f(x) = sin(x)
plt.ylabel('f(x) = sin(x)')

60.png

看着纵坐标竖着不舒服,我们把它横过来:

plt.figure(figsize = (9, 6))
plt.plot(x, y)
plt.rcParams['font.family'] = 'KaiTi'
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams['font.size'] = 28
plt.title('正弦波', fontsize = 18, color = 'red', pad = 20)
# 设置横坐标为 X
plt.xlabel('X')
# 设置纵坐标为 f(x) = sin(x)
plt.ylabel('f(x) = sin(x)', rotation = 0)

61.png

纵坐标离 y yy轴有点近,我们继续调整一下:

plt.figure(figsize = (9, 6))
plt.plot(x, y)
plt.rcParams['font.family'] = 'KaiTi'
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams['font.size'] = 28
plt.title('正弦波', fontsize = 18, color = 'red', pad = 20)
# 设置横坐标为 X
plt.xlabel('X')
# 设置纵坐标为 f(x) = sin(x)
plt.ylabel('f(x) = sin(x)', rotation = 0, horizontalalignment = 'right')

62.png

1.1.2.3 坐标轴刻度的设置

🚩接下来我们设置刻度,上图中的 0 2 4 6 -1.0 -0.5 0.0 0.5 1.0  其实就是刻度,因为我们现在描绘的是正弦波,对于正弦波而言,我们y轴上的刻度其实给-1 0 1就可以了:

63.png

我们的横坐标刻度对于正弦波而言一般是0,π/2,π,3π/2,2π:

plt.figure(figsize = (9, 6))
plt.plot(x, y)
plt.rcParams['font.family'] = 'KaiTi'
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams['font.size'] = 28
plt.title('正弦波', fontsize = 18, color = 'red', pad = 20)
plt.xlabel('X')
plt.ylabel('f(x) = sin(x)', rotation = 0, horizontalalignment = 'right')
# 设置y轴上的刻度为:-1 0 1
plt.yticks([-1, 0, 1])
# 设置x轴的刻度
plt.xticks([0, np.pi / 2, np.pi, 1.5 * np.pi, 2 * np.pi])

64.png

这好像和我们希望的不太一样,这编译器太实诚了,直接把 π 带入计算了,我们希望的显然不是这样,我们希望 π  用希腊字母进行显示:

plt.figure(figsize = (9, 6))
plt.plot(x, y)
plt.rcParams['font.family'] = 'KaiTi'
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams['font.size'] = 28
plt.title('正弦波', fontsize = 18, color = 'red', pad = 20)
plt.xlabel('X')
plt.ylabel('f(x) = sin(x)', rotation = 0, horizontalalignment = 'right')
# 设置y轴上的刻度为:-1 0 1
plt.yticks([-1, 0, 1])
# 设置x轴的刻度
plt.xticks([0, np.pi / 2, np.pi, 1.5 * np.pi, 2 * np.pi],
           [0, r'$\frac{\pi}{2}$', r'$\pi$', r'$\frac{3\pi}{2}$', r'$2\pi$'])

65.png

当然我们可以设置颜色,比如我们设置横坐标刻度为红色:

plt.figure(figsize = (9, 6))
plt.plot(x, y)
plt.rcParams['font.family'] = 'KaiTi'
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams['font.size'] = 28
plt.title('正弦波', fontsize = 18, color = 'red', pad = 20)
plt.xlabel('X')
plt.ylabel('f(x) = sin(x)', rotation = 0, horizontalalignment = 'right')
# 设置y轴上的刻度为:-1 0 1
plt.yticks([-1, 0, 1])
# 设置x轴的刻度
plt.xticks([0, np.pi / 2, np.pi, 1.5 * np.pi, 2 * np.pi],
           [0, r'$\frac{\pi}{2}$', r'$\pi$', r'$\frac{3\pi}{2}$', r'$2\pi$'],
           color = 'red')

66.png




目录
相关文章
|
2月前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析的入门指南
本文将引导读者了解如何使用Python进行数据分析,从安装必要的库到执行基础的数据操作和可视化。通过本文的学习,你将能够开始自己的数据分析之旅,并掌握如何利用Python来揭示数据背后的故事。
|
3月前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析的入门指南
【10月更文挑战第42天】本文是一篇技术性文章,旨在为初学者提供一份关于如何使用Python进行数据分析的入门指南。我们将从安装必要的工具开始,然后逐步介绍如何导入数据、处理数据、进行数据可视化以及建立预测模型。本文的目标是帮助读者理解数据分析的基本步骤和方法,并通过实际的代码示例来加深理解。
86 3
|
5月前
|
数据可视化 数据挖掘 Linux
震撼发布!Python数据分析师必学,Matplotlib与Seaborn数据可视化实战全攻略!
在数据科学领域,数据可视化是连接数据与洞察的桥梁,能让复杂的关系变得直观。本文通过实战案例,介绍Python数据分析师必备的Matplotlib与Seaborn两大可视化工具。首先,通过Matplotlib绘制基本折线图;接着,使用Seaborn绘制统计分布图;最后,结合两者在同一图表中展示数据分布与趋势,帮助你提升数据可视化技能,更好地讲述数据故事。
84 1
|
4月前
|
数据可视化 数据挖掘 大数据
Python 数据分析入门:从零开始处理数据集
Python 数据分析入门:从零开始处理数据集
|
4月前
|
数据采集 数据可视化 数据挖掘
使用Python进行数据分析:从入门到实践
使用Python进行数据分析:从入门到实践
94 2
|
4月前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析的入门指南
【9月更文挑战第33天】本文旨在为初学者提供一个关于使用Python进行数据分析的全面概述。我们将从基本的安装和设置开始,逐步介绍数据处理、数据可视化以及机器学习的基本概念和应用。文章将通过实际代码示例来展示如何使用Python及其相关库来解决常见的数据分析问题。
|
4月前
|
数据采集 机器学习/深度学习 数据可视化
深入浅出:用Python进行数据分析的入门指南
【10月更文挑战第21天】 在信息爆炸的时代,掌握数据分析技能就像拥有一把钥匙,能够解锁隐藏在庞大数据集背后的秘密。本文将引导你通过Python语言,学习如何从零开始进行数据分析。我们将一起探索数据的收集、处理、分析和可视化等步骤,并最终学会如何利用数据讲故事。无论你是编程新手还是希望提升数据分析能力的专业人士,这篇文章都将为你提供一条清晰的学习路径。
|
4月前
|
数据挖掘 索引 Python
Python数据分析篇--NumPy--入门
Python数据分析篇--NumPy--入门
67 0
|
4月前
|
机器学习/深度学习 数据采集 数据可视化
Python中的简单数据分析:入门指南
【10月更文挑战第2天】Python中的简单数据分析:入门指南
58 0
|
5月前
|
Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。