Matplotlib数据可视化:三大容器对象与常用设置(上)

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: Matplotlib数据可视化:三大容器对象与常用设置(上)

1 figure


1.1 创建figure


在上文中我们一直提到的figure指的是Figure类的实例化对象,当然我们一般不会直接去实例化Figure类,因为这样创建的Figure实例对象不能纳入序列中共同管理。matplotlib中提供了多种方法创建figure,其中属pyplot模块中的figure()方法最常用也最方便,下面我们来说说这个方法。


figure方法参数如下:


  • num:整型或字符串类型,可选参数,默认为None。这个参数课可以理解为是figure的身份标识,即id。当值为None时,会创建一个figure实例,该实例的num值会在已有基础上自增;当该参数不为None时,如果与已有的num值重复,则会切换到该figure使其处于激活状态,并返回一个该figure的引用;如果传入的参数为字符串,该字符串将会被设置为figure的标题。
  • figsize:tuple类型,可选参数,默认为None。通过figsize参数可以设置figure的size,即(width, height),单位为inch。当值为None时,采用默认size。
  • dpi:整型,可选参数,用于设置图片像素。
  • facecolor:可选参数,用于设置前景色,默认为白色。
  • edgecolor:可选参数,用于设置边框颜色,默认为黑色。
  • frameon:bool类型,可选参数,表示是否绘制窗口的图框,默认是。
  • FigureClass:传入一个类名,当使用自定义的类实例化figure时使用,默认为matplotlib.figure.Figure。
  • clear:bool类型,可选参数,默认为False。如果值为True的话,如果figure已存在,则会清除该figure的全部内容。


from matplotlib import pyplot as plt
import matplotlib as mpl
import numpy as np
mpl.rcParams['font.sans-serif'] = ['SimHei']  # 中文字体支持

640.png


fig = plt.figure(figsize=(4,2), facecolor='grey')  # 创建figure
fig.add_axes((0,0,1,1))  # 必须添加axes后才能显示
plt.show()

640.png


在jupyter编辑器中,空白的figure是不会显示的,所以必须在figure中至少添加一个axes。


1.2 figure的常用设置


1.2.1 set方法通用设置


创建figure时的各个参数基本都可以通过figure实例对象中对应的对应的set方法进行修改,例如set_facecolor()用来设置前景色,set_size_inches()用来设置大小等。

设置前景色:


fig = plt.figure(figsize=(4,2))
fig.set_facecolor('grey')  # 设置前景色
plt.plot()
plt.show()

640.png

fig = plt.figure()
fig.set_size_inches(2,3)  # 设置大小
plt.plot()
plt.show()

640.png


1.2.2 设置figure标题


fig = plt.figure(figsize=(4,2))
fig.suptitle("figure title", color='red')  # 设置figure标题
plt.plot()
plt.show()


640.png


1.2.3 添加文本


fig = plt.figure(figsize=(4,2))
fig.text(0.5,0.5,"figure text",color='red')  # 设置figure标题,前两个参数分别表示到左边框和上边框的百分比距离
plt.plot()
plt.show()


640.png


1.2.4 设置图例

fig = plt.figure(figsize=(5,3))
axes = fig.add_axes((0,0,0.8,1))
x = np.linspace(0, 10, 1000)
line1, = axes.plot(x, np.sin(x))  # 注意,line1后面有个逗号,因为plot()方法返回值是一个列表
line2, = axes.plot(x, np.cos(x))
fig.legend([line1, line2],['sin', 'cos'])
plt.show()


640.png


1.2.5 设置子图间距


fig, axes = plt.subplots(2,2,facecolor='grey')
fig.subplots_adjust(left=None,   # 设置画图区域与figure上下左右边框的比例距离
                    bottom=None, 
                    right=None, 
                    top=None,
                    wspace=0.3,   # 子图间水平方向距离
                    hspace=1)     # 子图间垂直方向距离
plt.show()

640.png

相关文章
|
17小时前
|
数据可视化 数据处理 Python
Python数据可视化:Matplotlib库的使用与实战
Python数据可视化:Matplotlib库的使用与实战
5 0
|
13天前
|
数据可视化 BI 索引
【Python】—— matplotlib数据可视化
【Python】—— matplotlib数据可视化
|
13天前
|
数据可视化 Linux API
【Python】—— 如果使用matplotlib做数据可视化
【Python】—— 如果使用matplotlib做数据可视化
|
13天前
|
数据采集 Web App开发 数据可视化
Python爬虫技术与数据可视化:Numpy、pandas、Matplotlib的黄金组合
Python爬虫技术与数据可视化:Numpy、pandas、Matplotlib的黄金组合
|
13天前
|
数据可视化 数据挖掘 定位技术
Python 基于 Matplotlib 实现数据可视化(二)
Python 基于 Matplotlib 实现数据可视化(二)
31 0
|
13天前
|
数据可视化 数据挖掘 开发者
Python 基于 Matplotlib 实现数据可视化(一)
Python 基于 Matplotlib 实现数据可视化
26 0
|
13天前
|
搜索推荐 数据可视化 Python
Matplotlib图表中的数据标签与图例设置
【4月更文挑战第17天】这篇文章介绍了如何在Python的Matplotlib库中设置数据标签和图例,以增强图表的可读性和解释性。主要内容包括:使用`text`函数添加基本和自定义数据标签,以及自动和手动创建图例。图例的位置和样式可通过`loc`和相关参数调整。文章强调了数据标签和图例结合使用的重要性,提供了一个综合示例来展示实践方法。良好的图表设计旨在清晰有效地传达信息。
|
13天前
|
数据可视化 Python
Matplotlib动画效果制作:让数据可视化更生动
【4月更文挑战第17天】本文介绍了如何使用Python的Matplotlib库创建动态数据可视化动画。通过`animation`模块的`FuncAnimation`类,可以实现数据随时间变化的动态展示。基础动画制作涉及创建Figure对象、定义更新帧的函数,然后调用`FuncAnimation`。文章还分享了自定义动画速度、循环播放、添加标题和标签的方法,以及处理多个动态对象、应用条件逻辑和创建交互式动画的高级技巧。通过这些方法,可以提升数据可视化的生动性和吸引力。
|
13天前
|
数据采集 数据可视化 算法
利用Matplotlib进行复杂数据可视化
【4月更文挑战第17天】本文介绍了如何使用Python的Matplotlib库进行复杂数据可视化,包括数据预处理(如清洗、降维)、定制图表(选择图表类型、调整样式和布局、添加注释)以及交互式可视化。通过实例展示了如何使用PCA进行降维并绘制散点图,以及如何增强图表的可读性。文章强调了在复杂数据可视化中,预处理和定制化的重要性,并提到了交互式功能以提升用户体验。
|
13天前
|
数据可视化 搜索推荐 数据挖掘
Matplotlib入门:数据可视化基础
【4月更文挑战第17天】这篇文章是Matplotlib的入门教程,介绍了如何使用Python的Matplotlib库进行数据可视化。内容包括Matplotlib的基本概念、安装与导入、绘制线图、定制图形标题和标签、以及散点图、柱状图和饼图的绘制。通过本文,读者可以掌握数据可视化的基础,为进一步探索Matplotlib的高级功能打下基础。