Matplotlib 基础入门知识点总结

目录

1、绘图的一些基本命令展示

2、Matplotlib 绘制网格

3、plt.gca() 对坐标轴的操作

4、 图表的样式参数设计

5、创建图形对象

6、绘制多子图

1.add_axes():添加区域

2. subplot()函数,可以均等的划分画布

3.subplots()函数详解

7、柱形图的绘制

1. 基本柱状图

2.同位置多柱状图

3.堆叠柱状图绘制

4.水平柱状图

5.水平堆叠柱状图

6.水平同位置柱状图

8、直方图 plt.hist()

9、饼状图

10、散点图


1、绘图的一些基本命令展示

# 导入 Pyplot 模块
from matplotlib import pyplot as plt
# 导入 numpy 包
import numpy as np
# 获得 -5 到 5 之间的 ndarray 对象
x = np.arange(-5, 5)
x1 = ['2010年','2011年','2012年','2013年','2014年','2015年','2016年','2017年','2018年','2019年']
# print(x)
y = x**2
y1 = 3*x
# 使用 plot() 绘制线性图标
plt.plot(x1, y, linewidth=3, label='x的平方')
plt.plot(x1, y1, linewidth=2,  label='3倍的x')
# 用来设置字体样式以正常显示中文
plt.rcParams['font.sans-serif'] = ['SimHei']
# 默认是显示 Unicode 负号,设置正常显示字符
plt.rcParams['axes.unicode_minus'] = False
# 设置图表名称
plt.title("y等于x的平方")
# 设置 x 轴名称
plt.xlabel('x 轴', fontsize=14)
# 设置 y 轴名称
plt.ylabel('y 轴')
# 设置 x 轴的刻度,旋转度数等等
# 把下面一行注释掉,好好体会
plt.xticks(range(1, len(x1), 2),labels=[11, 12, 15, 14, 48], rotation=45, color='b')
# 添加图例,
plt.legend()
# 在图中显示数值
for a, b in zip(x1, y):
    plt.text(a, b, b)
plt.show()

运行结果:

2、Matplotlib 绘制网格

# 导入 Pyplot 模块
from matplotlib import pyplot as plt
# 导入 numpy 包
import numpy as np
x = np.linspace(-np.pi, np.pi, 256, endpoint=True)
c, s = np.cos(x), np.sin(x)
plt.plot(x, c)
plt.plot(x, s)
# 绘制网格
# plt.grid(True)
plt.grid(True, linestyle='--', color="gray", linewidth='0.5', axis='both')
# linestyle 显示线型
# color 显示颜色
# linewidth 线宽
# axis x,y,both,显示x/y/两者的网格
plt.show()

运行结果:

3、plt.gca() 对坐标轴的操作

原图:

# 导入 Pyplot 模块
from matplotlib import pyplot as plt
# 导入 numpy 包
import numpy as np
x = np.arange(-50, 50)
y = x**2
plt.plot(x, y)
plt.show()

运行结果:

 代码更改

# 导入 Pyplot 模块
from matplotlib import pyplot as plt
# 导入 numpy 包
import numpy as np
x = np.arange(-50, 50)
y = x**2
# 获取当前坐标轴
ax = plt.gca()
# 通过坐标轴 spines, 确定 top, bottom, left, right (分别表示上,下,左和右)
# 不需要右侧和上侧线条,则可以设置他的颜色
ax.spines['right'].set_color("none")
ax.spines['top'].set_color("none")
# 移动左轴到指定位置
# 在这里 position 位置参数有三种,data, outward(向外可自行尝试), axes
# 'data' 表示数值挪动,其后数字代表挪动到 y 轴的刻度值
# 'axes': 0.0-1.0之间的值,整个轴上的比例
ax.spines['left'].set_position(('data', 0.0))     # 指定移动到0.0 处
# ax.spines['left'].set_position(('axes', 0.0))     # 移动到轴上比例 0.5 倍处

# 设置区间(可以把下面一行注释掉,看看效果)
plt.ylim(0, 2500)

plt.plot(x, y)
plt.show()

运行结果:

4、 图表的样式参数设计

 4.1 线条样式

        传入 x, y,通过 plot 画图,并设置折线颜色、透明度、折线样式和折线宽度,标记点、标记点大小、标记点的颜色、标记点边宽,网格

