利用python画一颗心的方法示例


Posted in Python onJanuary 31, 2017

前言

Python一般使用Matplotlib制作统计图形,用它自己的说法是‘让简单的事情简单,让复杂的事情变得可能'。用它可以制作折线图,直方图,条形图,散点图,饼图,谱图等等你能想到的和想不到的统计图形,这些图形可以导出为多种具有出版质量的格式。此外,它和ipython结合使用,确实方便,谁用谁知道!本文将介绍利用python中的matplotlib画一颗心,感兴趣的朋友们下面来一起看看吧。

安装matplotlib

首先要安装matplotlib

pip install matplotlib

windows用户可以去官网下载安装。官网看到matpltlib的作者John Hunter (1968-2012)刚去世不久,在此感谢他创造了这样一个强大的绘图工具。

上代码

#!/usr/bin/env python3
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
from matplotlib.ticker import LinearLocator, FormatStrFormatter
import matplotlib.pyplot as plt
import numpy as np


def heart_3d(x,y,z):
 return (x**2+(9/4)*y**2+z**2-1)**3-x**2*z**3-(9/80)*y**2*z**3


def plot_implicit(fn, bbox=(-1.5, 1.5)):
 ''' create a plot of an implicit function
 fn ...implicit function (plot where fn==0)
 bbox ..the x,y,and z limits of plotted interval'''
 xmin, xmax, ymin, ymax, zmin, zmax = bbox*3
 fig = plt.figure()
 ax = fig.add_subplot(111, projection='3d')
 A = np.linspace(xmin, xmax, 100) # resolution of the contour
 B = np.linspace(xmin, xmax, 40) # number of slices
 A1, A2 = np.meshgrid(A, A) # grid on which the contour is plotted

 for z in B: # plot contours in the XY plane
  X, Y = A1, A2
  Z = fn(X, Y, z)
  cset = ax.contour(X, Y, Z+z, [z], zdir='z', colors=('r',))
  # [z] defines the only level to plot
  # for this contour for this value of z

 for y in B: # plot contours in the XZ plane
  X, Z = A1, A2
  Y = fn(X, y, Z)
  cset = ax.contour(X, Y+y, Z, [y], zdir='y', colors=('red',))

 for x in B: # plot contours in the YZ plane
  Y, Z = A1, A2
  X = fn(x, Y, Z)
  cset = ax.contour(X+x, Y, Z, [x], zdir='x',colors=('red',))

 # must set plot limits because the contour will likely extend
 # way beyond the displayed level. Otherwise matplotlib extends the plot limits
 # to encompass all values in the contour.
 ax.set_zlim3d(zmin, zmax)
 ax.set_xlim3d(xmin, xmax)
 ax.set_ylim3d(ymin, ymax)

 plt.show()

if __name__ == '__main__':
 plot_implicit(heart_3d)

效果是这个样子,挺有意思的:

利用python画一颗心的方法示例

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用python能带来一定的帮助,如果有疑问大家可以留言交流。

Python 相关文章推荐
python根据京东商品url获取产品价格
Aug 09 Python
python轻松查到删除自己的微信好友
Jan 10 Python
Python编程判断一个正整数是否为素数的方法
Apr 14 Python
Python入门_浅谈数据结构的4种基本类型
May 16 Python
pygame 精灵的行走及二段跳的实现方法(必看篇)
Jul 10 Python
Python数据结构之顺序表的实现代码示例
Nov 15 Python
Anaconda3+tensorflow2.0.0+PyCharm安装与环境搭建(图文)
Feb 18 Python
python程序文件扩展名知识点详解
Feb 27 Python
python生成大写32位uuid代码
Mar 03 Python
.img/.hdr格式转.nii格式的操作
Jul 01 Python
Python3合并两个有序数组代码实例
Aug 11 Python
Python-split()函数实例用法讲解
Dec 18 Python
利用Python脚本生成sitemap.xml的实现方法
Jan 31 #Python
利用python实现命令行有道词典的方法示例
Jan 31 #Python
Python爬虫包 BeautifulSoup  递归抓取实例详解
Jan 28 #Python
python 编程之twisted详解及简单实例
Jan 28 #Python
详解python之简单主机批量管理工具
Jan 27 #Python
Python下的Softmax回归函数的实现方法(推荐)
Jan 26 #Python
在Django同1个页面中的多表单处理详解
Jan 25 #Python
You might like
PHP 中 Orientation 属性判断上传图片是否需要旋转
2015/10/16 PHP
PHP生成可点击刷新的验证码简单示例
2016/05/13 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
2018/06/14 PHP
PHP上传文件及图片到七牛的方法
2018/07/25 PHP
JS 类型转换常见方法小结
2010/05/31 Javascript
浅谈javascript中的作用域
2012/04/07 Javascript
JavaScript数值数组排序示例分享
2014/05/27 Javascript
moment.js轻松实现获取当前日期是当年的第几周
2015/02/05 Javascript
Express进阶之log4js实用入门指南
2018/02/10 Javascript
vue中本地静态图片路径写法
2018/03/06 Javascript
JavaScript的词法结构精华篇
2018/10/17 Javascript
微信小程序开发问题之wx.previewImage
2018/12/25 Javascript
JS div匀速移动动画与变速移动动画代码实例
2019/03/26 Javascript
微信小程序页面间传值与页面取值操作实例分析
2019/04/30 Javascript
微信小程序的注册页面包含倒计时验证码、获取用户信息
2019/05/22 Javascript
JS用最简单的方法实现四舍五入
2019/08/27 Javascript
node.js中fs文件系统模块的使用方法实例详解
2020/02/13 Javascript
浅析vue cli3 封装Svgicon组件正确姿势(推荐)
2020/04/27 Javascript
jQuery 添加元素和删除元素的方法
2020/07/15 jQuery
利用Python爬虫给孩子起个好名字
2017/02/14 Python
解决sublime+python3无法输出中文的问题
2018/12/12 Python
BP神经网络原理及Python实现代码
2018/12/18 Python
django 数据库 get_or_create函数返回值是tuple的问题
2020/05/15 Python
基于pytorch中的Sequential用法说明
2020/06/24 Python
Python爬虫入门教程02之笔趣阁小说爬取
2021/01/24 Python
利用html5 canvas动态画饼状图的示例代码
2018/04/02 HTML / CSS
HTML5实现视频弹幕功能
2019/08/09 HTML / CSS
几个数据库方面的面试题
2016/07/01 面试题
介绍一下UNIX启动过程
2013/11/14 面试题
员工自我鉴定范文
2013/10/06 职场文书
企业出纳岗位职责
2014/03/12 职场文书
结婚当天新郎保证书
2015/05/08 职场文书
小鞋子观后感
2015/06/05 职场文书
物业保洁员管理制度
2015/08/05 职场文书
导游词之湖北武当山
2019/09/23 职场文书
css3应用示例:新增的选择器
2022/03/16 HTML / CSS