Python实现绘图散点图(scatter)
作者:不会射门的18号
这篇文章主要介绍了Python实现绘图散点图方式(scatter),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
Python绘图散点图(scatter)
绘制散点图的语法格式
如下:
plt.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, *, edgecolors=None, plotnonfinite=False, data=None, **kwargs)
x
,y
:表示数据点的位置。s
:表示数据点的大小。c
:表示数据点的颜色。marker
:表示点的样式,默认为圆形。camp
:当参数c为浮点数时才使用。alpha
:表示数据点透明度。edgecolors
:数据点边缘颜色。norm
:在0-1的范围内缩放颜色数据,映射到colormap(表示数据点的亮度)。vmin
,vmax
:表示亮度的最大与最小值,如果传入的norm参数,不需要使用vmin,vmax参数。linewidths
:表示数据点边缘的宽度。
示例:
车速与制动举例之间的关系
车速(km/h) | 制动距离(m) |
10 | 0.5 |
20 | 2.0 |
30 | 4.4 |
40 | 7.9 |
50 | 12.3 |
60 | 17.7 |
70 | 24.1 |
80 | 31.5 |
90 | 39.9 |
100 | 49.2 |
110 | 59.5 |
120 | 70.8 |
130 | 83.1 |
140 | 96.4 |
150 | 110.7 |
160 | 126.0 |
170 | 142.2 |
180 | 159.4 |
190 | 177.6 |
200 | 196.8 |
import numpy as np import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = 'SimHei'#显示中文 plt.rcParams['axes.unicode_minus'] = 'False' x_speed = np.arange(10,210,10)#生产10-200的速度区间 y_distance = np.array([0.5,2.0,4.4,7.9,12.3,17.7,24.1,31.5,39.9,49.2,59.5,70.8,83.1,96.4,110.7,126.0,142.2,159.4,177.6,196.8]) plt.scatter(x_speed,y_distance,s=50,c='red',edgecolors='blue',alpha=0.9) plt.show()
气泡图
import matplotlib.pyplot as plt # 导入颜色条库 from matplotlib import colors import numpy as np x = np.random.randn(60) # 随机产生60个X坐标 y = np.random.randn(60) # 随机产生60个Y坐标 color = np.random.rand(60) # 随机产生用于映射颜色的数值 size = 500 * np.random.rand(60) # 随机改变散点大小的数值 changecolor = colors.Normalize(vmin=0.4, vmax=0.8) plt.scatter(x, y, c=color, s = size, alpha=0.3, cmap='viridis', norm=changecolor) plt.colorbar() # 显示颜色条 plt.show()
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。