目录

前言

本章节将讲一下三个内容,图例,网格,背景

(一)图例legend

1.默认不带参数的图例

(1)说明:

默认情况下,是自适应的放在图例的位置,需要在绘图的时候,添加Label标识。

在使用plt.legend()显示图例

(2)源代码:

# 导入模块
import matplotlib.pyplot as plt
import numpy as np # 数据
x = np.linspace(-5, 5, 50)
y1 = x
y2 = x**2
y3 = x**(1/2) # 绘图
plt.plot(x, y1, "--", label="y1")
plt.plot(x, y2, "o-", label="y2")
plt.plot(x, y3, "-.", label="y3") # 展示图例
plt.legend() # 展示
plt.show()

(3)展示效果

2.添加参数的图例

(1)可选参数

参数 说明 默认值
loc=int\string 图例所在的位置 0
fontsize=int\string 图例的文字大小 当前文字的大小
facecolor='b' 图例的背景色 'w'
edgecolor='b' 图例的边框颜色 'w'
title=string 图例的标题 None
shadow=bool 是否显示图例的阴影 False
fancybox=bool 是否显示圆角 False
framealpha=float 图例的透明度 None
  1. 位置的参数值:可以使用字符串与数字

  1. 文字的大小值:'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large',或者直接用数字表示大小。
  2. 透明度的范围:0.0~1.0,1.0是不透明,0.0是全透明,从0.0到1.0越来越不透明。

(2)源代码:

# 导入模块
import matplotlib.pyplot as plt
import numpy as np # 数据
x = np.linspace(-5, 5, 50)
y1 = x
y2 = x**2
y3 = x**(1/2) # 绘图
plt.plot(x, y1, "--", label="y1")
plt.plot(x, y2, "o-", label="y2")
plt.plot(x, y3, "-.", label="y3") # 展示图例
plt.legend(loc='upper right',
fancybox=True,
title="l am legend",
edgecolor='r',
shadow=True,
fontsize='x-large',
facecolor='b',
framealpha=0.3) # 展示
plt.show()

(3)输出效果:

3.将图例移动到框外

(1)说明:

bbox_to_anchor=(x, y) 可以移动到任意位置

x,y是float:0.0~1.0,表示是x,y轴的比例,x:左->右增大, y:下->上 增大

并且结合loc来确定位置。

(2)源代码:

# 导入模块
import matplotlib.pyplot as plt
import numpy as np # 数据
x = np.linspace(-5, 5, 50)
y1 = x
y2 = x**2
y3 = x**(1/2) # 绘图
plt.plot(x, y1, "--", label="y1")
plt.plot(x, y2, "o-", label="y2")
plt.plot(x, y3, "-.", label="y3") # 展示图例
plt.legend(bbox_to_anchor=(1, 0.8), loc=3) # 展示
plt.show()

(3)输出效果:

(二)网格grid

1.说明

语法:plt.grid([可选参数])

可选参数 说明 默认值
b=bool 是否显示网格 Fales
color='r' 网线的颜色 'w'
linestyle='--' 网格的线形 ‘-’
linewidth=1 网格的线宽 1
alpha=0.3 网线的透明度0.0~1.0 1
axis={"both",'x',"y"} 表示在哪些方向轴上画网线,x轴,y轴 "both"
which={"both","major","minor"} 表示在哪些刻度上画网线,主刻度,还是小刻度 ”both"

2.源代码:

# 导入模块
import matplotlib.pyplot as plt
import numpy as np # 数据
x = np.linspace(-5, 5, 50)
y = x**2 # 绘图
plt.plot(x, y) # 设置网格线
plt.grid(b=True,
color='r',
linestyle='--',
linewidth=1,
alpha=0.3,
axis='x',
which="major") # 展示
plt.show()

3.输出效果

(三)背景axses

1.设置全局的背景色:

(1)说明:

  1. 设置figure窗体的颜色:plt.rcParams['figure.facecolor'] = 'color'
  2. 设置axes绘图区的颜色:plt.rcParams['axes.facecolor'] = 'color'

(2)源代码:

# 导入模块
import matplotlib.pyplot as plt
import numpy as np # 数据
x = np.linspace(-5, 5, 50)
y = x**2 # =====设置背景====
# 设置figure窗体的颜色
plt.rcParams['figure.facecolor'] = 'b'
# 设置axes绘图区的颜色
plt.rcParams['axes.facecolor'] = 'g' # 绘图
plt.plot(x, y) # 展示
plt.show()

(3)输出效果:

2.设置局部的背景色

(1)说明:

  1. 获取ax对象:ax = plt.gca()

  2. 设置ax区域背景颜色:ax.patch.set_facecolor("gray")

  3. 设置ax区域背景颜色透明度:ax.patch.set_alpha(0.5)

(2)源代码:

# 导入模块
import matplotlib.pyplot as plt
import numpy as np # 数据
x = np.linspace(-5, 5, 50)
y = x**2 # 绘图
plt.plot(x, y) # =====设置背景====
# 得到ax对象
ax = plt.gca() # 设置ax区域背景颜色
ax.patch.set_facecolor("gray") # 设置ax区域背景颜色透明度
ax.patch.set_alpha(0.5) # 展示
plt.show()

(3)输出效果:

作者:Mark

