python Matplotlib数据可视化神器安装与基本应用

Matplotlib

Matplotlib 是一个非常强大的 Python 画图工具; 手中有很多数据, Matplotlib能帮你画出美丽的:

  • 线图;
  • 散点图;
  • 等高线图;
  • 条形图;
  • 柱状图;
  • 3D 图形,
  • 甚至是图形动画等等.

Linux

打开 Terminal 窗口, 输入以下内容

# python 3+ 请复制以下在 terminal 中执行
$ sudo apt-get install python3-matplotlib # python 2+ 请复制以下在 terminal 中执行
$ sudo apt-get install python-matplotlib

MacOS

打开 Terminal 窗口, 输入以下内容

# python 3+ 请复制以下在 terminal 中执行
$ pip3 install matplotlib # python 2+ 请复制以下在 terminal 中执行
$ pip install matplotlib

Windows

Windows 的安装最麻烦. 我们一步步来:

python Matplotlib数据可视化神器安装与基本应用

    matplotlib-1.5.3-cp35-cp35m-win32.whl (md5)
1.5.3 : plt版本
cp35 : python 版本
win32 : Windows 32位系统
whl : wheel 文件
  • 用 CMD 找到这个 .whl 文件目录, 然后 pip 安装. 以 matplotlib-1.4.3-cp35-none-win32.whl文件为例:
$ cd python_work   # 用 cd 去到你下载的文件目录

# 如果是 python 3+ 版本, 像下面一样
python_work$ python -m pip3 install matplotlib-1.4.3-cp35-none-win32.whl
  • 如果安装不成功, 还有一种方法可以简便安装所有科学运算模块. 可以搜索一下 Anaconda python

基础应用

使用import导入模块matplotlib.pyplot,并简写成plt 使用import导入模块numpy,并简写成np

import matplotlib.pyplot as plt
import numpy as np

使用np.linspace定义x:范围是(-1,1);个数是50. 仿真一维数据组(x ,y)表示曲线1.

x = np.linspace(-1, 1, 50)
y = 2*x + 1

使用plt.figure定义一个图像窗口. 使用plt.plot画(x ,y)曲线. 使用plt.show显示图像.

plt.figure()
plt.plot(x, y)
plt.show()

python Matplotlib数据可视化神器安装与基本应用

此外,还可以绘制很多不同的图案,就像下面几个例子:

曲线图

python Matplotlib数据可视化神器安装与基本应用
 
>>> import matplotlib.pyplot as plt
>>> import numpy as np
>>> a = np.linspace(0,10,100)
>>> b = np.exp(-a)
>>> plt.plot(a,b)
>>> plt.show()

直方图

python Matplotlib数据可视化神器安装与基本应用
 
>>> import matplotlib.pyplot as plt
>>> from numpy.random import normal,rand
>>> x = normal(size=200)
>>> plt.hist(x,bins=30)
>>> plt.show()

散点图

python Matplotlib数据可视化神器安装与基本应用
 
>>> import matplotlib.pyplot as plt
>>> from numpy.random import rand
>>> a = rand(100)
>>> b = rand(100)
>>> plt.scatter(a,b)
>>> plt.show()

3D 图

python Matplotlib数据可视化神器安装与基本应用
 
>>> from matplotlib import cm
>>> from mpl_toolkits.mplot3d import Axes3D
>>> import matplotlib.pyplot as plt
>>> import numpy as np
>>> fig = plt.figure()
>>> ax = fig.gca(projection='3d')
>>> X = np.arange(-5, 5, 0.25)
>>> Y = np.arange(-5, 5, 0.25)
>>> X, Y = np.meshgrid(X, Y)
>>> R = np.sqrt(X**2 + Y**2)
>>> Z = np.sin(R)
>>> surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=cm.coolwarm)
>>> plt.show()

更多例子

  • python Matplotlib数据可视化神器安装与基本应用

    Image plot

  • python Matplotlib数据可视化神器安装与基本应用

    Contour plot

  • python Matplotlib数据可视化神器安装与基本应用

    Scatter plot

  • python Matplotlib数据可视化神器安装与基本应用

    Polar plot

  • python Matplotlib数据可视化神器安装与基本应用

    Line plot

  • python Matplotlib数据可视化神器安装与基本应用

    3-D plot

  • python Matplotlib数据可视化神器安装与基本应用

    Image plot

 
上一篇:jQuery 简单过滤选择器


下一篇:python matplotlib数据可视化