今天520,大家有没有和心爱的女生在一起呢?
今天我们来用Python画一颗特别的爱心,送给那个特别的她,给她一份浪漫的惊喜吧~
还记得那个心形曲线的公式吗?
我们用Python基于上面的公式来画一画爱心吧~
准备工作
代码中用到numpy和matplotlib,需要先安装这两个库
pip3 install numpy
pip3 install matplotlib
爱心基本款
我们先来画一颗最朴素的爱心
import numpy as np
import matplotlib.pyplot as plt
x_coords = np.linspace(-100, 100, 500)
y_coords = np.linspace(-100, 100, 500)
points = []
for y in y_coords:
for x in x_coords:
if ((x*0.03)**2+(y*0.03)**2-1)**3-(x*0.03)**2*(y*0.03)**3 <= 0:
points.append({"x": x, "y": y})
heart_x = list(map(lambda point: point["x"], points))
heart_y = list(map(lambda point: point["y"], points))
plt.scatter(heart_x, heart_y, s=10, alpha=0.5)
plt.show()
运行后上面的代码会显示下面的图
爱心的形状有了,接下来我们来解锁高级定制款,给爱心填充不同的颜色。
爱心高级定制款
给爱心填充不同的颜色,只需在上面代码的scatter函数中指定cmap参数即可,如下
plt.scatter(heart_x, heart_y, s=10, alpha=0.5, c=range(len(heart_x)), cmap=<cmap>)
下面是不同色系的定制款
大家是不是学会了呢 ?
最后祝大家520快乐!