前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python绘制heart

python绘制heart

作者头像
钱塘小甲子
发布2019-01-28 14:42:02
1K0
发布2019-01-28 14:42:02
举报
文章被收录于专栏:钱塘小甲子的博客

python有一个强大的模块,叫做matplotlib,但是,和matlab比,似乎还是弱了些,因为目测无法绘制隐函数!而matlab有ezplot。所以,如何用python去绘制一个心的形状呢?我们先来看一下heart的解析方程。

代码语言:javascript
复制

(x²+y²-1)³-x²2y³=0

看起来很简单的样子,变成python的表达式就是:

代码语言:javascript
复制
(x**2+y**2-1)**3-x**2*2*y**3

显然这是一个隐函数,我们只能用sympy这个模块来绘制heart了,不得不鄙视一下下matplotlib。

代码语言:javascript
复制
from sympy.parsing.sympy_parser import parse_expr
from sympy import plot_implicit
ezplot = lambda exper: plot_implicit(parse_expr(exper))
ezplot('(x**2+y**2-1)**3-x**2*2*y**3')

如果我们修改一下参数,

代码语言:javascript
复制
(x**2+y**2-9)**3-x**2*9*y**3

就是这样的效果

然后有是比较瘦小的心

代码语言:javascript
复制
((2*x)**2+y**2-9)**3-(2*x)**2*10*y**3

还有瘦到不能看的心:

代码语言:javascript
复制
((7*x)**2+y**2-9)**3-(7*x)**2*10*y**3

也有肥到夹门的心:

代码语言:javascript
复制
((0.7*x)**2+y**2-9)**3-(0.7*x)**2*10*y**3

各种各样的心,改一下参数就能获得,但是真正的心,再复杂的系统都难以刻画,又遑论修改参数。

代码语言:javascript
复制
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016年11月23日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档