参考自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、基本的使用方法如下:
- #导入必要的模块
- import numpy as np
- import matplotlib.pyplot as plt
- #产生测试数据
- x = np.arange(1,10)
- y = x
- fig = plt.figure()
- ax1 = fig.add_subplot(111)
- #设置标题
- ax1.set_title('Scatter Plot')
- #设置X轴标签
- plt.xlabel('X')
- #设置Y轴标签
- plt.ylabel('Y')
- #画散点图
- ax1.scatter(x,y,c = 'r',marker = 'o')
- #设置图标
- plt.legend('x1')
- #显示所画的图
- plt.show()
结果如下:
5、当scatter后面参数中数组的使用方法,如s,当s是同x大小的数组,表示x中的每个点对应s中一个大小,其他如c,等用法一样,如下:
(1)、不同大小
- #导入必要的模块
- import numpy as np
- import matplotlib.pyplot as plt
- #产生测试数据
- x = np.arange(1,10)
- y = x
- fig = plt.figure()
- ax1 = fig.add_subplot(111)
- #设置标题
- ax1.set_title('Scatter Plot')
- #设置X轴标签
- plt.xlabel('X')
- #设置Y轴标签
- plt.ylabel('Y')
- #画散点图
- sValue = x*10
- ax1.scatter(x,y,s=sValue,c='r',marker='x')
- #设置图标
- plt.legend('x1')
- #显示所画的图
- plt.show()
(2)、不同颜色
- #导入必要的模块
- import numpy as np
- import matplotlib.pyplot as plt
- #产生测试数据
- x = np.arange(1,10)
- y = x
- fig = plt.figure()
- ax1 = fig.add_subplot(111)
- #设置标题
- ax1.set_title('Scatter Plot')
- #设置X轴标签
- plt.xlabel('X')
- #设置Y轴标签
- plt.ylabel('Y')
- #画散点图
- cValue = ['r','y','g','b','r','y','g','b','r']
- ax1.scatter(x,y,c=cValue,marker='s')
- #设置图标
- plt.legend('x1')
- #显示所画的图
- plt.show()
结果:
(3)、线宽linewidths
- #导入必要的模块
- import numpy as np
- import matplotlib.pyplot as plt
- #产生测试数据
- x = np.arange(1,10)
- y = x
- fig = plt.figure()
- ax1 = fig.add_subplot(111)
- #设置标题
- ax1.set_title('Scatter Plot')
- #设置X轴标签
- plt.xlabel('X')
- #设置Y轴标签
- plt.ylabel('Y')
- #画散点图
- lValue = x
- ax1.scatter(x,y,c='r',s= 100,linewidths=lValue,marker='o')
- #设置图标
- plt.legend('x1')
- #显示所画的图
- plt.show()
注: 这就是scatter基本的用法。