@_copy_docstring_and_deprecators(Axes.scatter)
def scatter(
x, y, s=None, c=None, marker=None, cmap=None, norm=None,
vmin=None, vmax=None, alpha=None, linewidths=None,
verts=cbook.deprecation._deprecated_parameter,
edgecolors=None, *, plotnonfinite=False, data=None, **kwargs):
__ret = gca().scatter(
x, y, s=s, c=c, marker=marker, cmap=cmap, norm=norm,
vmin=vmin, vmax=vmax, alpha=alpha, linewidths=linewidths,
verts=verts, edgecolors=edgecolors,
plotnonfinite=plotnonfinite,
**({"data": data} if data is not None else {}), **kwargs)
sci(__ret)
return __ret
x = np.random.normal(175, 5, N)
y = np.random.normal(60, 5, N)
x,y分别代表一组数据的横、纵坐标
import matplotlib.pyplot as plt
import numpy as np
plt.figure('scatter', facecolor="lightgray")
plt.subplot(1, 2, 1)
plt.scatter(6, 8, s=44, c="r")
plt.subplot(1, 2, 2)
plt.scatter(3, 4, s=14, c="b")
plt.show()
s:代表坐标点的大小
c:代表坐标点的颜色
需要与参数c配合使用
情况一:
c可以是一个序列,例如:plt.scatter([1,2,3],[4,5,6],c=['r','b','r'])
情况2:
# cmap是一个颜色映射集,为参数序列c中的值分别分配一个颜色
import matplotlib.pyplot as plt
import numpy as np
plt.figure('scatter', facecolor="lightgray")
N = 300
x = np.random.normal(175, 5, N)
y = np.random.normal(60, 5, N)
b = (x - 175) ** 2 + (y - 60) ** 2
plt.scatter(x, y, s=14, c=b, cmap='hsv_r')
plt.show()
数据亮度,取值范围:0-1,如果使用norm,则vmin、vmax失效