在 plt.scatter 中明确设置颜色条箱
Explicitly setting colorbar bins in plt.scatter
我在 U.S 的底图上创建了一个散点图。使用 pyplot.scatter
,其中颜色条的 bin 在输入数据的范围内均匀分布。但是,我想明确控制颜色条的箱子以创建不均匀的箱子,例如[-20, -10, -5,-4,-3,-2,-1,0,1,2,3,4,5,50]
而不是 -20
和 50
之间均匀分布的 bin。如何做到这一点?
要在 plt.scatter
中的颜色条中设置自己的刻度,您可以将 fig.colorbar
中的 ticks
参数更改为您想要的任何值列表:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
cm = plt.cm.get_cmap('RdYlBu')
xy = range(20)
z = xy
sc = plt.scatter(xy, xy, c=z, vmin=0, vmax=20, s=35, cmap=cm)
cbar = fig.colorbar(sc, ticks=[0, 1, 15])
plt.show()
我在 U.S 的底图上创建了一个散点图。使用 pyplot.scatter
,其中颜色条的 bin 在输入数据的范围内均匀分布。但是,我想明确控制颜色条的箱子以创建不均匀的箱子,例如[-20, -10, -5,-4,-3,-2,-1,0,1,2,3,4,5,50]
而不是 -20
和 50
之间均匀分布的 bin。如何做到这一点?
要在 plt.scatter
中的颜色条中设置自己的刻度,您可以将 fig.colorbar
中的 ticks
参数更改为您想要的任何值列表:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
cm = plt.cm.get_cmap('RdYlBu')
xy = range(20)
z = xy
sc = plt.scatter(xy, xy, c=z, vmin=0, vmax=20, s=35, cmap=cm)
cbar = fig.colorbar(sc, ticks=[0, 1, 15])
plt.show()