plt.plot(x, y, color='red', alpha=0.3, linestyle='-', linewidth=5, marker='o',
         markeredgecolor='r', markersize='20', markeredgewidth=10)

1)color:可以使用颜色的 16 进制,也可以使用线条颜色的英文,还可以使用之前的缩写

  • 颜色字符
    • 'b' 蓝色         'm' 洋红色 magenta
    • 'g' 绿色         'y' 黄色
    • 'r' 红色         'k' 黑色
    • 'w' 白色 ​​​​​​​        'c' 青绿色 cyan
    • '#008000' RGB某颜色 ​​​​​​​        '0.8' 灰度值字符串
    • 多条曲线不指定颜色时,会自动选择不同颜色

2)linestyle

  •  '‐' 实线
  • '‐‐' 破折线
  • '‐.' 点划线
  • ':' 虚线

3)marker 标记点

  • ‘.’ 点标记
  • ‘,’ 像素标记(极小点)
  • ‘o’ 实心圈标记
  • ‘v’ 倒三角标记
  •   ‘D’   钻石标记
  •   ‘H’  六角标记
  •   ‘s’   正方形标记
  •   ‘+’   加号标记
  • ‘^’ 上三角标记
  • '>' 右三角标记
  • '<' 左三角标记...等等
# 导入 Pyplot 模块
from matplotlib import pyplot as plt
# 导入 numpy 包
import numpy as np
x = np.arange(0, 100, 10)
y = x ** 2
plt.plot(x, y, color='red', linestyle='--', linewidth=1, marker='H', label='test')
plt.legend(loc='upper left')
plt.show()

运行结果:

5、创建图形对象

        在Matplotlib 中,面向对象编程的核心思想是创建图形对象(figure object)。通过图形对象来调用其他属性和方法,这一有助于我们更好的处理画布。在这个过程中,pyplot 负责生成图形对象,并通过该对象来添加一个或多个 axes 对象(即绘图区域)。

        Matplotlib 提供了 matplitlib.figure 图形类模块,它包含了创建图形对象的方法。通过调用 pyplot 模块中 figure() 函数来实例化对象。

6、绘制多子图

        figure 是绘制对象(可以理解为一个空白的画布),一个figure 对象可以包含多个 Axes 子图,一个 Axes 是一个绘图区域,不加设置时,Axes 为1,且每次绘图其实都是在 figure 上的 Axes 上绘图。

接下来将学习绘制子图的集中方式:

  • add_axes():添加区域
  • subplot():均等的划分画布,只是创建一个包含子图区域的画布,(返回区域对象)
  • subplots():既创建了一个包含子图区域的画布,又创建一个 figure 图形对象。(返回 图形对象和区域对象)

1.add_axes():添加区域

        Matplotlib 定义了一个 axes 类(轴域类),该类的对象被称为 axes 对象(即轴域对象),它指定了一个有数值范围限制的绘图区域。在一个给定的画布 (figure)中可以包含多个 axes 对象,但是同一个 axes 对象只能在一个画布中使用。

2D 绘图区域(axes)包含两个轴(axis)对象

语法:

