您的位置 首页 > 数码极客

python如何画出两个曲线不在一个图

大家好! 我是lamecho(辣么丑)。上一篇我们讲了python三种实现显示图片的方式,今天我们来看看其中的matplotlib的其他一些用法。matplotlib总体来说用来做图表很方便,或者是实现一些科学公式的结果展示,比如简单点的正余弦(sin,cos)。

进入正文前我们看看下面的gif,简单的正弦动画,就是通过matplot实现的。



接下来我们先从简单的静态画法来讲,首先我们这里除了用到matplot库以外还需要用到numpy库。代码中写法是这样:

from matplotlib import pyplot

class L_Pic():

def __init__(self,file):

def mplot(self):

img1=image.imread('1.png')

img2=image.imread('2.png')

fig=(dpi=128)

ax1=(211)

ax2=(212)

ax1.imshow(img1)

ax2.imshow(img2)

ax1.axis('off')

ax2.axis('off')

()

def mp_drwa(self):

ar=np.linspace(1,10,100)

(ar,np.sin(ar),'ob-',linewidth=2,label='sinx')

(u'X'.decode('utf-8'))#设置X轴

(u'Y')#设置Y轴

(u'Test')#设置标题

(loc='upper center')#标题位置

()#显示

('demo1.jpg')#保存

if __name__ =='__main__':

p=L_Pic('2.png')

#p.mplot()

#p.pil()

#p.cv()

#p.mp_drwa()

p.draw_random()

#p.mp_drwa1()

我们主要看mp_drwa()里的方法 (ar,np.sin(ar),'ob-',linewidth=2,label='sinx'),参数中前两个是x,y轴的数据,所以提前我们要准备好这样的两组数据。这里可以看到 ar=np.linspace(1,10,100)首先定义了一组一维数组,然后将其传入第一个参数,第二个参数是通过numpy的sin函数实现正弦。剩余的参数依次定义线型,线宽,label名。剩下的参考代码注释。

接下来我们看看如何实现正弦的动态画法呢?直接看代码

def mp_drwa1(self):

fig=()

ax=(111)

global y,x,count,ar

ar=np.linspace(0,10,100)

y=[]

x=[]

count=0

x.append(ar[0])

y.append(ar[0]))

line,=(x,y,'.r-')

def update(data):

line.set_data(data)

return line,

def cd():

global y,x,count,ar

count+=1

if count<2:

sleep(3)

if count>99:

pass

x.append(ar[count])

y.append(x[len(x)-1]))

yield x,y

t=anima(fig,update,cd,interval=100)

(0,10)

(-1,1)

()

好了,代码还是要自己多研究的。有什么问题可以给我留言或关注我的微信,微博留言。

原创文章,转载请注明出处。

欢迎关注我的个人微信号”fire-bug“,了解最新文章或提出你的问题和观点

微博:https://weibo.com/u/6017986584

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“python如何画出两个曲线不在一个图”边界阅读