python教程:python分段函数如何编写?

 所属分类:php教程

 浏览:155次-  评论: 0次-  更新时间:2022-09-28
描述:更多教程资料进入php教程获得。 程序员必备接口测试调试工具:立即使用 Apipost = Postman + Swagger + Mock + Jmeter Api...
更多教程资料进入php教程获得。

程序员必备接口测试调试工具:立即使用
Apipost = Postman + Swagger + Mock + Jmeter
Api设计、调试、文档、自动化测试工具
后端、前端、测试,同时在线协作,内容实时同步

python分段函数如何编写?

python编写分段函数的方法:

1.绘制分段函数:y=4sin(4πt)-sgn(t-0.3)-sgn(0.72-t)

代码:

#!/usr/bin/python
# -*- coding:utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
#绘制分段函数:y=4sin(4πt)-sgn(t-0.3)-sgn(0.72-t)
def sgn(x):
    if x > 0:
        return 1
    elif x < 0:
        return -1
    else:
        return 0
t = np.arange(0, 1, 0.01)
y = []
for i in t:
    y_1 = 4 * np.sin(4 * np.pi * i) - sgn(i - 0.3) - sgn(0.72 - i)
    y.append(y_1)
plt.plot(t, y)
plt.xlabel("t")
plt.ylabel("y")
plt.title("Heavsine")
plt.show()

662f89dd2589ebdf83b68bef2e39eaa.png

51b2feb05988a2cf457839a1c0cf03f.png

2.使用Matplotlib绘制分段函数:

代码:

#!/usr/bin/python
# -*- coding:utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
def sgn(value):
    if value < 4:
        return 20
    else:
        return 15
plt.figure(figsize=(6, 4))
x = np.linspace(0, 8, 100)
y = np.array([])
for v in x:
    y = np.append(y, np.linspace(sgn(v), sgn(v), 1))
l = plt.plot(x, y, 'b', label='type')
plt.legend()
plt.show()

1f10ee4c5580a0a217577684be9989d.png

859b6ff1e0a48b533aff3088a8a9e9b.png

3.绘制三角波形:

#!/usr/bin/python
# -*- coding:utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
def triangle_wave(x, c, c0, hc):
   x = x - int(x)  #三角波周期为1 因此只取小数部分进行计算
   if x < c0:
       return x / c0 * hc
   elif x >= c:
       return 0.0
   else:
       return (c-x)/(c-c0)*hc
x = np.linspace(0, 2, 1000)
y = np.array([triangle_wave(t, 0.6, 0.4, 1.0) for t in x])
plt.figure()
plt.plot(x, y)
plt.ylim(-0.2, 1.2)   #限制y的范围
plt.show()

906e57be365c8bf6efb2e48d69ffe4b.png

e0847551fa686f602d3a150aa8681b9.png

推荐教程:《python视频教程》

以上就是python分段函数如何编写?的详细内容,更多请关注zzsucai.com其它相关文章!

积分说明:注册即送10金币,每日签到可获得更多金币,成为VIP会员可免金币下载! 充值积分充值会员更多说明»

讨论这个素材(0)回答他人问题或分享使用心得奖励金币

〒_〒 居然一个评论都没有……

表情  文明上网,理性发言!