用python画心形函数,属于数学家的浪漫~

今天在微博上看到了一个动态的心形波浪,感觉挺有意思了。然后在网上查了查,了解到了笛卡尔心形函数,及其美丽的童话故事,所以打算用python画一画,玩一下。

下面这个是我在微博上看到的心形波浪。

首先

import numpy as np
from matplotlib import pyplot as plt
import math

pi = math.pi

然后

x = np.linspace(-3.3**0.5, 3.3**0.5, 6001).reshape(-1,1)
y = (x**2)**(1/3) + 0.9*np.sqrt(3.3 - x**2)*np.sin(40*pi*x)

plt.plot(x,y,color = 'r')
plt.xlim(-3,3)
# plt.savefig('心形波浪')
plt.show()

显示

心形波浪

下面这个是笛卡尔心形函数

X = np.linspace(0, 2*pi, 500)

x = 2 * np.sin(X) - np.sin(2 * X)
y = 2 * np.cos(X) - np.cos(2 * X) 

plt.plot(x, y,color = 'r')
plt.xlim(-5,5)
# plt.savefig('笛卡尔心形函数')
plt.show()

显示(相比于心,感觉更像马蹄哈哈)

笛卡尔心形函数

上面这两个都不是太理想,又查了查,找到了下面两个,更好看一些。

x = np.linspace(-2, 2, 401)

plt.plot(x, np.sqrt(1-(np.abs(x)-1)*(np.abs(x)-1)), color = 'r')
plt.plot(x, np.arccos(1-np.abs(x))-pi, color = 'r')
plt.xlim(-3,3)
# plt.savefig('两段式心形函数')
plt.show()

两段式心形函数

X=np.linspace(-6,6,1201)
x=16*(np.sin(X))**3
y=13*np.cos(X)-5*np.cos(2*X)-2*np.cos(3*X)-np.cos(4*X)

plt.plot(x, y, color = 'r')
plt.xlim(-22,22)
# plt.savefig('心形函数')
plt.show()

心形函数

我觉得最后这个最好看了

还有几个我不会画,等哪天会了再更新。

往期博客:

利用 python 实现多张图片的无损拼接

拒绝“过劳死”!看看你已经敲了多久的代码!

用python计算每天什么时候下班

  • 19
    点赞
  • 87
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值