最近看数学,发现有时候画个图还真管用,对理解和展示效果都不错。尤其是三维空间和一些复杂函数,相当直观,也有助于解题。
本来想用mathlab,下载安装都太费事,杀鸡不用牛刀,Python基本就能实现。
下面分别在二维三维举例说明。

1.      二维绘图

1)       描述:
绘制极坐标系中r=1他r=2cosθ的相交部分
(没画的时候,我确实没看出r=2cosθ也是正圆)

2)       程序

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. plt.figure(1)
  4. ax = plt.subplot(111)
  5. x = np.linspace(0, np.pi * 2, 200)  # 在0到2pi之间,均匀产生200点的数组
  6. # r = 2cosθ
  7. r = 2 * np.cos(x)  # 半径
  8. ax.plot(r * np.cos(x), r * np.sin(x))
  9. # r = 1
  10. r = 1
  11. ax.plot(r * np.cos(x), r * np.sin(x))
  12. plt.show()

3)       运行结果

2.      三维绘图

1)       描述:
绘制向量函数r(t)=(sint,cost,t)的图,即向量r的坐标x,y,z都是t的函数,分别是x(t)=sint, y(t)=cost, z(t)=t。可将函数视为“大黄蜂”的飞行曲线,即t时刻,它在空间中的位置是(x,y,z),以及它的导数(飞行速度)x’(t)=cost, y’(t)=-sint,z=1,即r’(t)=(cost,-sint,1)

2)       程序

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. from mpl_toolkits.mplot3d import Axes3D
  4. fig = plt.figure(1)
  5. ax = fig.add_subplot(1,1,1, projection='3d') # 指定三维空间做图
  6. t = np.linspace(0, 4, 200)  # 在0到4之间,均匀产生200点的数组
  7. theta = t * 2 * np.pi # 角度
  8. # r(t)=(sint,cost,t)
  9. z = t
  10. x = np.sin(theta)
  11. y = np.cos(theta)
  12. ax.plot(x, y, z, label='r(t)')
  13. # r’(t)
  14. z = 1
  15. x = np.cos(theta)
  16. y = -np.sin(theta)
  17. ax.plot(x, y, z, label='r\'(t)')
  18. ax.legend()  jpg521.com
  19. plt.show()  www.feifanyule.cn

3)       运行结果

Python函数绘图的更多相关文章

  1. <编译原理 - 函数绘图语言解释器(1)词法分析器 - python>

    <编译原理 - 函数绘图语言解释器(1)词法分析器 - python> 背景 编译原理上机实现一个对函数绘图语言的解释器 - 用除C外的不同种语言实现 解释器分为三个实现块: 词法分析器: ...

  2. <编译原理 - 函数绘图语言解释器(2)语法分析器 - python>

    <编译原理 - 函数绘图语言解释器(2)语法分析器 - python> 背景 编译原理上机实现一个对函数绘图语言的解释器 - 用除C外的不同种语言实现 设计思路: 设计函数绘图语言的文法, ...

  3. <编译原理 - 函数绘图语言解释器(3)解释器 - python>

    <编译原理 - 函数绘图语言解释器(3)解释器 - python> <编译原理 - 函数绘图语言解释器(2)词法分析器 - python> <编译原理 - 函数绘图语言解 ...

  4. Python之绘图和可视化

    Python之绘图和可视化 1. 启用matplotlib 最常用的Pylab模式的IPython(IPython --pylab) 2. matplotlib的图像都位于Figure对象中. 可以使 ...

  5. python 函数之day3

    一 函数的语法及特性 什么是函数? 定义:函数是一个功能通过一组语句的集合,由名字(函数名)将其封装起来的代码块,要想执行这个函数,只要调用其函数名即可. 特性: 减少重复代码 使程序变的可扩展 使程 ...

  6. Python函数作用域的查找顺序

    函数作用域的LEGB顺序 1.什么是LEGB? L:local 函数内部作用域 E:enclosing 函数内部与内嵌函数之间 G:global 全局作用域 B:build-in 内置作用域 2.它们 ...

  7. Python函数讲解

    Python函数

  8. Python函数信息

    Python函数func的信息可以通过func.func_*和func.func_code来获取 一.先看看它们的应用吧: 1.获取原函数名称: 1 >>> def yes():pa ...

  9. Python函数参数默认值的陷阱和原理深究"

    本文将介绍使用mutable对象作为Python函数参数默认值潜在的危害,以及其实现原理和设计目的 本博客已经迁移至: http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文 ...

随机推荐

  1. 【小程序】当遇到bindTap绑定无法跳转到tabbar页面时

    如下图: 更换成navigator包裹跳转也不起作用. cart目录在app.json中定义在底部tabBar中 在小程序 导航 文档 最下方表示 所以,以上应改为

  2. 练习angularjs的ng-click的应用

    angular的click事件ng-click. 实现一个小功能计数器,用户可以点击“+”或“-”铵钮,数值每随点击铵钮增长1或减1.使用ng-init设置初始值为0. <div ng-app= ...

  3. Ionic项目的建立

    Ionic建立android项目的过程 1.cmd到目标盘文件,此处为D:\Dev\sourcecode\IonicApp\FlexApp\CaseStudy,执行ionic start CaseSt ...

  4. Part 5:Django测试--Django从入门到精通系列教程

    该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. 本节将简要介绍Django的自动化测试相关内 ...

  5. ubuntu在指定的文件夹下创建python3和python2的虚拟环境

    1.用pip安装virtualenv sudo apt-get install python-virtualenv 2.创建python2和python3虚拟环境 2.1 创建python2的虚拟环境 ...

  6. 使用IdentityServer4实现一个简单的Oauth2客户端模式授权

    1.首先新建一个webAPI项目做为IdentityServer的服务端,提供生成Token的服务,首先修改Startup.cs文件,如下图: 2.增加一个Config.cs文件,以便于提供资源和认证 ...

  7. Centos下部署DRBD+NFS+Keepalived高可用环境记录

    使用NFS服务器(比如图片业务),一台为主,一台为备.通常主到备的数据同步是通过rsync来做(可以结合inotify做实时同步).由于NFS服务是存在单点的,出于对业务在线率和数据安全的保障,可以采 ...

  8. 《Linux课本》读书笔记 第十七章 模块

    设备与模块: 设备类型:块设备(blkdev).字符设备(cdev).网络设备: 模块: 分析hello,world模块代码.Hello_init是模块的入口点,通过module_init()注册到系 ...

  9. CMake系列之三:多个源文件-同一目录

    同一目录,多个源文件 把前面的main.c里面的power函数单独写入到一个MathFunctions.c源文件里,目录下的文件结构如下: ./Demo2 | +--- main.c | +--- M ...

  10. 使用Java+Kotlin双语言的LeetCode刷题之路(二)

    BasedLeetCode LeetCode learning records based on Java,Kotlin,Python...Github 地址 序号对应 LeetCode 中题目序号 ...