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

上一篇博客中说到,matplotlib中所有画图元素(artist)分为两类:基本型和容器型。容器型元素包括三种:figure、axes、axis。一次画图的必经流程就是先创建好figure实例,接着由figure去创建一个或者多个axes,然后通过axes实例调用各种方法来添加各种基本型元素,最后通过axes实例本身的各种方法亦或者通过axes获取axis实例实现对各种元素的细节操控。
本篇博客继续上一节的内容,展开介绍三大容器元素创建即通过三大容器可以完成的常用设置。

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'] # 中文字体支持
fig = plt.figure(figsize=(4,2), facecolor='grey') # 创建figure
fig.add_axes((0,0,1,1)) # 必须添加axes后才能显示
plt.show()

在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()

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

1.2.2 设置figure标题

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

1.2.3 添加文本

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

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()

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()

2 axes

axes可以认为是figure这张画图上的子图,因为子图上一般都是坐标图,所以我更愿意理解为轴域或者坐标系。

2.1 创建axes

一个figure可以有多个axes, 无论是pyplot模块还是figure实例内都定义有多种创建axes的方法。 (1) plt.axes()
plt.axes()是指pyplot模块中的axes()方法,该方法会在当前激活的figure中创建一个axes,并使创建好的axes处于激活状态。当传入的第一个位置参数为空时,该方法会创建一个占满整个figure的axes;通常我们可以传入一个tuple参数(left, botton, width, height)作为第一个位置参数,tuple中四个元素分别表示与figure左边框比例距离,边框宽度占figure宽度的比例,宽度比例,高度占figure高度的比例。通过这种方式添加axes时,matplotlib会自动创建一个axes,然后将创建好的axes按照给定的位置和size添加到figure中,最后返回一个axes的引用。

fig1 = plt.figure(figsize=(4,2), facecolor='grey')
ax1 = plt.axes((0.1, 0.1, 0.8, 0.7), facecolor='green')
fig2 = plt.figure(figsize=(4,2), facecolor='yellow')
ax2 = plt.axes((0.1, 0.1, 0.8, 0.8), facecolor='red') # 这个axes将会被覆盖在下面
plt.show()

注意,如果在相同区域添加axes,后面添加的axes会把前面添加的axes覆盖。

fig = plt.figure(figsize=(4,2), facecolor='grey')
ax1 = plt.axes((0.1, 0.1, 0.8, 0.8), facecolor='green')
ax2 = plt.axes((0.1, 0.1, 0.8, 0.7), facecolor='red') # 这个axes将会被覆盖在下面
plt.show()

(2) figure.add_axes()

figure.add_axes()方法的作用是将一个axes添加到figure中,这一方法可以传入一个已创建好的axes作为第一个参数,add_axes会将传入的axes添加到figure中,但这种情况使用不多。在大多数情况下,我们会如同上述在plt.axes()方法中那样传递一个tuple参数(left, botton, width, height)作为第一个位置参数。同样,如果在相同区域添加axes,后面添加的axes会把前面添加的axes覆盖。

fig = plt.figure(figsize=(4,2), facecolor='grey')
fig.add_axes((0.1, 0.1, 0.3, 0.7), facecolor='green') # 这个axes将会被覆盖在下面
fig.add_axes((0.5, 0.1, 0.3, 0.7), facecolor='red')
plt.show()

(3) plt.subplot与plt.subplots()

plt.subplot和plt.subplots()是在pyplot模块中定义的两个方法,两个方法都是将figure划分为多行多列的网格,然后添加axes,但功能和用法却有些许不同。

  • plt.subplot()

plt.subplot主要包括三个参数(nrows, ncols, index),分别表示行数、列数和索引,该方法会根据指定的行列数对figure划分为网格,让后在指定索引的网格中创建axes,并返回该axes的引用。索引是从1开始从左往右,从上到下递增,例如plt.subplot(2,2,4)表示将figure划分为两行两列的4个网格,并在第4个子网格中创建一个axes然后返回。注意,每一次调用plt.subplot()方法只会在指定索引的子网格中创建axes,而不是在所有子网格中都创建axes,如果需要在多个子网格中创建axes,那么就需要多次调用plt.subplot()指定不同的索引。另外,如果nrows, ncols, index三个参数都小于10,可以将这三个参数合并成一个3位整数来写,例如plt.subplot(2,2,4)与plt.subplot(224)是完全等效的。

fig = plt.figure(figsize=(4,4), facecolor='grey')
ax1 = plt.subplot(221,facecolor='green')
ax2 = plt.subplot(224,facecolor='red')
plt.show()

  • plt.subplots()

