python分段函数如何编写

2025-08-28 07:55:20

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()

python分段函数如何编写

python分段函数如何编写

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()

python分段函数如何编写

python分段函数如何编写

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()

python分段函数如何编写

python分段函数如何编写

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