zoukankan      html  css  js  c++  java
  • python的matplotlib散点图

    读完此片文章你将获得:

    了解scatter函数的每个参数的含义;

    掌握使用matplotlib画散点图的方法;

    正文:

    1.matplotlib的散点图函数

    matplotlib.pyplot.scatter(x,y,s=None,c=None,marker=None,cmap=None,norm=None,vmin=None,vmax=None,alpha=None,linewidths=None,verts=None,edgecolors=None, hold=None, data=None, **kwargs)

    2.参数:

    x,y :形如shape(n,)的数组,可选值  

    s :点的大小(也就是面积)默认20  

    c: 点的颜色或颜色序列,默认蓝色  

    marker: 形状,可选值,默认是圆  

    cmap:颜色映射,如果c为浮点型数组时,camp是非常有用的。  

    vmin,vmaxvminvmax被用于与norm一起标准化亮度数据。如果没有,则使用颜色数组的最小值和最大值。如果您通过一个规范实例,vminvmax将被忽略。  

    linewidths:线条的宽度  

    vert:如果marker值为0时,vert用来构建形状。  

    alpha:标量,可选,默认值:无, 0(透明)和1(不透明)之间的alpha混合值  

    edgecolors:边缘颜色或颜色序列,可选值,默认值:None  

    hold:为了同时在一个图上画多条曲线,可以使用hold关键字  

    拓展:get_cmap中取值可为:Possible values are: Accent, Accent_r, Blues, Blues_r, BrBG, BrBG_r, BuGn, BuGn_r, BuPu, BuPu_r, CMRmap, CMRmap_r, Dark2, Dark2_r, GnBu, GnBu_r, Greens, Greens_r, Greys, Greys_r, OrRd, OrRd_r, Oranges, Oranges_r, PRGn, PRGn_r, Paired, Paired_r, Pastel1, Pastel1_r, Pastel2, Pastel2_r, PiYG, PiYG_r, PuBu, PuBuGn, PuBuGn_r, PuBu_r, PuOr, PuOr_r, PuRd, PuRd_r, Purples, Purples_r, RdBu, RdBu_r, RdGy, RdGy_r, RdPu, RdPu_r, RdYlBu, RdYlBu_r, RdYlGn, RdYlGn_r, Reds, Reds_r, Set1, Set1_r, Set2, Set2_r, Set3, Set3_r, Spectral, Spectral_r, Wistia, Wistia_r, YlGn, YlGnBu, YlGnBu_r, YlGn_r, YlOrBr, YlOrBr_r, YlOrRd, YlOrRd_r...其中末尾加r是颜色取反。

    3.实例

    ①x,y参数的使用

    import numpy as np  
    import matplotlib.pyplot as plt  
    N = 1000 
    #采用numpy的random函数,将会产生1000个1.0左右的实数 x 
    = np.random.randn(N)   y = np.random.randn(N)   plt.scatter(x, y)   plt.show()  

     ② s(size):点面积,参数的使用实例

    import numpy as np  
    import matplotlib.pyplot as plt  
    N = 1000  
    x = np.random.randn(N)  
    y = np.random.randn(N)  
    plt.scatter(x, y,s=x*20)  
    plt.show()  

     ③ c,marker图案颜色及形状参数

    import numpy as np  
    import matplotlib.pyplot as plt  
    N = 1000  
    x = np.random.randn(N)  
    y = np.random.randn(N)  
    color = ['r','y','k','g','m']  
    plt.scatter(x, y,c=color,marker='>')  
    plt.show()  

     ④alpha 透明度,参数的使用

    import numpy as np  
    import matplotlib.pyplot as plt  
    N = 1000  
    x = np.random.randn(N)  
    y = np.random.randn(N)  
    plt.scatter(x, y,alpha=0.5)  
    plt.show()  

     ⑤get_cmap()颜色渐变参数的使用,colorbar颜色条的使用

    import numpy as np  
    import matplotlib.pyplot as plt  
    N = 1000  
    x = np.random.randn(N)  
    y = np.random.randn(N)  
    cm=plt.cm.get_cmap('RdYlBu')  
    sc=plt.scatter(x, y,c=x,cmap=cm)  
    plt.colorbar(sc)  
    plt.show()  

     ⑥linewidth图案边界宽度,edgecolar图案边界颜色

    import numpy as np  
    import matplotlib.pyplot as plt  
    N = 1000  
    x = np.random.randn(N)  
    y = np.random.randn(N)  
    plt.scatter(x, y,linewidth=[1]*1000,edgecolors=['r','y','g','pink'])  
    plt.show()  

    非学无以广才,非志无以成学。 正是因为今天的不完美,才对未来充满希望。 ----长帆
  • 相关阅读:
    c++:函数模板
    1084 外观数列
    1083 是否存在相等的差
    1082 射击比赛
    1081 检查密码
    1080 MOOC期终成绩
    1079 延迟的回文数
    1078 字符串压缩与解压
    1077 互评成绩计算
    1076 Wifi密码
  • 原文地址:https://www.cnblogs.com/changfan/p/11773541.html
Copyright © 2011-2022 走看看