zoukankan      html  css  js  c++  java
  • matplotlib绘制散点图

    参考自Matplotlib Python 画图教程 (莫烦Python)(10)_演讲•公开课_科技_bilibili_哔哩哔哩 https://www.bilibili.com/video/av16378354/index_10.html#page=10

    """散点图绘制"""
    
    
    import numpy as np
    import matplotlib.pyplot as plt
    
    n = 1024
    x = np.random.normal(0, 1, n)  # 平均值为0,方差为1,生成1024个数
    y = np.random.normal(0, 1, n)
    t = np.arctan2(x, y)  # for color value,对应cmap
    
    plt.scatter(x, y, s=75, c=t, alpha=0.5)   # s为size,按每个点的坐标绘制,alpha为透明度
    plt.xlim(-1.5, 1.5)
    plt.ylim(-1.5, 1.5)
    plt.xticks([])
    plt.yticks([])
    plt.show()

     

    更详细来自【数字的可视化:python画图之散点图sactter函数详解】 - CSDN博客 http://blog.csdn.net/u013634684/article/details/49646311

    最近开始学习python编程,遇到scatter函数,感觉里面的参数不知道什么意思于是查资料,最后总结如下:

    1、scatter函数原型

    2、其中散点的形状参数marker如下:

    3、其中颜色参数c如下:

    4、基本的使用方法如下:

    [python] view plain copy
     
    1. #导入必要的模块  
    2. import numpy as np  
    3. import matplotlib.pyplot as plt  
    4. #产生测试数据  
    5. x = np.arange(1,10)  
    6. y = x  
    7. fig = plt.figure()  
    8. ax1 = fig.add_subplot(111)  
    9. #设置标题  
    10. ax1.set_title('Scatter Plot')  
    11. #设置X轴标签  
    12. plt.xlabel('X')  
    13. #设置Y轴标签  
    14. plt.ylabel('Y')  
    15. #画散点图  
    16. ax1.scatter(x,y,c = 'r',marker = 'o')  
    17. #设置图标  
    18. plt.legend('x1')  
    19. #显示所画的图  
    20. plt.show()  

    结果如下:

    5、当scatter后面参数中数组的使用方法,如s,当s是同x大小的数组,表示x中的每个点对应s中一个大小,其他如c,等用法一样,如下:

    (1)、不同大小

    [python] view plain copy
     
    1. #导入必要的模块  
    2. import numpy as np  
    3. import matplotlib.pyplot as plt  
    4. #产生测试数据  
    5. x = np.arange(1,10)  
    6. y = x  
    7. fig = plt.figure()  
    8. ax1 = fig.add_subplot(111)  
    9. #设置标题  
    10. ax1.set_title('Scatter Plot')  
    11. #设置X轴标签  
    12. plt.xlabel('X')  
    13. #设置Y轴标签  
    14. plt.ylabel('Y')  
    15. #画散点图  
    16. sValue = x*10  
    17. ax1.scatter(x,y,s=sValue,c='r',marker='x')  
    18. #设置图标  
    19. plt.legend('x1')  
    20. #显示所画的图  
    21. plt.show()  

    (2)、不同颜色

    [python] view plain copy
     
    1. #导入必要的模块  
    2. import numpy as np  
    3. import matplotlib.pyplot as plt  
    4. #产生测试数据  
    5. x = np.arange(1,10)  
    6. y = x  
    7. fig = plt.figure()  
    8. ax1 = fig.add_subplot(111)  
    9. #设置标题  
    10. ax1.set_title('Scatter Plot')  
    11. #设置X轴标签  
    12. plt.xlabel('X')  
    13. #设置Y轴标签  
    14. plt.ylabel('Y')  
    15. #画散点图  
    16. cValue = ['r','y','g','b','r','y','g','b','r']  
    17. ax1.scatter(x,y,c=cValue,marker='s')  
    18. #设置图标  
    19. plt.legend('x1')  
    20. #显示所画的图  
    21. plt.show()  

    结果:

    (3)、线宽linewidths

    [python] view plain copy
     
    1. #导入必要的模块  
    2. import numpy as np  
    3. import matplotlib.pyplot as plt  
    4. #产生测试数据  
    5. x = np.arange(1,10)  
    6. y = x  
    7. fig = plt.figure()  
    8. ax1 = fig.add_subplot(111)  
    9. #设置标题  
    10. ax1.set_title('Scatter Plot')  
    11. #设置X轴标签  
    12. plt.xlabel('X')  
    13. #设置Y轴标签  
    14. plt.ylabel('Y')  
    15. #画散点图  
    16. lValue = x  
    17. ax1.scatter(x,y,c='r',s= 100,linewidths=lValue,marker='o')  
    18. #设置图标  
    19. plt.legend('x1')  
    20. #显示所画的图  
    21. plt.show()  

                         注:  这就是scatter基本的用法。

  • 相关阅读:
    wpf随笔
    XGrid绑定(转)
    SQL Server 批量插入数据的两种方法(转)
    UdpClient的Connect究竟做了什么(转)
    InvokeHelper,让跨线程访问/修改主界面控件不再麻烦(转)
    [C#] Control.Invoke方法和跨线程访问控件
    多线程访问winform控件出现异常的解决方法
    http://www.jdon.com/mda/oo_relation.html
    三范式浅析(转)
    SQL 表锁(转)
  • 原文地址:https://www.cnblogs.com/laumians-notes/p/8228426.html
Copyright © 2011-2022 走看看