matplotlib——基本设置

基本设置

import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
图的外观设置
plt.plot([1,2,3,4], [10, 22, 32, 6])    # 每一个轴传进去的都是一个列表

在这里插入图片描述

xlabel 和 ylabel 分别设定轴的名字 并通过 fontsize 属性设置字体大小
plt.xlabel('X', fontsize=12)            
plt.ylabel('Y', fontsize=20)
plt.plot([1,2,3,4], [10, 22, 32, 6])    # 每一个轴传进去的都是一个列表

在这里插入图片描述

给图设置标题名 网格 在指定点处显示文字

plt.xlabel('X', fontsize=12)            
plt.ylabel('Y', fontsize=20)
plt.title('YMY')
plt.grid(True)
plt.text(3.5, 30, 'qwert')
plt.plot([1,2,3,4], [10, 22, 32, 6])

在这里插入图片描述
在这里插入图片描述
grid()方法 第一个参数必填,后面的都可以省略


加注释

annotate 方法为图加注释:第一个参数代表注释内容; xy表示箭头最终指向的位置; xytext表示注释的位置; facecolor表示箭头颜色; shrink表示箭头缩放

plt.xlabel('X', fontsize=12)            
plt.ylabel('Y', fontsize=20)
plt.title('YMY')
plt.grid(True)
plt.text(3.5, 30, 'qwert')
plt.annotate('3333', xy=(2.0, 15), xytext=(2.5, 20), arrowprops=dict(facecolor='red', shrink=0.09))
plt.plot([1,2,3,4], [10, 22, 32, 6])

在这里插入图片描述

线条的样式

在这里插入图片描述
在这里插入图片描述

在 plot 方法中: ①linestyle属性设置线条的样式; ②color属性设置线条颜色; ③linewidth属性设置线条粗细; ④marker设置标记点 取值和linestyle一样; ⑤markerfacecolor设置标记点颜色 取值和color一样; ⑥markersize属性设置标记点大小 ⑦alpha属性设置线条的透明度 取值在0-1之间

plt.xlabel('X', fontsize=12)            
plt.ylabel('Y', fontsize=20)
plt.plot([1,2,3,4], [10, 22, 32, 6], '-.', color='r', linewidth=5)    

在这里插入图片描述

同时画多条线:①可以分别调用 plot 方法 需要几条线就调用几次 ②也可以在一个 plot 中画出多条线 不过这时候 线条样式和颜色要合并在一起

x = np.linspace(-5, 5)
y = np.sin(x)
plt.xlabel('X', fontsize=12)            
plt.ylabel('Y', fontsize=20)
plt.plot([1,2,3,4], [10, 12, 8, 6], 'r-.',
        x, y, 'b-', marker='o', markerfacecolor='y')    

在这里插入图片描述

如何同时画出多个不同的图呢?

plt.subplot(221)
plt.plot(x, y, color='b')

plt.subplot(222)
plt.plot(x, y, color='g')

plt.subplot(223)
plt.plot(x, y, color='r')

plt.subplot(224)
plt.plot(x, y, color='y')

在这里插入图片描述

解释一下含义
subplot中传入的数字的含义: 第一个2表示2行 第2个2表示两列 个位上的数字代表标号 前两位数字定义了排列形式

当然也可以不用全部填满自己定义的排列形式 标号按行优先标号

plt.subplot(221)
plt.plot(x, y, color='b')

plt.subplot(224)
plt.plot(x, y, color='r')

在这里插入图片描述

刻度设置

m = ['2022/3/18', '2022/3/19', '2022/3/20', '2022/3/21', '2022/3/22', '2022/3/23', '2022/3/24', 
     '2022/3/25', '2022/3/26', '2022/3/27', '2022/3/28','2022/3/29', '2022/3/30', '2022/3/31']
n = np.random.randint(200, 400, size=len(m))
plt.plot(m, n)

在这里插入图片描述

是不是发现 X轴的刻度太过拥挤了? 那如何设置轴的刻度

plt.xticks(range(1, len(m), 2))
plt.plot(m, n)

在这里插入图片描述

xticks()方法就是设置X轴刻度的 传入的第一个参数就表示将X轴的列表设置间隔输入, 但是还是太挤了 我们当然可以 把2再加大。这里还有一个方法 就是旋转

plt.xticks(range(1, len(m), 2), rotation=45)
plt.plot(m, n)

在这里插入图片描述

也可以为标签赋上新的值 不过数量应该与之前保持一致

plt.xticks(range(0, len(m), 2), rotation=45, labels=list(range(1, 8)), color='red')
plt.plot(m, n)

在这里插入图片描述


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值