与plt.subplot()不同的是,plt.subplots()会重新创建一个figure,然后将创建好的figure按照指定的行列数划分为网格,并在每一个子网格中各创建一个axes,最终同时返回figure和所有子网格中axes组成的numpy数组中。

fig, axes = plt.subplots(2,2,facecolor='grey')
fig.suptitle('figure title')
print(type(axes))
axes[0,0].set_facecolor('green')
axes[1,1].set_facecolor('red')
plt.show()

plt.subplots()还有一对参数sharex, sharey用于设置是否共享x轴或y轴,这对参数有取值可以使bool型或'none', 'all', 'row', 'col'这4个字符串中的一个,分别有以下含义:

  • False 和 'none'表示不共享,任何子图中的x轴或y轴都是相互独立的;
  • True 和 'all'表示所有子图共享x轴或y轴;
  • 'row' 表示同一行的子图共享x轴或y轴;
  • 'col' 表示同一列的子图共享x轴或y轴;
fig, axes = plt.subplots(2,2,sharex=True,sharey=True,facecolor='grey')
fig.suptitle('figure title')
axes[0,0].set_facecolor('green')
axes[1,1].set_facecolor('red')
plt.show()

(4) figure.add_subplot()与figure.subplots()

figure.add_subplot与上文中介绍过的plt.subplot()无论是功能还是使用方法上都是几乎一样的,唯一区别就是plt.subplot()的目标是在当前激活的figure,而figure.add_subplot()是调用add_subplot()方法的figure。

fig = plt.figure(figsize=(4,4), facecolor='grey')
ax1 = fig.add_subplot(221,facecolor='green')
ax2 = fig.add_subplot(224,facecolor='red')
plt.show()

figure.subplots()的功能、用法又与上文中介绍过的plt.subplots()很相似,区别在于figure.subplots()不会重新创建一个figure,而是对当前的figure进行划分网格并在每一个网格中都创建一个axes。

fig = plt.figure(facecolor='grey')
axes = fig.subplots(2,2)
axes[0, 0].set_facecolor('green')
axes[1, 1].set_facecolor('red')
plt.show()

2.2 axes的常用设置

axes是matplotlib作图中众多元素的核心,可以说,大多数的设置都可以通过axes来完成。

2.2.1 设置标题

fig = plt.figure(facecolor='grey')
fig.suptitle("figure 标题", color='red')
ax1 = fig.add_subplot(121)
ax2 = fig.add_subplot(122)
ax1.set_title(' 图 1') # 设置标题
ax2.set_title(' 图 2')
plt.show()

2.2.2 设置图例

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))
line2, = axes.plot(x, np.cos(x))
axes.legend([line1, line2],['正弦', '余弦'])
plt.show()

2.2.3 设置坐标轴名称

fig = plt.figure(figsize=(4,1))
axes = fig.add_axes((0,0,1,1))
axes.set_xlabel('x轴', fontsize=15)
axes.set_ylabel('y轴', fontsize=15, color='red')
plt.show()

2.2.4 设置坐标轴范围

fig = plt.figure(figsize=(6,2))
axes = fig.add_axes((0,0,0.8,1))
x = np.linspace(-3, 5, 1000)
line1, = axes.plot(x, np.sin(x))
axes.set_xlim((-3,5)) # 设置横坐标范围
axes.set_ylim((-3,3)) # 设置纵坐标范围
plt.show()

2.2.5 隐藏边框

fig = plt.figure(figsize=(6,2))
axes = fig.add_axes((0,0,0.8,1))
x = np.linspace(-10, 10, 1000)
line1, = axes.plot(x, np.sin(x))
axes.set_xlim((-10,10)) # 设置横坐标范围
axes.set_ylim((-2,2)) # 设置纵坐标范围
axes.spines['right'].set_color('none') #隐藏掉右边框线
axes.spines['top'].set_color('none') #隐藏掉左边框线
plt.show()

2.2.6 显示网格

fig = plt.figure(figsize=(6,2))
axes = fig.add_axes((0,0,0.8,1))
x = np.linspace(-10, 10, 1000)
line1, = axes.plot(x, np.sin(x))
axes.set_xlim((-10,10)) # 设置横坐标范围
axes.set_ylim((-2,2)) # 设置纵坐标范围
axes.grid(True)
plt.show()

2.2.7 添加注释

fig = plt.figure(figsize=(6,2))
axes = fig.add_axes((0,0,0.8,1))
x = np.linspace(-10, 10, 1000)
line1, = axes.plot(x, np.sin(x))
axes.set_xlim((-10,10)) # 设置横坐标范围
axes.set_ylim((-2,2)) # 设置纵坐标范围
axes.grid(True)
axes.annotate('原点', xy=(0, 0), # xy是指向点的坐标
  xytext=(2.5, -1.5), # xytext注释文字的坐标
  arrowprops=dict(facecolor='red'))
