python中用于绘图是matplotlib模块中的pyplot类,直接使用plot()函数绘制出的是折线图。而绘制散点图使用的是scatter()函数。
直接看下面的代码
#-*- coding: UTF-8 -*-
import matplotlib.pyplot as plt
def scatter_test():
#define points list
points = [(10, 20), (25, 40), (80, 60), (60, 90), (10, 20), (80, 90), (50, 60), (30, 80)]
x, y = zip(*points)
plt.figure()
plt.scatter(x, y)
plt.show()
return
def main():
scatter_test()
return
if __name__ == "__main__":
main()
其中zip()函数的作用是将散点list解析成x和y的list,相当于x = [10, 25, 80, 60, 10, 80, 50, 30], y = [20, 40, 60, 90, 20, 90, 60, 80]
这样的散点图示默认的颜色和形状,我们可以通过指定color和marker属性,指定散点的颜色和形状。
python中支持的颜色如下图所示,可参考【python图像处理】python中定义的颜色中的介绍。
若使用plt.scatter(x, y, color = 'red'),则可得到如下散点图
另外,还可以使用#加6位16进制颜色码,指定任意颜色,如plt.scatter(x, y, color = '#00FF00'),绘制结果如下
除了指定散点的颜色外,我们还可指定散点的形状,python中支持的散点形状如下两图所示
若使用plt.scatter(x, y, color = 'green', marker ='*'),则绘制结果如下:
2017.09.18