日期:2019/03/12 周二

4.11Python数据处理篇之Matplotlib系列(十一)---图例,网格,背景的设置的更多相关文章

  1. 4.7Python数据处理篇之Matplotlib系列(七)---matplotlib原理分析

    目录 目录 前言 (一)总框架分析 (二)函数式的绘图 1.说明: 2.函数绘图的缺优点 3.绘图类的函数 4.操作类的函数 5.例子: (三)面向对象式的绘图 1.基本概念 2.基本对象 3.面向对 ...

  2. 4.14Python数据处理篇之Matplotlib系列(十四)---动态图的绘制

    目录 目录 前言 (一)需求分析 (二)随机数的动态图 1.思路分析: 2.源代码: 2.输出效果: 目录 前言 学习matplotlib已经到了尾声,没有必要再继续深究下去了,现今只是学了一些基础的 ...

  3. 4.13Python数据处理篇之Matplotlib系列(十三)---轴的设置

    目录 目录 前言 (一)设置轴的范围 1.同时对于x,y轴设置 2.分别对与x,y轴的设置 (二)设置刻度的大小 1.普通的刻度设置 2.添加文本的刻度设置 3.主副刻度的设置 (三)设置轴的数据 1 ...

  4. 4.12Python数据处理篇之Matplotlib系列(十二)---绘图风格的介绍

    目录 目录 前言 (一)不同风格 1.说明: 2.使用: 3.代码使用: (二)例子演示 1.dark_background 2.bmh 3.fivethirtyeight 4.ggplot 5.gr ...

  5. 4.10Python数据处理篇之Matplotlib系列(十)---文本的显示

    目录 目录 前言 (一)中文显示 ==1.全局的设置== ==2.局部的设置== (二)文本显示 目录 前言 今天我们来学习一下文本的显示 (一)中文显示 ==1.全局的设置== (1)说明: 在ma ...

  6. 4.9Python数据处理篇之Matplotlib系列(九)---子图分布

    目录 目录 前言 (一)subplot()方法 ==1.语法说明== ==2.源代码== ==3.输出效果== (二)subplot2grid方法 ==1.语法说明== ==2.源代码== ==3.展 ...

  7. 4.8Python数据处理篇之Matplotlib系列(八)---Figure的学习

    目录 目录 前言 (一)figure()方法的定义 (二)figure()方法的参数 (三)figure()方法的例子 1.多窗体绘图: 2.窗口得分别率 目录 前言 今天我们来学习一下plt.fig ...

  8. 4.6Python数据处理篇之Matplotlib系列(六)---plt.hist()与plt.hist2d()直方图

    目录 目录 前言 (一)直方图 (二)双直方图 目录 前言 今天我们学习的是直方图,导入的函数是: plt.hist(x=x, bins=10) 与plt.hist2D(x=x, y=y) (一)直方 ...

  9. 4.5Python数据处理篇之Matplotlib系列(五)---plt.pie()饼状图

    目录 目录 前言 (一)简单的饼状图 (二)添加阴影和突出部分 (三)显示图例和数据标签: 目录 前言 饼状图需要导入的是: plt.pie(x, labels= ) (一)简单的饼状图 (1)说明: ...

随机推荐

  1. Perl的子程序

    子程序(subroutine) perl中的子程序其实就是自定义函数.它使用sub关键字开头,表示声明一个子程序 子程序名称有独立的名称空间,不会和其它名称冲突 Perl中的子程序中可以定义.引用.修 ...

  2. [转]angular官网 及 Ant Design of Angular

    https://angular.io/cli https://www.angular.cn/guide/quickstart https://ng.ant.design/docs/introduce/ ...

  3. 应用TortoiseGit为github账号添加SSH keys,解决pull总是提示输入密码的问题

    每次同步或者上传代码到githun上的代码库时,需要每次都输入用户名和密码,这时我们设置一下SSH key就可以省去这些麻烦了.若果使用TortoiseGit作为github本地管理工具,Tortoi ...

  4. Java并发编程学习:volatile关键字解析

    转载:https://www.cnblogs.com/dolphin0520/p/3920373.html 写的非常棒,好东西要分享一下 Java并发编程:volatile关键字解析 volatile ...

  5. canvas-a12ellipse.html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. cf1132E. Knapsack(搜索)

    题意 题目链接 Sol 看了status里面最短的代码..感觉自己真是菜的一批..直接爆搜居然可以过?..但是现在还没终测所以可能会fst.. #include<bits/stdc++.h> ...

  7. 中文代码示例之Electron桌面应用开发初体验

    参考: 打造你的第一个 Electron 应用 首先运行下面在目录下创建package.json: $ npm init 去掉了一些无关项后内容如下: { "name": &quo ...

  8. centos6 自带python2.6升级python2.7+

    centos6系统自带Python为2.6.6版本,升级搞版本操作如下(python2-python3都一样) 1.下载需要升级的python包 官方下载地址:https://www.python.o ...

  9. html之多行文本textarea 及下拉框select(12)

    1.多行文本 多行文本使用textarea标签,默认值需要写在中间,和input标签不同,name属性用于后台获取数据(request.POST.get(meno)) <body> < ...

  10. Android为TV端助力 转载:内存泄露与内存溢出的区别

    内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory:比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出. ...