plt.show()

3 axis

axis在matplotlib中是一种类似于坐标轴的概念,负责处理轴标签、刻度线、刻度标签、网格线的绘制。在大多数情况下,axis我们手动创建,在创建axes时会一并创建axis,通过axes的实例对象即可调用axes内的axis实例。通过axis实例,我们可以实现更加多样化、细微的图标操作。
通过axes实例可以调用get_xaxis()方法获取axis实例,然后实现对label等对象的操作。

3.1 axis常用设置

3.1.1 设置坐标轴名称

fig = plt.figure(figsize=(4,2), facecolor='grey')
axes = fig.add_axes((0, 0,1,1))

# x轴
axes.get_xaxis().get_label().set_text('x axis')
axes.get_xaxis().get_label().set_color('red')
axes.get_xaxis().get_label().set_fontsize(16)
# y轴
axes.yaxis.get_label().set_text('y axis')
axes.yaxis.get_label().set_color('blue')
axes.yaxis.get_label().set_fontsize(16)
plt.show()

3.1.2 设置坐标轴刻度标签样式

fig = plt.figure(figsize=(4,2), facecolor='grey')
axes = fig.add_axes((0, 0,1,1))

# 设置x轴刻度标签
for tl in axes.get_xaxis().get_ticklabels():
 tl.set_color('red')
 tl.set_rotation(45)
 tl.set_fontsize(16)

plt.show()

3.1.3 设置坐标轴刻度位置

import matplotlib.ticker as ticker

# Fixing random state for reproducibility
np.random.seed(19680801)

fig, ax = plt.subplots()
ax.plot(100*np.random.rand(20))

formatter = ticker.FormatStrFormatter('$%1.2f')
ax.yaxis.set_major_formatter(formatter)

for tick in ax.yaxis.get_major_ticks():
 tick.label1.set_visible(False)
 tick.label2.set_visible(True)
 tick.label2.set_color('green')

plt.show()

3.1.4 设置坐标轴位置

fig = plt.figure(figsize=(6,2))
axes = fig.add_axes((0,0,0.8,1))
x = np.linspace(-10, 10, 1000)
line1, = axes.plot(x, np.sin(x))
axes.set_xlim((-10,10)) # 设置横坐标范围
axes.set_ylim((-2,2)) # 设置纵坐标范围
axes.spines['right'].set_color('none') #隐藏掉右边框线
axes.spines['top'].set_color('none') #隐藏掉左边框线
axes.xaxis.set_ticks_position('bottom') #设置坐标轴位置
axes.yaxis.set_ticks_position('left') #设置坐标轴位置
axes.spines['bottom'].set_position(('data', 0)) #绑定坐标轴位置,data为根据数据自己判断
axes.spines['left'].set_position(('data', 0))
plt.show()

4 总结

本文主要介绍matplotlib图表的三种容器元素:figure、axes、axis。figure是最底层的容器,相当于一张画布,在画布上,我们可以画多个axes,axes就是figure上的子图,每个axes都是一张独立的图表,每个axes包含多个axis,通过axis我们可以实现对图表更多细节上的操作。
理解了matplotlib图表三个层次的布局,我们就可以通过figure -> axes --> axis的流程完成图表在宏观层面的创建。在后续的博客中,将会继续介绍对图表更多更加细节化的设置以及如何画各种不同的统计图表。

参考

官方文档:https://matplotlib.org/tutorials/intermediate/artists.html#sphx-glr-tutorials-intermediate-artists-py

以上就是python Matplotlib数据可视化(2):详解三大容器对象与常用设置的详细内容,更多关于Matplotlib数据可视化(2):三大容器对象与常用设置的资料请关注我们其它相关文章!

(0)

