- 浏览: 264010 次
- 性别:
- 来自: 济南
文章分类
最新评论
Matplotlib 是Python的2D&3D绘图库,产生各种已经拷贝格式和交互幻剑中跨平台形式的印刷质量图标。Matplot语法与Matlab相似,绘图绘图功能强大,而且十分容易上手。
“个人永远不能超过集体的力量”(Ken Blanchard )。Python强大的原因之一就在于其开源,有很多优秀的程序员为其提供了丰富的类库。Matplotlib就是其中之一,但他的创始人John D. Hunter英年早逝,在今年8月份死于治疗癌症引起的并发症。向这位优秀的程序员致敬!
安装matplot之前先要安装Numpy 。
Numpy也是python的一个扩展包,提供基础的科学计算,包括:
- 强大的N维矩阵对象
- C/C++ 和 Fortran 代码集成工具
- 有用的线性代数、傅立叶转换和随机数生成函数
Numpy的下载地址:http://scipy.org/Download
Matlabplot的下载地址:https://github.com/matplotlib/matplotlib/downloads
也可以从我的csdn资源下载(附有说明文档):
安装都很简单,一路双击就可以~
以下是一个简单的绘制正弦三角函数y=sin(x)的例子。
# plot a sine wave from 0 to 4pi from pylab import * x_values = arange(0.0, math.pi * 4, 0.01) y_values = sin(x_values) plot(x_values, y_values, linewidth=1.0) xlabel('x') ylabel('sin(x)') title('Simple plot') grid(True) savefig("sin.png") show()效果如图:
pylab的plot函数与matlab很相似,也可以在后面增加属性值,可以用
help(pylab.plot)查看说明:
例如用‘r*’,即红色,星形来画图:
import os import math import pylab y_values = [] x_values = [] num = 0.0 #collect both num and the sine of num in a list while num < math.pi * 4: y_values.append(math.sin(num)) x_values.append(num) num += 0.1 pylab.plot(x_values,y_values,'r*') pylab.show()
Matplot中可以使用Latex来编辑公式。比如最上面那个Matplotlib的logo,背景的公式就是使用的Latex:
""" Thanks to Tony Yu <tsyu80@gmail.com> for the logo design """ import numpy as np import matplotlib as mpl import matplotlib.pyplot as plt import matplotlib.cm as cm mpl.rcParams['xtick.labelsize'] = 10 mpl.rcParams['ytick.labelsize'] = 12 mpl.rcParams['axes.edgecolor'] = 'gray' axalpha = 0.05 #figcolor = '#EFEFEF' figcolor = 'white' dpi = 80 fig = plt.figure(figsize=(6, 1.1),dpi=dpi) fig.figurePatch.set_edgecolor(figcolor) fig.figurePatch.set_facecolor(figcolor) def add_math_background(): ax = fig.add_axes([0., 0., 1., 1.]) text = [] text.append((r"$W^{3\beta}_{\delta_1 \rho_1 \sigma_2} = U^{3\beta}_{\delta_1 \rho_1} + \frac{1}{8 \pi 2} \int^{\alpha_2}_{\alpha_2} d \alpha^\prime_2 \left[\frac{ U^{2\beta}_{\delta_1 \rho_1} - \alpha^\prime_2U^{1\beta}_{\rho_1 \sigma_2} }{U^{0\beta}_{\rho_1 \sigma_2}}\right]$", (0.7, 0.2), 20)) text.append((r"$\frac{d\rho}{d t} + \rho \vec{v}\cdot\nabla\vec{v} = -\nabla p + \mu\nabla^2 \vec{v} + \rho \vec{g}$", (0.35, 0.9), 20)) text.append((r"$\int_{-\infty}^\infty e^{-x^2}dx=\sqrt{\pi}$", (0.15, 0.3), 25)) #text.append((r"$E = mc^2 = \sqrt{{m_0}^2c^4 + p^2c^2}$", # (0.7, 0.42), 30)) text.append((r"$F_G = G\frac{m_1m_2}{r^2}$", (0.85, 0.7), 30)) for eq, (x, y), size in text: ax.text(x, y, eq, ha='center', va='center', color="#11557c", alpha=0.25, transform=ax.transAxes, fontsize=size) ax.set_axis_off() return ax def add_matplotlib_text(ax): ax.text(0.95, 0.5, 'matplotlib', color='#11557c', fontsize=65, ha='right', va='center', alpha=1.0, transform=ax.transAxes) def add_polar_bar(): ax = fig.add_axes([0.025, 0.075, 0.2, 0.85], polar=True) ax.axesPatch.set_alpha(axalpha) ax.set_axisbelow(True) N = 7 arc = 2. * np.pi theta = np.arange(0.0, arc, arc/N) radii = 10 * np.array([0.2, 0.6, 0.8, 0.7, 0.4, 0.5, 0.8]) width = np.pi / 4 * np.array([0.4, 0.4, 0.6, 0.8, 0.2, 0.5, 0.3]) bars = ax.bar(theta, radii, width=width, bottom=0.0) for r, bar in zip(radii, bars): bar.set_facecolor(cm.jet(r/10.)) bar.set_alpha(0.6) for label in ax.get_xticklabels() + ax.get_yticklabels(): label.set_visible(False) for line in ax.get_ygridlines() + ax.get_xgridlines(): line.set_lw(0.8) line.set_alpha(0.9) line.set_ls('-') line.set_color('0.5') ax.set_yticks(np.arange(1, 9, 2)) ax.set_rmax(9) if __name__ == '__main__': main_axes = add_math_background() add_polar_bar() add_matplotlib_text(main_axes) plt.show()
(转载请注明作者和出处:http://blog.csdn.net/xiaowei_cqu 未经允许请勿用于商业用途)
发表评论
-
unity基础开发----物体位移和旋转实用代码
2013-11-21 22:46 1222using UnityEngine; using Syst ... -
Android中View绘制优化之一---- 优化布局层次
2012-09-04 23:00 970... -
Android中View绘制优化二一---- 使用<include />标签复用布局文件
2012-09-08 13:54 972... -
Android中View绘制优化之三---- 优化View
2012-09-13 21:00 1047... -
兰林任务管理应用程序雏形版以及概要说明
2012-09-15 21:54 829... -
Android中measure过程、WRAP_CONTENT详解以及xml布局文件解析流程浅析(上)
2012-10-10 18:14 1066... -
Android中measure过程、WRAP_CONTENT详解以及xml布局文件解析流程浅析(下)
2012-10-17 20:05 809... -
Android中文件选择器的实现
2012-11-30 08:59 1080... -
【编译原理】使用Lex将C/C++文件输出为HTML文件
2012-07-20 09:37 97108年9月入学,12年7月毕业,结束了我在软件学院愉快丰富的大 ... -
【编译原理】正则表达式
2012-07-21 21:49 213608年9月入学,12年7月毕业,结束了我在软件学院愉快丰富的大 ... -
【OpenCV】访问Mat图像中每个像素的值
2012-07-22 07:10 1095今天百度搜资料还搜到了自己的。。。《访问图像中每个像素的值 ... -
【编译原理】用Yacc做语法分析
2012-07-23 05:47 169708年9月入学,12年7月毕 ... -
【UML】UML几种图的绘制
2012-07-24 09:49 94208年9月入学,12年7月毕业,结束了我在软件学院愉快丰富的大 ... -
【OpenCV】邻域滤波:方框、高斯、中值、双边滤波
2012-07-26 10:52 1411邻域滤波(卷积) 邻域算子值利用给定像素 ... -
【数据结构】排序算法:希尔、归并、快速、堆排序
2012-07-28 06:15 94008年9月入学,12年7月毕 ... -
【OpenCV】角点检测:Harris角点及Shi-Tomasi角点检测
2012-07-31 13:25 1493角点 特征检测与匹配 ... -
【UML】案例分析:机场运作系统
2012-08-01 17:22 292608年9月入学,12年7月毕 ... -
【OpenCV】边缘检测:Sobel、拉普拉斯算子
2012-08-04 13:41 1469边缘 边缘(edge)是指图像局部强度变化最显著的部分。主要 ... -
【OpenCV】Canny 边缘检测
2012-08-08 10:17 1937Canny 边缘检测算法 1986 ... -
【UML】案例分析:新型超市购物自助系统
2012-08-19 01:13 125608年9月入学,12年7月毕业,结束了我在软件学院愉快丰富的大 ...
相关推荐
资源名称:Python图表绘制:matplotlib绘图库入门资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
matplotlib绘图 Matplotlib 是一个 Python 的绘图库 Matplotlib 绘图指南与功能介绍
绘图 Python matplotlib简介1
matplotlib: 一个Python 2D绘图库
对标matlab, 该文件从matplotlib从最基础的绘图讲起,详细讲述了python数据可视化的原理及图形的生成,是最基础的绘图库。文档形式为jupyter,下载后需要在jupyter上打开使用。
python中Matplotlib基本知识以及代码示例,均可运行且代码清晰
总结matplotlib绘图如何设置坐标轴刻度大小和刻度。 上代码: from pylab import * from matplotlib.ticker import MultipleLocator, FormatStrFormatter xmajorLocator = MultipleLocator(20) #将x主刻度标签设置...
完美解决Python下matplotlib绘图中文乱码问题.docx
主要介绍了Python使用matplotlib绘图无法显示中文问题的解决方法,结合具体实例形式分析了Python使用matplotlib绘图时出现中文乱码的原因与相关解决方法,需要的朋友可以参考下
Python的绘图库matplotlib快速入门.ppt
文章目录Python matplotlib绘图必知必会简介绘图例1例2例3-子绘图例4-多条曲线放在一张图中无标记有标记显示中文例1 使用matplotlib.rcParams例2 增加属性fontproperties文本显示任意位置标注任意位置箭头标注子绘图...
Python数据科学速查表 - Matplotlib 绘图.pdf
matplotlib绘图 通过 Matplotlib,开发者可以仅需要几行代码,便可以生成绘图、直方图、功率谱、条形图、错误图、散点图等。 Matplotlib基础知识 1.Matplotlib中的基本图表包括的元素 x轴和y轴 水平和垂直的轴线 x轴...
主要介绍了Python绘图Matplotlib之坐标轴及刻度总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
要画一个桃心,可以使用 Python 的绘图库 'matplotlibmatplotlib,然后可以使用以下代码绘制桃心: 该代码会将桃心图像保存为heart.png文件。
python 2.7版本,已亲测可用 # 2D 隐函数绘图,如椭圆等 # 绘制3D静态散点图 # 绘制3D静态线型图 # 绘制3D静态曲面图 # 绘制3D动态散点图 # 绘制3D动态线型图
这是 超级详细的Python & Matplotlib绘图 绘制各种图形(源代码)资源。所有内容均已经在博客中记录说明,这对于学习 Python & Matplotlib的学习会很有帮助,欢迎需要的朋友下载。
python绘图实验报告-matplotlab实验报告1.pdf
Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。