v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}

1.1

1.2

1.2.1

1.2.2

1.3

 

1.1   简介

matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中。

 

http://matplotlib.org/

http://my.oschina.net/bery/blog/203595

 

需要安装(可以从csdn下载Python2.7版本的几个包)

dateutil

pyparsing

安装问题:

>>>

Traceback (most recent call last):

  File "D:/Python279/tdrawf1.py", line 1, in <module>

    from matplotlib.matlab import *

  File "D:\Python279\lib\site-packages\matplotlib\__init__.py", line 105, in <module>

    import six

ImportError: No module named six

办法:

Copy six.py and six.pyc to \Lib.

 

帮助:

http://labix.org/python-dateutil

 

1.2   应用实例

1.2.1   实例1

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()

 

1.2.2   实例

http://blog.csdn.net/xiaowei_cqu/article/details/8272367

 

"""

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()

 

1.3   三维绘图

https://pypi.python.org/pypi/mayavi

安装:

Prerequisites

You must have the following libraries installed before installing the Mayavi project:

·         Numpy version 1.1.1 or later

·         VTK version 5.0 or later

·         wxPython version 2.8 or later

·         configobj

 

http://www.vtk.org/VTK/resources/software.html

 

 

1.4   参考资料

 

 

 

http://www.ibm.com/developerworks/cn/linux/l-matplotlib/index.html

http://www.cnblogs.com/petali/archive/2009/07/30/1417410.html

非常好的资料:2.7下运行有错误提示

http://www.ibm.com/developerworks/cn/linux/l-matplotlib/

 

800x600

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman",serif;}

Python_14-绘图的更多相关文章

  1. Canvas绘图之平移translate、旋转rotate、缩放scale

    画布操作介绍 画布绘图的环境通过translate(),scale(),rotate(), setTransform()和transform()来改变,它们会对画布的变换矩阵产生影响. 函数 方法 描 ...

  2. 用html5的canvas和JavaScript创建一个绘图程序

    本文将引导你使用canvas和JavaScript创建一个简单的绘图程序. 创建canvas元素 首先准备容器Canvas元素,接下来所有的事情都会在JavaScript里面. <canvas ...

  3. echarts+php+mysql 绘图实例

    最近在学习php+mysql,因为之前画图表都是直接在echart的实例demo中修改数据,便想着两相结合练习一下,通过ajax调用后台数据画图表. 我使用的是echart3,相比较第二版,echar ...

  4. html5 canvas常用api总结(二)--绘图API

    canvas可以绘制出很多奇妙的样式和美丽的效果,通过几个简单的api就可以在画布上呈现出千变万化的效果,还可以制作网页游戏,接下来就总结一下和绘图有关的API. 绘画的时候canvas相当于画布,而 ...

  5. HTML5_04之SVG绘图

    1.关于Canvas绘制图像: 问题:需要绘制多张图片时,必须等待所有图片加载完成才能开始绘制:而每张图片都是异步请求,彼此没有先后顺序,哪一张先加载完成完全无法预测: 方案: var progres ...

  6. HTML5 学习总结(四)——canvas绘图、WebGL、SVG

    一.Canvas canvas是HTML5中新增一个HTML5标签与操作canvas的javascript API,它可以实现在网页中完成动态的2D与3D图像技术.<canvas> 标记和 ...

  7. AR创意分享:儿童涂鸦遇上程序绘图

    第一节 临摹 小明经常临摹同桌小美的画作. 美术课上,老师表扬了小美的新作. 图1.1 小美的作品<蒙娜·毛虫的微笑> 临,是照着原作画:摹,是用薄纸张蒙在原作上面画. 第二节 借画 小明 ...

  8. C# 一段绘图代码 在form_load事件不能显示图

    今天无意将一段绘图代码 写在form_load事件了,结果不能显示绘图.(代码:Graphics g = this.CreateGraphics();Pen pen = new Pen(Color.R ...

  9. HTML5学习总结——canvas绘制象棋(canvas绘图)

    一.HTML5学习总结——canvas绘制象棋 1.第一次:canvas绘制象棋(笨方法)示例代码: <!DOCTYPE html> <html> <head> & ...

  10. Windows Form调用R进行绘图并显示

    R软件功能非常强大,可以很好的进行各类统计,并能输出图形.下面介绍一种R语言和C#进行通信的方法,并将R绘图结果显示到WinForm UI界面上. 1 前提准备 安装R软件,需要安装32位的R软件,6 ...

随机推荐

  1. 用百度地图API打造方便自己使用的手机地图

    有钱人咱就不说了,因为偶是个穷银--因为穷,所以去年买的Huawei C8650+到现在还在上岗,对于没有钱买好的配置的手机的童鞋来说,类似于百度,谷歌,高德等商家的地图在自己的机器上跑起来确实是有点 ...

  2. 如何用 Java 实现 Web 应用中的定时任务

    定时任务,是指定一个未来的时间范围执行一定任务的功能.在当前WEB应用中,多数应用都具备任务调度功能,针对不同的语音,不同的操作系统, 都有其自己的语法及解决方案,windows操作系统把它叫做任务计 ...

  3. Sphinx 匹配模式

    所谓匹配模式就是用户如何根据关键字在索引库中查找相关的记录. SPH_MATCH_ALL, 匹配所有查询分词(默认模式); 如“手机配件”,不匹配 “我有一部手机”,但可以匹配 “手机坏了,需要找配件 ...

  4. C#编程的几个建议

    1.属性(properties) 抽象属性可以放在接口的定义里.如: public interface INameValuePair<T>     {         string Nam ...

  5. 转载 matlab矩阵数组常用操作

    一. length             返回矩阵最长维的的长度    ndims       返回维数          numel      返回矩阵元素个数size               ...

  6. jQuery的ajax跨域实现

    今天有人问我跨域ajax请求是否可以发送,之前没接触过此类问题,没答上,后来查了下,以下备忘. 我在本地建了三个站点,并设置了host文件模拟跨子域和跨全域 coolkissbh.com blog.c ...

  7. jq添加和移除事件的方法,prop和attr

    会在写条件判断的时候遇到,今天在判断没有剩余产品的时候,移除事件.当有产品的时候添加事件: 移除onClick事件: $("a").removeAttr("onclick ...

  8. XMemcached使用经历

    XMemcached就是Memcached的java客户端之一,目前项目里用到了.据说它比起其他的java客户端从性能上要好一点,实现方式是NIO的.先看怎么实例化出来一个Memcached客户端吧: ...

  9. mysql复制原理与机制一

    复制原理:复制需要二进制日志记录数据库上的改变 slave的IO线程复制把master上的Binary log读取到本地的relay log里SQL线程负责把relay log恢复到数据库数据里 sh ...

  10. org.apache.hadoop.security.AccessControlException: Permissiondenied: user=liuyingping, access=WRITE,inode="/user/root/output":root:supergroup:drwxr-xr-x

    原因: 权限问题.用户liuyingping没有访问hdfs下文件的权限. 参考:HDFS客户端的权限错误:Permission denied 解决方案(推荐): 在系统的环境变量添加HADOOP_U ...