天天看点

python 100天 77 用fill_between画麦浪

作者:洪较瘦不着调是么

前言:上次我们的文章 中介绍了何给两个二次函数(斜率不同的区域进行填充着色)

python 100天 76 用fill_between给填麦浪

明白了fill_between填充着色的基本使用办法后,我们继续实现麦浪的效果。

y=x^2  实际上在编程中有专门的函数表示X的二次方与我们数学中的写法稍微有点不一样,
但是本质 是一样的           
python 100天 77 用fill_between画麦浪

用代码云实现x的二次方两个x 相乘,当然也有专门的函数来求解x的n次方,大家可以自己思考

python 100天 77 用fill_between画麦浪

画y=x ^2的函数图像

x = np.linspace(-10, 10, 100)
y1 = x**2
y2 = x**2 - 20*np.cos(x)           

其中有两个函数一个是y=x^2 ,第二个函数是 y=x^2 -20*np.cos(x) 两个函数的复合体,后一个是

python 100天 77 用fill_between画麦浪

接着我填充一下这个区域的范围

ax.fill_between(x, y1, y2)           
python 100天 77 用fill_between画麦浪
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-10, 10, 100)
y1 = x**2
y2 = x**2 - 20*np.cos(x)
fig, ax = plt.subplots()
ax.fill_between(x, y1, y2)

fig.set_figwidth(12)  
fig.set_figheight(6)  

fig.set_facecolor('floralwhite')
ax.set_facecolor('seashell')
plt.show()           

紧接着进行变换

python 100天 77 用fill_between画麦浪
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-10, 10, 100)
y1 = x**2
y2 = x**2 - 20*np.cos(x)
fig, ax = plt.subplots()
ax.fill_between(x, y1, y2)
 
fig.set_figwidth(12) #  
fig.set_figheight(6) #  
fig.set_facecolor('floralwhite')
ax.set_facecolor('seashell')
plt.show()           

继续进行变换

python 100天 77 用fill_between画麦浪
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 3*np.pi, 100)
y1 = np.cos(x)
y2 = np.sin(x)
fig, ax = plt.subplots()

ax.fill_between(x, y1, 2*y1 + 1,
facecolor='r',
alpha = 0.5,
color = 'black', # цвет линий
linewidth = 2, #  
linestyle = '--') #  
ax.fill_between(x, y2, 3*y2,
facecolor='g',
alpha = 0.5,
color = 'black',
linewidth = 2,
linestyle = '--')

fig.set_figwidth(12) 
fig.set_figheight(6)  
fig.set_facecolor('floralwhite')
ax.set_facecolor('seashell')
plt.show()