add_axes(rect)

  • 该方法用来生成一个 axes 轴域对象,对象
  • 1
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Pandas是Python编程语言的一个开源数据分析和数据处理库。它提供了丰富的数据结构和功能,使得数据分析任务更加简单和高效。而Xmind是一种思维导图工具,可以帮助用户组织和展示复杂概念和信息。 Pandas库结合了NumPy的功能和扩展了更高级的数据结构,最重要的是它的数据结构--Dataframe。Dataframe是一个二维的表格型数据结构,类似于数据库表或Excel中的表格。它提供了各种方法来处理和操纵这些表格数据,包括数据的索引、选择、过滤、排序、分组等。 使用Pandas库可以读取和写入多种数据格式,如CSV、Excel、SQL数据库等。通过Pandas的数据结构,用户可以进行数据清洗和转换,处理缺失数据、重复数据、异常数据等。此外,Pandas还提供了强大的时间序列处理功能,可以进行时间索引、频率转换、滞后、移动窗口等操作。 在数据分析方面,Pandas提供了各种统计计算的方法,如平均值、标准差、协方差、相关系数等。同时,Pandas库还能够进行数据可视化,通过绘图的方式展示数据的分布、趋势和关联关系。这使得数据分析师可以更加直观地理解和解释数据。 Xmind是一种用于创建思维导图的工具,它可以将复杂的概念和信息以图形化的方式展示出来。思维导图可以帮助用户整理和梳理思路,帮助用户更好地理解和记忆知识。在使用Pandas进行数据分析时,可以使用Xmind来记录和整理自己的数据分析过程,包括数据处理的步骤、分析的结果和相关的观察或发现。这样可以帮助用户更好地管理和沟通数据分析的过程和结果。 总结来说,Pandas是一个功能强大的数据分析和处理库,通过其丰富的数据结构和方法,可以简化和高效完成各种数据分析任务。而Xmind则是一种思维导图工具,能够帮助用户整理和展示复杂概念和信息,方便用户将数据分析过程和结果进行可视化和整理。使用Pandas和Xmind可以让数据分析任务更加简单和直观。 ### 回答2: Pandas是一个开源的Python数据分析库,它提供了丰富的数据结构和数据分析工具,使得数据处理更加简单、高效。而Pandas库中的核心数据结构是DataFrame,可以理解为一个二维的表格数据,类似于Excel中的数据表。Xmind是一款思维导图软件,可以帮助我们更好地组织和展示思维。 Pandas可以通过Xmind来进行详解,主要包括以下几个方面: 1. DataFrame的创建和基本操作:可以通过读取文件、字典、Numpy数组等方式来创建DataFrame,然后可以进行数据的选取、切片、筛选等操作。 2. 数据的清洗和处理:Pandas提供了强大的数据清洗和处理功能,可以用来处理缺失数据、重复数据以及异常值。也可以进行数据的合并、拆分、排序等操作,以及字符串、时间序列、数值等类型的转换。 3. 数据的分组和聚合:Pandas的分组和聚合功能非常强大,可以进行按列或者按行的分组操作,然后对每一组数据进行一些聚合操作,如求和、计数、平均值等。这样可以更好地了解数据的分布和概况。 4. 数据的可视化:Pandas可以配合Matplotlib等数据可视化工具,对数据进行绘图和可视化操作。可以绘制线图、柱状图、饼图等各种图表,更直观地展示数据的特征和趋势。 综上所述,使用Pandas库可以更方便地进行数据分析和处理,而通过Xmind来详细说明Pandas的各种功能和操作,能够更好地帮助用户理解和应用这些功能,从而更高效地进行数据分析和处理。 ### 回答3: Pandas是一个Python库,专门用于数据分析和数据操作。它提供了高效的数据结构和数据分析工具,使得使用Python进行数据处理变得更加方便和快速。而Xmind是一款脑图软件,用于整理和组织复杂的思维结构。 Pandas提供的数据结构主要包括两种:Series和DataFrame。Series是一维的带有标签的数组,类似于传统的数组或列表。每个元素都有唯一的标签,可以通过标签进行索引取值,方便进行数据查找和操作。DataFrame则是二维的表格型数据结构,类似于关系型数据库中的表。它由多个Series组成,每个Series代表一列数据。DataFrame可以进行行列索引、数据选择和过滤,方便进行数据的清洗和分析。 Pandas提供了丰富的数据操作和分析工具。可以进行数据的读取、清洗、转换和处理。可以对数据进行切片、聚合、排序和合并等操作。还可以对数据进行统计分析、绘图和可视化。Pandas还支持对缺失数据的处理,能够灵活处理数据中的空值,并进行填充或删除操作。 Xmind是一款强大的思维导图软件,可以帮助用户将复杂的信息整理、组织和展示。用户可以使用Xmind创建思维导图来表示数据结构、函数关系、工作流程等。通过将Python中的Pandas库和Xmind结合使用,可以更好地理解和展示数据分析的过程。可以使用脑图绘制数据处理流程图,方便团队内部的交流和理解。同时,可以使用脑图来整理数据分析中的关键知识点和技巧,方便进行知识传递和分享。 综上所述,Python的Pandas库提供了便捷的数据处理和分析工具,而Xmind则可以辅助整理和展示数据分析的过程和结果。两者结合使用,可以帮助用户更好地进行数据分析和可视化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值