首页 技术 正文
技术 2022年11月19日
0 收藏 920 点赞 3,633 浏览 2845 个字

目录

目录

前言

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

(一)图例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 周二

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,997
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,511
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,356
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,139
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,770
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,848