当前位置: 移动技术网 > IT编程>脚本编程>Python > python隐秘的角落——笛卡尔之心

python隐秘的角落——笛卡尔之心

2020年07月03日  | 移动技术网IT编程  | 我要评论

在这里插入图片描述
随着网剧《隐秘的角落》的热播,让法国数学家、哲学家笛卡尔重回大众视野,他的心形线也在剧情中抢尽风头。

在隐秘的角落剧中,少年宫奥数老师张东升,在课上给同学们讲了这么一个故事:
数学家笛卡尔流落到瑞典,邂逅了美丽的公主克里斯蒂娜。国王知道了这件事后,强行拆散了他们。
后来,笛卡尔生病死去,在临死前给公主寄去了最后一封信,信中只有一行字:r=a(1-sinθ)。
同样喜欢数学的公主最终解开了这个秘密——笛卡尔之心。
在这里插入图片描述
下边笛卡尔写的!对,就这样子。
在这里插入图片描述
好吧,抱歉有点瞎,这个爱情小说不应该看真人!
看这个好了:
在这里插入图片描述

为了把这个表示出来,我们试着用python来打印一下这个‘浪漫色彩’的心形。

极坐标方程:ρ=a(1−sinθ)\rho = a (1-\sin\theta)ρ=a(1−sinθ)
也可以是这样:ρ=a(1−sinθ)

这里使用一下MATLIB来给我们打印出来(没版权),或者使用matplotlib打印。

import matplotlib.pyplot as plt
import numpy as np


Descartes = np.linspace(0.5*np.pi, 1.5*np.pi, 1000)
sintheta = np.sin(Descartes)
a = 1
y = a * sintheta * (1 - sintheta)
x = np.sqrt((1 - sintheta) ** 2 - y ** 2)
#x[::-1]步长为-1是反转x
x1 = np.hstack((x,-x[::-1]))  
y1 = np.hstack((y,y[::-1]))
plt.plot(x1, y1, c = 'r')
plt.show()

在这里插入图片描述

theta = np.linspace(0.0, 2 * np.pi, 1000)
a = 5
rho = a * (1 - np.sin(theta))
plt.subplot(polar=True)
plt.plot(theta, rho, c = 'r')
plt.show()

在这里插入图片描述

当然了,这么浪漫的爱情故事,真的是我们看到的那样子吗?

别闹了,和隐秘的角落里一样,事情远远比想象的更加复杂。
就比如 看过不关注,不加红心!
在这里插入图片描述

本文地址:https://blog.csdn.net/ailuoyi521/article/details/107069189

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网