相关推荐

  • python Matplotlib数据可视化(1):简单入门

    1 matplot入门指南 matplotlib是Python科学计算中使用最多的一个可视化库,功能丰富,提供了非常多的可视化方案,基本能够满足各种场景下的数据可视化需求.但功能丰富从另一方面来说也意味着概念.方法.参数繁多,让许多新手望而却步. 据我了解,大部分人在对matplotlib接触不深时都是边画图边百度,诸如这类的问题,我想大家都似曾相识:Python如何画散点图,matplotlib怎么将坐标轴标签旋转45度,怎么设置图例字体大小等等.无论针对哪一个问题,往往都有多种解决方法,搜索

  • python matplotlib库的基本使用

    matplotlib简介 如果你在大学里参加过数学建模竞赛或者是用过MATLAB的话,相比会对这一款软件中的画图功能印象深刻.MATLAB可以做出各种函数以及数值分布图像非常的好用和方便.如果你没用过呢也没关系,知道这么回事就好了.MATLAB虽然好用,但毕竟是收费软件,而且相比于MATLAB,很多人更喜欢Python的语法. 所以呢MATLAB就被惦记上了,后来有大神仿照MATLAB当中的画图工具,也在Python当中开发了一个类似的作图工具.这也就是我们今天这篇文章要讲的matplotlib

  • python matplotlib绘制三维图的示例

    作者:catmelo 本文版权归作者所有 链接:https://www.cnblogs.com/catmelo/p/4162101.html 本文参考官方文档:http://matplotlib.org/mpl_toolkits/mplot3d/tutorial.html 起步 新建一个matplotlib.figure.Figure对象,然后向其添加一个Axes3D类型的axes对象. 其中Axes3D对象的创建,类似其他axes对象,只不过使用projection='3d'关键词. impo

  • Python matplotlib图例放在外侧保存时显示不完整问题解决

    上次说到的,使用如下代码保存矢量图时,放在外侧的图例往往显示不完整: import numpy as np import matplotlib.pyplot as plt fig, ax = plt.subplots() x1 = np.random.uniform(-10, 10, size=20) x2 = np.random.uniform(-10, 10, size=20) #print(x1) #print(x2) number = [] x11 = [] x12 = [] for i

  • python使用matplotlib:subplot绘制多个子图的示例

    数据可视化的时候,常常需要将多个子图放在同一个画板上进行比较,python 的matplotlib包下的subplot可以帮助完成子功能. part1 绘制如下子图 import matplotlib.pyplot as plt plt.figure(figsize=(6,6), dpi=80) plt.figure(1) ax1 = plt.subplot(221) plt.plot([1,2,3,4],[4,5,7,8], color="r",linestyle = "-

  • python Matplotlib模块的使用

    一.Matplotlib简介与安装 Matplotlib也就是Matrix Plot Library,顾名思义,是Python的绘图库.它可与NumPy一起使用,提供了一种有效的MATLAB开源替代方案.它也可以和图形工具包一起使用,如PyQt和wxPython. 安装方式:执行命令 pip install matplotlib 一般常用的是它的子包PyPlot,提供类似MATLAB的绘图框架. 二.使用方法 1.绘制一条直线 y = 3 * x + 4,其中 x 在(-2, 2),取100个点

  • 详解python安装matplotlib库三种失败情况

    (可能只有最后一句命令有用,可能全篇都没用) (小白方法,可能只适用于本人情况) 安装matplotlib时,出现的三种失败情况 1.read timed out 一开始我在pycharm终端使用pip install matplotlib时,出现的是下图所示情况,大致情况是安装时间太长,所以当时我用了清华镜像,将原来的命令改成了pip install -i https://mirrors.ustc.edu.cn/pypi/web/simple/ matplotlib,速度是上来了,但是还是安装

  • matplotlib教程——强大的python作图工具库

    matplotlib简介 如果你在大学里参加过数学建模竞赛或者是用过MATLAB的话,相比会对这一款软件中的画图功能印象深刻.MATLAB可以做出各种函数以及数值分布图像非常的好用和方便.如果你没用过呢也没关系,知道这么回事就好了.MATLAB虽然好用,但毕竟是收费软件,而且相比于MATLAB,很多人更喜欢Python的语法. 所以呢MATLAB就被惦记上了,后来有大神仿照MATLAB当中的画图工具,也在Python当中开发了一个类似的作图工具.这也就是我们今天这篇文章要讲的matplotlib

  • python Matplotlib数据可视化(2):详解三大容器对象与常用设置

    上一篇博客中说到,matplotlib中所有画图元素(artist)分为两类:基本型和容器型.容器型元素包括三种:figure.axes.axis.一次画图的必经流程就是先创建好figure实例,接着由figure去创建一个或者多个axes,然后通过axes实例调用各种方法来添加各种基本型元素,最后通过axes实例本身的各种方法亦或者通过axes获取axis实例实现对各种元素的细节操控. 本篇博客继续上一节的内容,展开介绍三大容器元素创建即通过三大容器可以完成的常用设置. 1 figure 1.

  • Python pyecharts数据可视化实例详解

    目录 一.数据可视化 1.pyecharts介绍 2.初入了解 (1).快速上手 (2).简单的配置项介绍 3.案例实战 (1).柱状图Bar (2).地图Map (3).饼图Pie (4).折线图Line (5).组合图表 二.案例数据获取 总结 一.数据可视化 1.pyecharts介绍 官方网址:https://pyecharts.org/#/zh-cn/intro 概况: Echarts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,使用JavaScript实现的.

  • Python股票数据可视化代码详解

    目录 数据准备 阿里巴巴 谷歌 苹果 腾讯 亚马逊 Facebook 数据可视化 查看各个公司的股价平均值 查看各公司股价分布情况 股价走势对比 总结 import numpy as np import pandas as pd from pandas_datareader import data import datetime as dt 数据准备 ''' 获取国内股票数据的方式是:"股票代码"+"对应股市"(港股为.hk,A股为.ss) 例如腾讯是港股是:070

  • Python Matplotlib数据可视化模块使用详解

    目录 前言 1 matplotlib 开发环境搭建 2 绘制基础 2.1 绘制直线 2.2 绘制折线 2.3 设置标签文字和线条粗细 2.4 绘制一元二次方程的曲线 y=x^2 2.5 绘制正弦曲线和余弦曲线 3 绘制散点图 4 绘制柱状图 5 绘制饼状图 6 绘制直方图 7 绘制等高线图 8 绘制三维图 总结 本文主要介绍python 数据可视化模块 Matplotlib,并试图对其进行一个详尽的介绍. 通过阅读本文,你可以: 了解什么是 Matplotlib 掌握如何用 Matplotlib

  • Python数据可视化:泊松分布详解

    一个服从泊松分布的随机变量X,表示在具有比率参数(rate parameter)λ的一段固定时间间隔内,事件发生的次数.参数λ告诉你该事件发生的比率.随机变量X的平均值和方差都是λ. 代码实现: # Poisson分布 x = np.random.poisson(lam=5, size=10000) # lam为λ size为k pillar = 15 a = plt.hist(x, bins=pillar, normed=True, range=[0, pillar], color='g',

  • Python疫情确诊折线图实现数据可视化实例详解

    目录 案例描述 实现步骤 一.导入模块 二.读取文件内容 三.json转换python 四.获取需要用到的数据 五.生成图表 六.关闭文件 案例描述 根据可参考数据,实现对疫情确诊人数数据的可视化. 利用json转换工具,将数据格式化,需要取出下面两部分的内容. 可视化效果图: 实现步骤 一.导入模块 导入可能用到的模块 import json from pyecharts.charts import Line 二.读取文件内容 打开相应的文件,使用变量us_data保存文件的内容 f_us =

  • Python Matplotlib 实现3D绘图详解

    目录 第一个三维绘图程序 3D散点图 3D等高线图 3D线框图 3D曲面图 最初开发的 Matplotlib,仅支持绘制 2d 图形,后来随着版本的不断更新, Matplotlib 在二维绘图的基础上,构建了一部分较为实用的 3D 绘图程序包,比如 mpl_toolkits.mplot3d,通过调用该程序包一些接口可以绘制 3D散点图.3D曲面图.3D线框图等 mpl_toolkits 是 Matplotlib 的绘图工具包. 第一个三维绘图程序 下面编写第一个三维绘图程序. 首先创建一个三维绘

  • Python实现地图可视化案例详解

    目录 ​前言 一.pyecharts Map Geo Bmap 二.folium 结 语 ​前言 Python的地图可视化库很多,Matplotlib库虽然作图很强大,但只能做静态地图.而我今天要讲的是交互式地图库,分别为pyecharts.folium,掌握这两个库,基本可以解决你的地图可视化需求. 一.pyecharts 首先,必须说说强大的pyecharts库,简单易用又酷炫,几乎可以制作任何图表.pyecharts有v0.5和v1两个版本,两者不兼容,最新的v1版本开始支持链式调用,采用

  • Python Matplotlib绘制多子图详解

    通过获取子图的label和线型来合并图例 注意添加label #导入数据(读者可忽略) pre_lp=total_res#组合模型 true=diff1[-pre_day:]#真实值 pre_ph=results_data["yhat"]#prophet pre_lstm=reslut#lstm pre_ari=data_ari['data_pre']#arima #设置中文字体 rcParams['font.sans-serif'] = 'kaiti' # 生成一个时间序列 (读者可

  • Python matplotlib seaborn绘图教程详解

    目录 一.seaborn概述 二.数据整理 01折线图 02柱形图 03直方图 三.绘图 01设定调色盘 02柱状图 03技术图 04点图 05箱型图 06小提琴图 一.seaborn概述 Seaborn是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,在大多数情况下使用seaborn就能做出很具有吸引力的图.详情请查阅官网:seaborn 二.数据整理 import seaborn as sns import numpy as np import matplotl

随机推荐