zoukankan      html  css  js  c++  java
  • python学习之matplotlib实战2

    import numpy as np
    import matplotlib.pyplot as plt
    def main():
        #scatter
        fig = plt.figure()
        ax = fig.add_subplot(3,3,1)
        n = 128
        X = np.random.normal(0,1,n)
        Y = np.random.normal(0,1,n)
        T = np.arctan2(Y,X)
        #plt.axes([0.025,0.025,0.95,0.95])
        ax.scatter(X,Y,s=75,c=T,alpha=.5)
        plt.xlim(-1.5,1.5), plt.xticks([])
        plt.ylim(-1.5,1.5), plt.yticks([])
        plt.axis()
        plt.title('scatter')
        plt.xlabel('x')
        plt.ylabel('y')
    
        #bar
        fig.add_subplot(332)
        n =10
        X=np.arange(n)
        Y1=(1-X / float(n))* np.random.uniform(0.5,1.0,n)
        Y2=(1-X / float(n))* np.random.uniform(0.5,1.0,n)
        plt.bar(X,+Y1,facecolor='#9999ff', edgecolor='white')
        plt.bar(X, -Y2, facecolor='#ff9999', edgecolor='white')
        for x,y in zip(X,Y1):
            plt.text(x + 0.4, y + 0.05,'%.2f' %y,ha='center', va = 'bottom')
        for x,y in zip(X,Y2):
            plt.text(x+0.4,-y - 0.05, '%.2f' %y, ha='center',va ='top')
    
        #Pie
        fig.add_subplot(333)
        n = 20
        Z = np.ones(n)
        Z[-1] *=2
        plt.pie(Z,explode=Z * .05,colors=['%f' % (i / float(n)) for i in range(n)],
                labels=['%.2f' % (i/float(n)) for i in range(n)])
        plt.gca().set_aspect('equal')
        plt.xticks([]),plt.yticks([])
    
        #polar
        fig.add_subplot(334,polar =True)
        n = 20
        theta = np.arange(0.0, 2* np.pi, 2*np.pi /n)
        radii = 10 * np.random.rand(n)
       # plt.plot(theta, radii)
        plt.polar(theta,radii)
        #heatmap
        fig.add_subplot(335)
        from matplotlib import cm
        data = np.random.rand(3,3)
       # print(data)
        cmap =cm.Blues
        map= plt.imshow(data,interpolation='nearest',cmap=cmap,aspect='auto',vmin=0,vmax=1)
        #3D
        from mpl_toolkits.mplot3d import Axes3D
        ax = fig.add_subplot(336,projection='3d')
        ax.scatter(1,1,3,s =100)
        #hot map
        fig.add_subplot(313)
        def f(x,y):
            return (1 - x/2 + x**5 +y **3) * np.exp(-x **2, -y**2)
        n=256
        x = np.linspace(-3,3,n)
        y = np.linspace(-3,3,n)
        X,Y = np.meshgrid(x,y)
        plt.contourf(X,Y,f(X,Y),8,alpha=.75,cmap=plt.cm.hot)
        plt.savefig('D:/fig.png')
        plt.show()
    
    if __name__ == '__main__':
        main()
  • 相关阅读:
     sublime text3快速生成html头部信息(转)
    电脑同时安装Python2和Python3以及virtualenvwrapper(转)
    在windows下使用多版本Python安装相应的虚拟开发环境
    win10+wget 收藏
    关于OS_PRIO_SELF的说明
    select菜单实现二级联动
    HeadFirst设计模式笔记:(六)命令模式 —— 封装调用
    rnqoj-57-找啊找啊找GF-二维背包
    UILable:显示多种颜色的方法
    动态规划晋级——POJ 3254 Corn Fields【状压DP】
  • 原文地址:https://www.cnblogs.com/gylhaut/p/9122668.html
Copyright © 2011-2022 走看看