Python matplotlib
Python matplotlib
Python | Python NumPy |
Install
ubuntu で apt-get を利用してインストール
sudo apt-get install python-matplotlib
CentOS で PIPを利用してインストール
# pip install matplotlib # pip install python-dateutil # pip install pyparsing
Windows で パッケージをダウンロードしてインストール
- http://matplotlib.org/downloads.html からダウンロード
Windows で PIPを利用してインストール
- Microsoft Visual C++ Compiler for Python 2.7
- tcl ライブラリが見つからないエラー
- http://typea.info/blg/glob/2015/07/python-windows-virtualenv-tcl.html
- activate.bat に set "TCL_LIBRARY=C:\Python27\tcl\tcl8.5" を追記
- PIP
C:\Python27\Scripts>pip install matplotlib C:\Python27\Scripts>pip install python-dateutil C:\Python27\Scripts>pip install pyparsing
グラフウィンドウ
表示確認
- グラフ描画のバックエンドが何に設定されているのかとウィンドウの表示確認
>>> import matplotlib >>> matplotlib.get_backend() 'TkAgg' >>> import pylab >>> pylab.show() >>> pylab.figure() <matplotlib.figure.Figure object at 0x00000000043979E8> >>> pylab.show()
表示方法を変える
以下の中から、matplotlibのバックエンドを設定する
- ['pdf', 'pgf', 'Qt4Agg', 'GTK', 'GTKAgg', 'ps', 'agg', 'cairo', 'MacOSX', 'GTKCairo', 'WXAgg', 'template', 'TkAgg', 'GTK3Cairo', 'GTK3Agg', 'svg', 'WebAgg', 'CocoaAgg', 'emf', 'gdk', 'WX']
WebAggの例
import matplotlib matplotlib.use("WebAgg") import numpy as np import matplotlib.pyplot as plt import random fig,ax = plt.subplots() ax.bar(np.arange(10),[random.randrange(0,10) for x in range(10)],1) plt.show()
終了
- plt.cla(): Axesをクリア
- plt.clf(): figureをクリア
- plt.close(): プロットを表示するためにポップアップしたウィンドウをクローズ
例
例1
>>> from pylab import * >>> x = range(10) >>> y = [y1**2 for y1 in x] >>> plot(x, y, 'ro') [<matplotlib.lines.Line2D object at 0x0278D170>] >>> savefig('test.png') >>> show()
例2
>>> from pylab import * >>> from numpy import * >>> x = arange(-3,3,.1) >>> y = [y1**3 for y1 in x] >>> plot(x,y) [<matplotlib.lines.Line2D object at 0x02C1C270>] >>> show()
コマンド
http://matplotlib.org/api/pyplot_summary.html
Examples
サンプル
棒グラフ
>>> import numpy as np >>> import matplotlib.pyplot as plt >>> import random >>> random_data = [random.randrange(0,10) for x in range(10)] >>> random_data [0, 1, 8, 4, 5, 9, 8, 0, 4, 7] >>> fig,ax = plt.subplots() >>> ax.bar(np.arange(10),random_data,1) <Container object of 10 artists> >>> plt.show()
© 2006 矢木浩人