python+numpy+scipy=matlab,抛弃matlab

本文主要介绍如何利用python实现matlab的功能,实现这个功能要用到python的三个第三方库,基于的操作系统是archlinux。其他的系统也是同样的方法。

安装

  • pyhton:就到官网下载安装,很多linux下是本身就安装的。

  • linux系统安装numpy,scipy,matplotlib如下:

    <!--lang: shell-->
    #archlinux系统下
    pacman -S python-numpy python-scipy python-matplotlib 
    #ubuntu系统下    
    sudo apt-get install python-numpy python-scipy python-matplotlib 
    
  • windows系统安装numpy,scipy,matplotlib如下:
    到Unofficial Windows Binaries for Python Extension Packages中找到相应的版本
    的三个软件安装即可,具体过程和所有的windows安装一样

实例

创建一个python的脚本,将下面代码复制好,运行后你会看到美丽的画面:

  • 代码如下:

    
    #!/usr/bin/env python
    
    """
    Show how to make date plots in matplotlib using date tick locators and
    formatters.  See major_minor_demo1.py for more information on
    controlling major and minor ticks
    """
    from __future__ import print_function
    import datetime
    from pylab import figure, show
    from matplotlib.dates import MONDAY
    from matplotlib.finance import quotes_historical_yahoo
    from matplotlib.dates import MonthLocator, WeekdayLocator, DateFormatter
    
    date1 = datetime.date( 2002, 1, 5 )
    date2 = datetime.date( 2003, 12, 1 )
    
    # every monday
    mondays   = WeekdayLocator(MONDAY)
    
    # every 3rd month
    months    = MonthLocator(range(1,13), bymonthday=1, interval=3)
    monthsFmt = DateFormatter("%b '%y")
    
    quotes = quotes_historical_yahoo('INTC', date1, date2)
    if len(quotes) == 0:
        print ('Found no quotes')
        raise SystemExit
    
    dates = [q[0] for q in quotes]
    opens = [q[1] for q in quotes]
    
    fig = figure()
    ax = fig.add_subplot(111)
    ax.plot_date(dates, opens, '-')
    ax.xaxis.set_major_locator(months)
    ax.xaxis.set_major_formatter(monthsFmt)
    ax.xaxis.set_minor_locator(mondays)
    ax.autoscale_view()
    #ax.xaxis.grid(False, 'major')
    #ax.xaxis.grid(True, 'minor')
    ax.grid(True)
    
    fig.autofmt_xdate()
    
    show()
    
  • 运行结果:

    运行结果

你可能感兴趣的:(python,matplotlib,scipy,numpy)