【发布时间】:2018-10-31 19:24:00
【问题描述】:
我正在尝试在 Seaborn 热图上标记特定的 X/Y 坐标。输出绘制正确的 X 坐标,但将 Y 绘制为零/轴最小值。代码及其热图输出如下所示。
speeds = pd.read_csv('pytest20140730.csv')
speedspiv = pd.pivot_table(speeds, values = 'speed', index = 'road_order',
columns = 'tod_value', aggfunc = np.mean)
speedspiv = speedspiv.sort_index(axis=0, ascending = False)
plt.subplots(figsize=(20,15))
ax = sns.heatmap(speedspiv)
ax.scatter(414, 0.244444444, marker='*', s=100, color='yellow')
Y 轴值绘制不正确是怎么回事?
【问题讨论】:
-
y 轴的值介于 382 和 453 之间,但您的标记被告知在 y=0.24 处绘制。我想知道它甚至是可见的,还是我在这里错过了什么?
-
我最初将它设置为 ax.scatter(0.24, 414) 并且没有星号。当我切换到上面的代码时,似乎 0.24 现在正在正确绘制。我知道 x 轴标签目前是一团糟,但它们在 0 到 1 的范围内是连续的,所以看起来 x/y 切换到 y/x 显示了进展。
-
@SpghttCd 说的是真的。您的热图切换了 x 和 y 坐标,或者您的散点图切换了 x 和 y 坐标。这行得通吗:
ax.scatter(0.244444444, 414, marker='*', s=100, color='yellow') -
当我尝试这样做时,任何地方都看不到星星。
标签: python pandas heatmap seaborn