python-绘图相关设置(一)

主要使用matplotlib库绘图,涉及坐标轴字体(大小、科学计数法、格式)、画布(大小,边距)、嵌入式子图、图例、。

import matplotlib.pyplot as plt

matplotlib官网链接

1.画布

绘图的第一步是创建画布。 参考博文
(1)plt.figure() --创建一个画布或激活一个已经存在的画布(通过指定num参数)。一般在此处仅指定num、figsize参数。

plt.figure(	num=None,  # num为画布编号,可以是int或str。int指代Figure.number,str指代图片的label。
			figsize=None, # 默认为(6.4,4.8),(宽,高),单位英寸
			dpi=None, *, # 默认100,dots-per-inch.
			facecolor=None, # 背景颜色,默认白色
			edgecolor=None, # 边界颜色,默认白色
			frameon=True, # 默认True,如果False,表示不显示图框
			clear=False, # 默认为False,如果为True,则清空画布
			**kwargs) 
# 但会绘图元素的顶层容器。

(2)plt.subplots()–创建多个子图(也可以就一个子图)
plt.subplots()也是创建画布的一种方法,返回fig,axes
fig指的是整个画布,axes是创建的子图

plt.subplots(nrows=1, # 子图行数量
			ncols=1, # 子图列数量
			figsize=None, # 默认为(6.4,4.8),(宽,高),单位英寸
			sharex=False,  # 共享x轴,默认False
			sharey=False,  # 共享y轴,默认False
			)
# 或者
fig = plt.figure()
fig.subplots()

例子

import matplotlib.pyplot as plt
import numpy as np
fig,axes = plt.subplots(3,2)
print(np.shape(axes)) #输出(3,2)
plt.show()

输出结果:
在这里插入图片描述
(3)plt.subplot()–创建单个子图
子图的索引 (nrows, ncols, index)
返回当前ax

import matplotlib.pyplot as plt
import numpy as np
x = [0,1,2,3,4,5]
y1 = x
y2 = [-i for i in x]
y3 = [i*i*i for i in x]
plt.subplots(3,2)
ax = plt.subplot(3,2,1)
ax.plot(x,y1)
ax = plt.subplot(3,2,2)
ax.plot(x,y2)
ax = plt.subplot(3,2,5)
ax.plot(x,y3)
plt.show()

在这里插入图片描述

2. plt.rcParam参数

rcParam是matplotlib全局参数配置的方法,参考官网介绍

#如下两种用法等效,后续介绍以第二种为例
plt.rc('lines', linewidth=2, color='r')
# 等效于
plt.rcParams['lines.linewidth'] = 2
plt.rcParams['lines.color'] = 'r'

常见的配置如下:

plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号
plt.rcParams['font.size'] = fontSize  # 坐标轴字体大小
plt.rc('font', family='Times New Roman') # 指定默认字体
plt.rcParams['font.sans-serif'] = ['STSong']  # 指定字体

3.1 字体配置

font family介绍

3.1 字体设置失败场景

需要单独指定

from matplotlib.font_manager import FontProperties
font=FontProperties(fname='C:\Windows\Fonts\simsun.ttc',size=10.5) 
# fname是指字体库的搜索路径,
# size指字体的大小,
# 后续使用通过font变量指代该字体
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值