可视化——matploblib常见api(二)

可视化——matplotlib常用api(一)

基本命令 说明
plt.tight_layout() 针对fig, ax = plt.subplots(1, 3)
plt.axis(‘equal’) 坐标轴刻度一致
plt.legend(loc=”) center left/center/center right
upper left/upper center/upper right
lower left/lower center/lower right
right/best
cmap colormap: plt.cm.jet

ListedColormap

class ListedColormap(Colormap):
    """Colormap object generated from a list of colors. ... """
from matplotlib.colors import ListedColormap
colors = ('lightgreen', 'cyan', 'gray', 'r', 'b')
cmp = ListedColormap(colors[:np.unique(y_train)])

plt.fill_between()

我们要做出如下的效果图:




import numpy as np
import matplotlib.pyplot as plt


def main():
    x = np.arange(0, 2, .01)
    y1 = np.sin(2*np.pi*x)
    y2 = 1.2*np.sin(4*np.pi*x)

    fig, (ax1, ax2, ax3) = plt.subplots(nrows=3, ncols=1, sharex=True)
    ax1.fill_between(x, 0, y1)
    ax1.set_title('between 0 and '+r'$y_1=\sin(2\pi x)$')
    ax2.fill_between(x, y1, 1)
    ax2.set_title('between'+ r'$y_1=\sin(2\pi x)$ and 1')
    ax3.fill_between(x, y1, y2)
    ax3.set_title('between ' +r'$y_1=\sin(2\pi x)$'+ ' and '+r'$ y_2=1.2 \sin(4\pi x)$')
    ax3.set_xlabel('x')
    plt.savefig('./1.png')
    plt.show()

if __name__ == '__main__':
    main()

fill between where


可视化——matploblib常见api(二)_第1张图片


import numpy as np
import matplotlib.pyplot as plt


def main():
    x = np.arange(0, 2, .01)
    y1 = np.sin(2*np.pi*x)
    y2 = 1.2*np.sin(4*np.pi*x)
    plt.figure(figsize=(6, 4.5))
    plt.plot(x, y1, x, y2, 'k')
    plt.fill_between(x, y1, y2, y1>=y2, facecolor='g')
                            # where=y1>=y2
    plt.fill_between(x, y1, y2, y1<y2, facecolor='r')
    plt.savefig('./2.png')
    plt.show()

if __name__ == '__main__':
    main()

plt.step() 与 plt.bar()

  • plt.bar(range(1, len(x)), x, alpha=.4, align=’center’, label=’individual’)

  • plt.step(range(1, 14), np.cumsum(x), where=’mid’, label=’cumsum’)

x = [ 4.8923083 2.46635032 1.42809973 1.01233462 0.84906459 0.60181514 0.52251546 0.08414846 0.33051429 0.29595018 0.16831254 0.21432212 0.2399553 ] tot = sum(x) x = [i/tol for i in x] plt.bar(range(1, len(x)), x, alpha=.4, align='center', label='individual') plt.step(range(1, len(x)), np.cumsum(x), where='mid', label='cumsum') plt.legend(loc='best', frameon=False) plt.show()


可视化——matploblib常见api(二)_第2张图片

References

[1] plot fill between demo

你可能感兴趣的:(可视化——matploblib常见api(二))