后端程序员之路 15、Matplotlib

Matplotlib: Python plotting — Matplotlib 2.0.0 documentation
http://matplotlib.org/

matplotlib-绘制精美的图表 — 用Python做科学计算
http://old.sebug.net/paper/books/scipydoc/matplotlib_intro.html

Thumbnail gallery — Matplotlib 2.0.0 documentation
http://matplotlib.org/gallery.html

Matplotlib提供了一套和matlab相似的命令api,可以画出各种各样强大又美观的图
随便贴两个图的代码:

import numpy as np
import matplotlib.pyplot as plt

def graph1():
    x = np.linspace(0, 10, 1000)
    y = np.sin(x)
    z = np.cos(x**2)
    plt.figure(figsize=(8,4))
    plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)
    plt.plot(x,z,"b--",label="$cos(x^2)$")
    plt.xlabel("Time(s)")
    plt.ylabel("Volt")
    plt.title("PyPlot First Example")
    plt.ylim(-1.2,1.2)
    plt.legend()
    plt.show()

def graph2():
    x = np.linspace(0, 2*np.pi, 50)
    y = np.sin(x)
    y2 = y + 0.1 * np.random.normal(size=x.shape)
    fig, ax = plt.subplots()
    ax.plot(x, y, 'k--')
    ax.plot(x, y2, 'ro')

    ax.set_xlim((0, 2*np.pi))
    ax.set_xticks([0, np.pi, 2*np.pi])
    ax.set_xticklabels(['0', '$pi$', '2$pi$'])
    ax.set_ylim((-1.5, 1.5))
    ax.set_yticks([-1, 0, 1])

    ax.spines['left'].set_bounds(-1, 1)
    ax.spines['right'].set_visible(False)
    ax.spines['top'].set_visible(False)
    ax.yaxis.set_ticks_position('left')
    ax.xaxis.set_ticks_position('bottom')
    plt.show()

原文地址:https://www.cnblogs.com/zapline/p/6558852.html