目录

前言

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

(一)图例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. 【NET CORE微服务一条龙应用】第三章 认证授权与动态权限配置

    介绍 系列目录:[NET CORE微服务一条龙应用]开始篇与目录 在微服务的应用中,统一的认证授权是必不可少的组件,本文将介绍微服务中网关和子服务如何使用统一的权限认证 主要介绍内容为: 1.子服务如 ...

  2. JavaScript之深拷贝和浅拷贝

    前言 工作中会经常遇到操作数组.对象的情况,你肯定会将原数组.对象进行‘备份’当真正对其操作时发现备份的也发生改变,此时你一脸懵逼,到时是为啥,不是已经备份了么,怎么备份的数组.对象也会发生变化.如果 ...

  3. UVC 驱动调用过程与驱动框架的简单分析

    内核:Linux-3.4.2 驱动:drivers\media\video\uvc\uvc_driver.c UVC 驱动整体调用流程: /* 打开设备描述符 */ 1. open: uvc_v4l2 ...

  4. IdentityServer4 中文文档 -15- (快速入门)添加 JavaScript 客户端

    IdentityServer4 中文文档 -15- (快速入门)添加 JavaScript 客户端 原文:http://docs.identityserver.io/en/release/quicks ...

  5. 第一册:lesson eighty five。

    原文:Paris in the spring. A:Hello,Ken. B:Hi,George. A:Have you just been to the cinema? B:Yes,I have. ...

  6. .NET 中的序列化 & 反序列化

    序列化:将对象的状态信息及类型信息,转换为一种易于传输或存储形式(流,即字节序列)的过程. 下图为序列化过程图示,图片来自微软官方文档: 反序列化:与序列化相反,将流转换为对象的过程. 常用的有二进制 ...

  7. asp.net-基础-20180321

    C#与.NET的关系 C#不是语言,.net是平台.

  8. 为什么redis是单线程的?速度还这么快

    为什么说Redis是单线程的? 为什么redis是单线程的?速度还这么快

  9. python 反射机制在实际的应用场景讲解

    剖析python语言中 "反射" 机制的本质和实际应用场景一. 前言 def s1(): print("s1是这个函数的名字!") s = "s1&q ...

  10. java算法-单向队列

    队列是一种:先进先出,后进后出的数据结构 单项队列: 从前面删除元素,从后面插入元素,跟现实中排队是一样的道理 这里我们用指针移动位置的方法.因为数组删除元素,如果我们要跟现实中排队效果一样,就需要移 ...