Python函数绘图
最近看数学,发现有时候画个图还真管用,对理解和展示效果都不错。尤其是三维空间和一些复杂函数,相当直观,也有助于解题。
本来想用mathlab,下载安装都太费事,杀鸡不用牛刀,Python基本就能实现。
下面分别在二维三维举例说明。
1. 二维绘图
1)       描述:
绘制极坐标系中r=1他r=2cosθ的相交部分
(没画的时候,我确实没看出r=2cosθ也是正圆)
2) 程序
- import numpy as np
 - import matplotlib.pyplot as plt
 - plt.figure(1)
 - ax = plt.subplot(111)
 - x = np.linspace(0, np.pi * 2, 200) # 在0到2pi之间,均匀产生200点的数组
 - # r = 2cosθ
 - r = 2 * np.cos(x) # 半径
 - ax.plot(r * np.cos(x), r * np.sin(x))
 - # r = 1
 - r = 1
 - ax.plot(r * np.cos(x), r * np.sin(x))
 - 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) 程序
- import numpy as np
 - import matplotlib.pyplot as plt
 - from mpl_toolkits.mplot3d import Axes3D
 - fig = plt.figure(1)
 - ax = fig.add_subplot(1,1,1, projection='3d') # 指定三维空间做图
 - t = np.linspace(0, 4, 200) # 在0到4之间,均匀产生200点的数组
 - theta = t * 2 * np.pi # 角度
 - # r(t)=(sint,cost,t)
 - z = t
 - x = np.sin(theta)
 - y = np.cos(theta)
 - ax.plot(x, y, z, label='r(t)')
 - # r’(t)
 - z = 1
 - x = np.cos(theta)
 - y = -np.sin(theta)
 - ax.plot(x, y, z, label='r\'(t)')
 - ax.legend() jpg521.com
 - plt.show() www.feifanyule.cn
 
3)       运行结果
Python函数绘图的更多相关文章
- <编译原理 - 函数绘图语言解释器(1)词法分析器 - python>
		
<编译原理 - 函数绘图语言解释器(1)词法分析器 - python> 背景 编译原理上机实现一个对函数绘图语言的解释器 - 用除C外的不同种语言实现 解释器分为三个实现块: 词法分析器: ...
 - <编译原理 - 函数绘图语言解释器(2)语法分析器 - python>
		
<编译原理 - 函数绘图语言解释器(2)语法分析器 - python> 背景 编译原理上机实现一个对函数绘图语言的解释器 - 用除C外的不同种语言实现 设计思路: 设计函数绘图语言的文法, ...
 - <编译原理 - 函数绘图语言解释器(3)解释器 - python>
		
<编译原理 - 函数绘图语言解释器(3)解释器 - python> <编译原理 - 函数绘图语言解释器(2)词法分析器 - python> <编译原理 - 函数绘图语言解 ...
 - Python之绘图和可视化
		
Python之绘图和可视化 1. 启用matplotlib 最常用的Pylab模式的IPython(IPython --pylab) 2. matplotlib的图像都位于Figure对象中. 可以使 ...
 - python 函数之day3
		
一 函数的语法及特性 什么是函数? 定义:函数是一个功能通过一组语句的集合,由名字(函数名)将其封装起来的代码块,要想执行这个函数,只要调用其函数名即可. 特性: 减少重复代码 使程序变的可扩展 使程 ...
 - Python函数作用域的查找顺序
		
函数作用域的LEGB顺序 1.什么是LEGB? L:local 函数内部作用域 E:enclosing 函数内部与内嵌函数之间 G:global 全局作用域 B:build-in 内置作用域 2.它们 ...
 - Python函数讲解
		
Python函数
 - Python函数信息
		
Python函数func的信息可以通过func.func_*和func.func_code来获取 一.先看看它们的应用吧: 1.获取原函数名称: 1 >>> def yes():pa ...
 - Python函数参数默认值的陷阱和原理深究"
		
本文将介绍使用mutable对象作为Python函数参数默认值潜在的危害,以及其实现原理和设计目的 本博客已经迁移至: http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文 ...
 
随机推荐
- Luogu3760 TJOI2017 异或和 树状数组
			
传送门 题意:给出一个长度为$N$的非负整数序列,求其中所有连续区间的区间和的异或值.$N \leq 10^5$,所有元素之和$\leq 10^6$ 设序列的前缀和为$s_i$,特殊地,$s_0=0$ ...
 - Ionic 添加java原生代码 报support.v4不存在问题
			
在做Ionic Hybird app开发过程中不可避免的使用一些原生代码的问题,那么怎么添加原生代码呢? 答案很简单:1.将原生代码直接拷贝到项目下的 你的项目名/platforms/android/ ...
 - 分布式理论——quorum原理
			
编者按:本篇文章是网上一些文章的合集,并不是原创,谢谢各位的分享. 一.基于Quorum投票的冗余控制算法 Quorom 机制,是一种分布式系统中常用的,用来保证数据冗余和最终一致性的投票算法,其主要 ...
 - ElasticSearch实践系列(二):探索集群
			
前言 为了方便ELK的逐步搭建,我们本篇文章先安装Kibana,然后用Kibana的DevTols执行命令.也可以安装elasticsearch-head运行命令. 安装Kibana 参考Instal ...
 - item 7:当创建对象的时候,区分()和{}的使用
			
本文翻译自modern effective C++,由于水平有限,故无法保证翻译完全正确,欢迎指出错误.谢谢! 博客已经迁移到这里啦 从不同的角度来看,在C++11中,对象初始化拥有多种语法选择,这体 ...
 - Mvc_后端通用验证
			
namespace Web.Mvc.Extensions { #region 验证基类 /// <summary> /// 通用验证基类 /// </summary> publ ...
 - 快速零配置迁移 API 适配 iOS 对 IPv6 以及 HTTPS 的要求
			
本文快速分享一下快速零配置迁移 API 适配 iOS 对 IPv6 以及 HTTPS 的要求的方法,供大家参考. 原文发表于我的技术博客 零配置方案 最新的苹果审核政策对 API 的 IPv6 以及 ...
 - 忘记mysql数据库root密码
			
找到配置文件my.ini ,然后将其打开,可以选择用记事本打开,查找的方法如下: 打开后,搜索mysqld关键字 找到后,在mysqld下面添加skip-grant-tables,保存退出. PS: ...
 - 《Linux课本》读书笔记 第四章
 - 安装tesserocr错误(未解决)
			
在win10下使用pip install tesserocr安装时,始终报错,未解决问题 解压tesserocr-2.2.2.tar.gz该文件夹后,查看setup.py文件,发现似乎model只能再 ...