当点重复时,使用matlibplot.pyplot绘制散点图

pan*_*mer 1 visualization graph matplotlib scatter-plot

我想使用matlibplot.pyplot生成散点图,并且很多点都是重复的.因此,当我使用pyplot.scatter方法绘制图形时,很多点都在一个点上透支.为了考虑该位置上的点数,我认为我需要设置不同的点大小,如果该点包含更多数据点,则需要设置更大的圆.

有人可以给我一个如何做到这一点的指针?谢谢!

tom*_*m10 7

最简单的方法是设置一个低alpha,然后当点在彼此之上时,它们看起来更暗.

import numpy as np
import matplotlib.pyplot as plt

data = [i for i in range(8) for j in range(np.random.randint(10))]
x, y = np.array(data), np.array(data)
plt.scatter(x, y, alpha=.1, s=400)
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

当然,您也可以直接更改点的大小或颜色.要执行此操作,您需要找到重叠点的数量,然后设置大小(使用s散点图参数)或颜色(使用c)或两者.(但设置alpha是最简单的,因为它不需要显式计算重叠.)