为何scatter plot未绘制全部75个点且部分点色调不同?
问题描述
我有如下一组数据点:
a = [0.61561561, 1.24828584, 0.15447159, 0.94014534, 1.24828584, 1.24828584, 0.92375611, 0.92375611, 0.47900132, 0.52270525, 0.61561561, 0.47900132, 0.47900132, 0.3984379 , 0.3984379 , -0.75793657, -0.2629685 , 0.36970173, 0.36970173, -0.75793657, -0.66502621, -0.20388219, -0.06270612, 0.94014534, 0.61561561, -0.66502621, -0.86528859, -0.86528859, -0.86528859, -0.54075886, -0.12331877, 0.045172 , -0.20388219, -0.91880682, 0.15447159, -0.06270612, 0.47900132, 0.47900132, 0.92375611, -1.0824663 , -0.86528859, -0.40414457, 0.01329552, 0.01329552, -0.86528859, 0.01329552, -0.86528859, 1.24828584, -0.91880682, -0.12331877, 0.83084575, 0.3984379 , 0.3984379 , 0.94014534, -0.20388219, 0.83084575, -0.29679254, -0.86528859, -0.75793657, -0.12331877, 0.36970173, 0.12064755, -0.86528859, -1.0824663 , -0.4478485 , -0.86528859, 0.06156123, 0.94014534, -1.0824663 , -0.20388219, -1.0824663 , 0.01329552, 0.01329552, -0.4478485 , 0.01329552] b = [-5.02614441e-01, 2.52924699e-01, -2.35966674e-02, -1.25032819e-04, 2.52924699e-01, 2.52924699e-01, -2.49564710e-01, -2.49564710e-01, 4.78892741e-01, 5.21987286e-01, -5.02614441e-01, 4.78892741e-01, 4.78892741e-01, -8.80642424e-01, -8.80642424e-01, 4.28537473e-01, 4.98515651e-01, 1.25405479e+00, 1.25405479e+00, 4.28537473e-01, -5.96064254e-01, -1.07508203e+00, -4.01624650e-01, -1.25032819e-04, -5.02614441e-01, -5.96064254e-01, 3.04076047e-01, 3.04076047e-01, 3.04076047e-01, 8.06565455e-01, 2.84453137e-01, 7.51565383e-01, -1.07508203e+00, 3.30514875e-01, -2.35966674e-02, -4.01624650e-01, 4.78892741e-01, 4.78892741e-01, -2.49564710e-01, -7.39519357e-02, 3.04076047e-01, -1.74941727e-01, -6.97054046e-01, -6.97054046e-01, 3.04076047e-01, -6.97054046e-01, 3.04076047e-01, 2.52924699e-01, 3.30514875e-01, 2.84453137e-01, 7.75037017e-01, -8.80642424e-01, -8.80642424e-01, -1.25032819e-04, -1.07508203e+00, 7.75037017e-01, -5.04803011e-02, 3.04076047e-01, 4.28537473e-01, 2.84453137e-01, 1.25405479e+00, -5.72592620e-01, 3.04076047e-01, -7.39519357e-02, -2.18036272e-01, 3.04076047e-01, 1.00100506e+00, -1.25032819e-04, -7.39519357e-02, -1.07508203e+00, -7.39519357e-02, -6.97054046e-01, -6.97054046e-01, -2.18036272e-01, -6.97054046e-01]
使用如下代码绘制散点图:
plt.scatter(a, b, alpha=0.7)
但发现仅绘制了约25-30个点(总数为75个),同时部分点呈现不同深浅的色调,想咨询该现象的原因。
原因分析
- 视觉上点数量偏少:数据中存在大量完全重复的
(a,b)坐标对,这些点绘图时会完全重叠,看起来就像一个点。比如(1.24828584, 0.252924699)出现4次,(-0.86528859, 0.304076047)出现7次,重复点叠加后只能看到单个视觉点,所以总数远少于实际的75个。 - 点色调深浅不一:设置的
alpha=0.7控制了点的透明度,多个重叠点的透明度会累积。重叠次数越多,实际不透明度越高,颜色看起来越深。比如重叠7次的点,不透明度约为1 - (1-0.7)^7 ≈ 0.99,几乎完全不透明;而仅出现一次的点保持0.7的不透明度,因此视觉上呈现深浅差异。
内容的提问来源于stack exchange,提问作者User34t
相关产品推荐
相关产品推荐

