美文网首页
Python散点图与三维图

Python散点图与三维图

作者: 瓊遮藤 | 来源:发表于2019-05-24 18:36 被阅读0次

    写在前面的话

      省得每次都去百度,于是就摘抄一下Python画图方法和代码。

    画二维散点图

    import numpy as np
    import matplotlib.pyplot as plt 
    
    #假设已经定好data_pos = ...
    x = data_pos[:, 0]
    y = data_pos[:, 1]
    plt.ylim(ymax=20, ymin=0) #限定Y轴的范围
    plt.plot(x, y, 'ro') # ro表示用红色圆点来表示点
    plt.show()
    

    一个很不具代表性的散点图如下:


    image.png

    画直方图

    import numpy as np
    import matplotlib.pyplot as plt
    
    #假设已经定好data_pos = ...
    x = data_pos[:, 0]
    y = np.arange(0, 20, 1) 
    #上面 y实际是统计的区域段,这里为0-1,1-2,2-3,3-4这样以1为步长,一直到19-20
    
    plt.hist(x, y, histtype='bar', rwidth=0.8)
    
    image.png

    画三维散点图

    import matplotlib.pyplot as plt
    from mpl_toolkits.mplot3d import Axes3D
    
    #假设已经定好data_pos = ...
    fig = plt.figure()
    ax = Axes3D(fig)
    x = data_pos[:, 0]  
    y = data_pos[:, 1]  
    z = data_pos[:, 2] 
    ax.scatter(x, y, z, c='r')
    
    # 设置X、Y、Z轴的名字显示,用刺眼的红色
    ax.set_zlabel('Z', fontdict={'size': 15, 'color': 'red'})
    ax.set_ylabel('Y', fontdict={'size': 15, 'color': 'red'})
    ax.set_xlabel('X', fontdict={'size': 15, 'color': 'red'})
    plt.show()
    

    画三维曲面

    import matplotlib.pyplot as plt
    from mpl_toolkits.mplot3d import Axes3D
    
    fig = plt.figure()
    ax = Axes3D(fig)
    
    # 假设曲面方程为coef[0]*X + coef[1]*Y + coef[2]*z + coef[3]= 0
    # 画这个曲面要先确定好其中两个轴的取值范围,然后z通过曲面方程公式表示出来
    X = np.arange(-10, 100, 1)
    Y = np.arange(-10, 100, 1) 
    coef = np.array([1,2,3,4])
    X, Y = np.meshgrid(X, Y)
    z = (-coef[3]- coef[0]*X - coef[1]*Y)/coef[2]
    ax.plot_surface(X, Y, z, rstride=1, cstride=1, cmap='rainbow')
    plt.show()
    

    相关文章

      网友评论

          本文标题:Python散点图与三维图

          本文链接:https://www.haomeiwen.com/subject/azraaqtx.html