目录
- 绘制正弦函数 绘制余弦函数
- 绘制多个子视图-简单
- 绘制多个子视图-升级
- 绘制圆
绘制正弦函数 绘制余弦函数
from matplotlib import pyplot as plt
import numpy as np
from matplotlib import rcParams
### 函数准备
x = np.linspace(0, 2 * np.pi)
y1 = np.sin(x)
y2 = np.cos(x)
### 设置图形的大小和像素
plt.figure(figsize = (20, 8), dpi = 80)
### 作图
line_s, = plt.plot(x, y1)
### 设置marker
line_s.set_marker('o')
### 设置线条颜色
line_s.set_color('red')
### 设置线条样式
line_s.set_ls('--')
### 设置线条粗细
line_s.set_lw(2)
### 设置线条透明度
line_s.set_alpha(0.7)
### 添加特殊点 法子1 坐标为实际坐标
plt.text(0, 0, s = 'sin(0) = 0', fontsize = 20)
### 添加特殊点 法子2 坐标为相对坐标
### plt.figtext(0.2, 0.5, s = 'sin(0) = 0',fontsize = 20)
### 设置marker 设置线条颜色 线条样式 线条粗细 线条透明度
### 作图
plt.plot(x, y2, marker='*',color = 'blue', ls=':', lw=2, alpha= 0.8)
'''
设置 x 轴的刻度替换为字符串 设置字体的旋转角度 颜色
'$$':固定写法 theta:希腊字母θ
\(反斜杠):表示转义
theta中加\\t 其中\t:表示tab,所以\\t
'''
a = ['$\\theta$','$\pi/2$','$\pi$','$3\pi/2$','$2\pi$']
### _ :每次绘图的时候,会有返回值,加_,表示不显示
_ = plt.xticks(np.arange(0, 2 * np.pi + 0.01, np.pi / 2),a, rotation = 90, color = 'blue', fontsize = 20)
### 设置y轴字体大小和 颜色
_ = plt.yticks(fontsize = 20, color = 'red')
### 设置x轴说明
plt.xlabel('x轴', fontsize = 30, color = 'red')
### 设置y轴说明
plt.ylabel('y轴', fontsize = 30, color = 'blue')
### 解决乱码 设置字体为楷体(这些字体你的电脑上必须要有)
rcParams['font.sans-serif']='kaiti'
### 设置轴的刻度为负数时不乱码
rcParams['axes.unicode_minus'] = False
### 绘制图例,best指定图例在合适的位置,ncol控制图例有几列 大小
plt.legend(['正弦函数', '余弦函数'], ncol = 2, loc = 'best', fontsize = 20)
### 图的标题 大小 颜色 位置
plt.title('基本操作', fontsize = 30, color = 'red', loc = 'center')
### 设置网格线的颜色和透明度 样式 粗细
plt.grid(color = 'black', alpha = 0.2, linestyle = 'dashed', lw = 1)
'''
添加注释
s:为要传的文本
xy:为注释点的实际坐标
xytext:文本内容的实际坐标
arrowprops:箭头样式
'''
plt.annotate(s='value is -1', xy=(np.pi, -1), xytext=(np.pi + 0.01, -0.88), arrowprops = {'arrowstyle':'->'}, fontsize = 20)
绘制多个子视图-简单
from matplotlib import pyplot as plt
import numpy as np
### 数据准备
x = np.linspace(0, np.pi*2)
y1 = np.sin(x)
y2 = np.cos(x)
### 设置图片大小,像素
plt.figure(figsize=(20, 8), dpi = 80)
### 设置大标题
plt.suptitle('大标题', color = 'red',fontsize=30)
'''绘制子视图
一行2列第1个图形
设置为图形背景色gray'''
ax1 = plt.subplot(1, 2, 1, facecolor = 'gray')
### 设置marker 设置线条颜色 线条样式 线条粗细 线条透明度
ax1.plot(x, y1, marker='*', color = 'red', lw = 2, ls = '--', alpha = 0.7)
### 设置子标题 标题大小 颜色 位置
ax1.set_title('子标题1',fontsize = 20, color = 'red', loc = 'center')
### 一行2列第2个图形
ax2 = plt.subplot(1, 2, 2)
ax2.plot(x, y2)
ax2. grid()
ax2.set_title('子标题2',fontsize = 20, color = 'blue', loc = 'center')
绘制多个子视图-升级
from matplotlib import pyplot as plt
import numpy as np
from matplotlib import rcParams
### 设置轴的刻度为负数时不乱码
rcParams['axes.unicode_minus'] = False
### 设置字体为楷体(这些字体你的电脑上必须要有)
rcParams['font.sans-serif'] = 'kaiti'
### 设置图片大小,像素
plt.figure(figsize=(20,8),dpi = 80)
### 绘制总标题
plt.suptitle('大标题', color = 'red',fontsize=30)
x = np.linspace(0, np.pi * 2)
y1 = np.sin(x)
y2 = np.cos(x)
### 绘制子视图
### 一行2列第1个图形
### 设置为图形背景色gray
ax = plt.subplot(1,2,1,facecolor = 'gray')
### 设置marker 设置线条颜色 线条样式 线条粗细 线条透明度
ax.plot(x,y1,marker='*',color = 'red',linewidth=1, ls='--',alpha=0.7)
### 设置网格
ax.grid()
### 设置子标题 标题大小 颜色 位置
ax.set_title('子标题1',fontsize = 20,color='blue',loc='center')
### 设置 x 轴的刻度替换为字符串 设置字体的旋转角度 颜色
a = ['$\\theta$','$\pi/2$','$\pi$','$3\pi/2$','$2\pi$']
### '$$':固定写法 theta:希腊字母θ
### \(反斜杠):表示转义
### theta中加\\t 其中\t:表示tab,所以\\t
### _ :每次绘图的时候,会有返回值,加_,表示不显示
_ = plt.xticks(np.arange(0, 2 * np.pi + 0.1, np.pi / 2), a, rotation = 90, fontsize = 20,color = 'red')
### 设置y轴字体 大小和 颜色
plt.yticks(fontsize = 20,color = 'blue')
### 设置x轴说明
plt.xlabel('x轴',fontsize = 30, color = 'blue')
### 设置y轴说明
plt.ylabel('y轴',fontsize = 30, color = 'red')
### 绘制图例,best指定图例在合适的位置,ncol控制图例有几列 大小
plt.legend(["正弦函数"],loc = 'best',ncol = 1,fontsize =20)
### ### 添加特殊点 法子1 坐标为实际坐标
plt.text(0, 0, s = 'sin(0) = 0',fontsize = 20)
### 添加注释
### s:为要传的文本
### xy:为注释点的实际坐标
### xytext:文本内容的实际坐标
### arrowprops:箭头样式
plt.annotate(s = 'value is -1', xy = (np.pi / 2, 1), xytext = (np.pi / 2 + 0.11, 1.06), arrowprops = {'arrowstyle':'->'},fontsize = 20)
### 一行2列第2个图形
ax = plt.subplot(1,2,2)
ax.plot(x,y1)
### 设置网格并指定网格线的颜色 透明度 样式 粗细
'''
网格线的样式
linestyle:'solid' | 'dashed'|'dashdot'|'dotted'
'''
ax.grid(color = 'red',alpha =0.4, linestyle = 'dotted',lw = 2)
ax.set_title('子标题2',fontsize = 20,color='violet',loc='center')
### 设置 x 轴的刻度替换为字符串 设置字体的旋转角度 颜色
a = ['0','pi/2','pi','2分之3派','2pi']
_ = plt.xticks(np.arange(0, 2 * np.pi + 0.1, np.pi / 2), a, rotation = 90, fontsize = 20,color = 'red')
绘制圆
各种参数的设置请看上边,上边基本该有的都有了
from matplotlib import pyplot as plt
import numpy as np
from matplotlib import rcParams
### 绘制圆
### 全局的字体设置
from matplotlib import rcParams
### 设置字体为楷体(这些字体你的电脑上必须要有)
rcParams['font.sans-serif'] = 'KaiTi'
### 设置轴的刻度为负数时不乱码
rcParams['axes.unicode_minus'] = False
angle = np.linspace(0, 2 * np.pi, 200)
x = np.sin(angle)
y = np.cos(angle)
### 设置圆形的格式
plt.figure(figsize=(5,5))
plt.plot(x,y)
### 设置x轴名字,字体大小,颜色
plt.xlabel('x',fontsize = 20,color = 'red')
### 设置y轴名字,字体大小,旋转角度
plt.ylabel('y',fontsize = 20,rotation= 10)
### 设置标题
### 字体带中文的时候,需要导包,然后进行全局设置
plt.title('Cicle圆',fontsize = 30)