python matplotlib实例(凄美爱情和python-matplotlib实现)
python matplotlib实例(凄美爱情和python-matplotlib实现)其后几年中相差34岁的笛卡尔和克莉丝汀相爱,国王发现并处死了笛卡尔。道别后的几天笛卡尔收到通知,国王要求他做克莉丝汀公主的数学老师。#故事来源 https://zhuanlan.zhihu.com/p/20644181 #有人说是虚构的爱情 https://www.sohu.com/a/126031025_488492 #也有人说是存在的爱情 #这封享誉世界的另类情书,至今,还保存在欧洲笛卡尔的纪念馆里。有人可以去查证。1650年发生在斯德哥尔摩街头发生的一件事。52岁的笛卡尔邂逅了18岁瑞典公主克莉丝汀。笛卡尔落魄无比,穷困潦倒又不愿意请求别人的施舍,每天只是拿着破笔破纸研究数学题。有一天克莉丝汀的马车路过街头发现了笛卡尔是在研究数学,公主便下车询问,最后笛卡尔发现公主很有数学天赋。
1 说明:
=====
1.1 笛卡尔:1596年3月31日-1650年2月11日,是世界著名的法国哲学家、数学家、物理学家。
1.2 笛卡尔心形函数与凄美的爱情故事:
#故事来源
https://zhuanlan.zhihu.com/p/20644181 #有人说是虚构的爱情
https://www.sohu.com/a/126031025_488492 #也有人说是存在的爱情
#这封享誉世界的另类情书,至今,还保存在欧洲笛卡尔的纪念馆里。有人可以去查证。
1650年发生在斯德哥尔摩街头发生的一件事。
52岁的笛卡尔邂逅了18岁瑞典公主克莉丝汀。
笛卡尔落魄无比,穷困潦倒又不愿意请求别人的施舍,每天只是拿着破笔破纸研究数学题。有一天克莉丝汀的马车路过街头发现了笛卡尔是在研究数学,公主便下车询问,最后笛卡尔发现公主很有数学天赋。
道别后的几天笛卡尔收到通知,国王要求他做克莉丝汀公主的数学老师。
其后几年中相差34岁的笛卡尔和克莉丝汀相爱,国王发现并处死了笛卡尔。
笛卡尔给公主写了十二封情书,不幸的是都被国王拦了下来,在临死之前笛卡尔给公主写了第十三封情书,信里面没有一个字,只有一个方程“r=a(1-sinθ)”。
国王收到这封信后百思不得其解,于是召集了瑞典所有的数学家进行研究,还是一无所获,就把这封信交给了公主。
公主很快就找到了答案,这个方程的对应曲线就是著名的心形线。
1.3 不管爱情真假:
=============
1.3.1 “癞蛤蟆想吃天鹅肉”是真,哈哈哈。
1.3.2 笛卡尔心形函数是真:r=a(1-sinθ)。
2 python matplotlib实现笛卡尔心形线(圈):
==================================
2.1 环境:
python3.8 matplotlib3.2.0
2.2 静态笛卡尔心形线(圈):
======================
2.2.1 代码一:
import numpy as np
import matplotlib.pyplot as plt
T = np.linspace(0 2 * np.pi 1024)
plt.axes(polar = True) #极坐标图
plt.plot(T 1. - np.sin(T) color="r")
plt.show()
2.2.2 图1:
3 引申:静态心形圈:
===============
3.1 代码二:
import numpy as np
import matplotlib.pyplot as plt
a = 1
t = np.linspace(0 2 * np.pi 1024)
X = a*(2*np.cos(t)-np.cos(2*t))
Y = a*(2*np.sin(t)-np.sin(2*t))
plt.plot(Y X color='r')
plt.show()
3.2 图2:
===如果到这里,不能体现python matplotlib水平===
因为网上都有!!
4 高级笛卡尔心形圈:
===============
4.1 代码三:本代码原创!
#第1步:导入模块
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
#第2步:定义画布
fig = plt.figure(figsize=(6 6))
ax = plt.gca()
ax.grid() #显示网格
#第3步:十字坐标垂直线
#水平线==lineshui==xs和ys
xs = np.linspace(-6 6 100)
ys =[0]*len(xs)
plt.plot(xs ys '-b' label='lineshui')
#垂直线==linechui==xc和yc
yc = np.linspace(-4 4 100)
xc =[0]*len(yc)
plt.plot(xc yc '-y' label='linechui')
#第4步:笛卡尔心形静态圆
a = 1
t = np.linspace(0 2 * np.pi 1024)
X = a*(2*np.cos(t)-np.cos(2*t))
Y = a*(2*np.sin(t)-np.sin(2*t))
plt.plot(Y X color='r')
#第5步:笛卡尔直线:移动圆点到笛卡尔心形圆边上的直线
line = ax.plot([] [] 'o-' lw=2)
#第6步:初始化函数
def init():
ax.set_xlim(-4 4)
ax.set_ylim(-4 4)
return line
#第7步:更新函数
def update(i):
#提示0 0为直线的圆点坐标是不变的
newx = [0 Y[i*10]]
newy = [0 X[i*10]]
line.set_data(newx newy)
return line
#第8步:动画设置和展示
#定义角度
theta = np.linspace(0 2*np.pi 100)
#动画挂起和参数设定
ani = animation.FuncAnimation(fig update range(len(theta)) init_func=init interval=30)
plt.title('Descartes LOVE:r=a(1-sinθ)')
#图片展示
plt.show()
4.2 图3:
5 小结:
======
笛卡尔:[赞]
解析几何之父。
黑格尔称他为"现代哲学之父"。
笛卡尔堪称17世纪及其后的欧洲哲学界和科学界最有影响的巨匠之一,被誉为“近代科学的始祖”。