首页 > 解决方案 > matplotlib 的 scatter() 函数中用于随机游走的 c 参数的功能

问题描述

当我将不同的列表传递给 scatter() c 参数参数时,我无法区分差异。

对于说 10 步的随机游走会话,我有一个 x 坐标列表 (x_values)、一个 y 坐标列表 (y_values) 和一个 0-9 的数字列表 (point_numbers)。x_values 和 y_values 列表具有为它们生成的随机数。当我将 x_values 传递给 c 参数时,我的图表颜色从白色变为深蓝色,从左到右。当我传递 y_values 时,图形颜色从下到上。但是,当我通过 point_numbers 列表时,图形从随机游走的起点开始着色,然后下一个点变暗一点,然后一直持续到它到达游走中的最后一个点最黑暗的。

plt.scatter(x_values, y_values, c=x_values, cmap=plt.cm.Blues, s=15)

以上颜色从左到右。

plt.scatter(x_values, y_values, c=y_values, cmap=plt.cm.Blues, s=15)

以上颜色从下到上。

plt.scatter(x_values, y_values, c=point_numbers, cmap=plt.cm.Blues, s=15)

最后,上面的颜色从步行的第一个点到下一个点,依此类推。

我想知道的是幕后发生了什么,允许 matplotlib 分别用 x_values 和 y_values 从左到右和从下到上着色?此外,最重要的是,当我将一个严格只有数字 0-9 的数字列表 (point_numbers) 传递给 c 时会发生什么,它会逐步在 walk 中着色,而不是使用 x_values 和y_values?

标签: pythonmatplotlibargumentsscatter

解决方案


推荐阅读