matplotlib------折线图的绘制

1.绘制折线图

import matplotlib.pyplot as plt
import numpy as np
#1.绘制折线图
#设置中文字体
plt.rcParams['font.sans-serif']=['Simhei']
# 显示符号
plt.rcParams['axes.unicode_minus']=False

#创建画布 figsize:画布大小(英寸)
plt.figure(figsize=(15,10),dpi=80)
#取点(用等差数列取点)
x=np.linspace(-5,5,100)
y=x**2

#指定x轴和y轴的范围
plt.xlim(-5,5)
plt.ylim(0,10)

#设置x轴和y轴的刻度
plt.xticks([-2,-4,0,2,4])
plt.yticks([0,5,10])

#设置x和y轴名称
plt.xlabel('x轴')
plt.ylabel('y轴')

#添加图形的标题
plt.title('一元二次函数')

#添加网格线
plt.grid()

#linewidth为线宽  linestyle为线样式   marker为线上点的形状   markersize线上点的大小
plt.plot(x,y,c='red',linestyle='-',linewidth=4,marker='*',markersize=10,label='y=x**2')
plt.legend(loc='upper right')#把标签y=x**2放到右上方
plt.savefig('a.jpg'
plt.show()

在这里插入图片描述

2.绘制多个图

#画出y=sinx 和y=cosx的图像
import matplotlib.pyplot as plt
import numpy as np
#创建画布
plt.figure(figsize=(15,10),dpi=80)
#取x点(-π,π)
x=np.linspace(-np.pi,np.pi,100)
#取y点
y1,y2=np.sin(x),np.cos(x)


plt.xlim(-np.pi-1,np.pi+1)
plt.ylim(-1.2,1.2)

plt.xticks([-np.pi,-np.pi/2,0,np.pi/2,np.pi])
plt.yticks(np.linspace(-1,1,5))

plt.plot(x,y1,label='y=sin(x)')
plt.plot(x,y2,label='y=cos(x)')
plt.legend(loc='upper right')
plt.savefig('sin(x)和cos(x)')
plt.show()

在这里插入图片描述

3.绘制子图

import matplotlib.pyplot as plt
import numpy as np
import sympy as sp

def set_axis():
    # #设置坐标轴
    ax = plt.gca()
    # #去掉顶部和右边的坐标线
    ax.spines['right'].set_color('none')
    ax.spines['top'].set_color('none')
    # #将下面的轴线移到x=0位置
    ax.xaxis.set_ticks_position('bottom')
    ax.spines['bottom'].set_position(('data', 0))
    # #将下面的轴线移到y=0位置
    ax.yaxis.set_ticks_position('left')
  	ax.spines['left'].set_position(('data', 0))

#调整上下两个图高度和宽度
plt.subplots_adjust(hspace=0.8,wspace=0.5)


#创建子图(第1个图)
plt.subplot(3,3,1)#图像3行3列,在第一个位置画图
x1=np.linspace(-5,5,100)
y1=5+0*x1
plt.xlim(-2,6)
plt.ylim(-2,6)
plt.xticks(np.linspace(-5,5,6))
plt.yticks(np.linspace(-2,6,5))
set_axis()
plt.title('y=5')
plt.plot(x1,y1)

#创建子图(第2个图)
plt.subplot(3,3,2)
x2=np.linspace(-5,5,100)
y2=x2
plt.title('y=x')
set_axis()
plt.plot(x2,y2)

#创建子图(第3个图)
plt.subplot(3,3,3)
x3=np.linspace(-2*np.pi,2*np.pi,100)
y3=np.sin(x3)
plt.title('y=sin(x)')
set_axis()
plt.plot(x3,y3)

#创建子图(第4个图)
plt.subplot(3,3,4)
x4=np.linspace(-5,5,100)
y4=x4**2
plt.title(f'$y=x^{2}$')
set_axis()
plt.plot(x4,y4)

#创建子图(第5个图)
plt.subplot(3,3,5)
x5=np.linspace(-5,5,100)
y5=x5**3
plt.title(f'$y=x^{3}$')
set_axis()
plt.plot(x5,y5)


#创建子图(第6个图)
plt.subplot(3,3,6)
x6=np.linspace(-2*np.pi,2*np.pi,40)
y6=np.cos(x6)
plt.title('y=cos(x)')
set_axis()
plt.scatter(x6,y6,c='red')

#创建子图(第7个图)
plt.subplot(3,3,7)
x7=np.linspace(-5,1,100)
y7=np.exp(x7)
plt.xlim(-5,2)
plt.ylim(-1.5,3)
plt.xticks([-4,-3,-2,-1,0,1])
plt.yticks(np.linspace(-1,2,4))
plt.title('$y=e^{x}$')
#坐标轴为(0,0)
set_axis()#调用函数
plt.plot(x7,y7)

#创建子图(第8个图)
plt.subplot(3,3,8)
x8=np.linspace(0.5,5,100)
y8=np.log(x8)
plt.xlim(-1,6)
plt.ylim(-1,2.5)
plt.xticks([1,2,3,4,5])
plt.yticks([0,1,2])
plt.title('y=loge(x)')
set_axis()
plt.plot(x8,y8)

#创建子图(第9个图)
plt.subplot(3,3,9)
x9=np.linspace(0,5,100)
y9=x9**0.5
plt.title('$y=\sqrt{x}$')
set_axis()
plt.plot(x9,y9)
plt.show()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小飞龙程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值