Python Matplotlib,带有用于背景预测的热图

Python Matplotlib,带有用于背景预测的热图,python,python-3.x,matplotlib,visualization,Python,Python 3.x,Matplotlib,Visualization,我尝试了以下方法: import pandas as pd import matplotlib.pyplot as plt import numpy as np df = pd.read_csv("t.csv") fig = plt.figure() fig.set_size_inches(50,70) ax1 = fig.add_subplot(111) ax1.scatter(np.arange(len(df.index)),df['real'].values,c=df["colors_re

我尝试了以下方法:

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
df = pd.read_csv("t.csv")
fig = plt.figure()
fig.set_size_inches(50,70)
ax1 = fig.add_subplot(111)
ax1.scatter(np.arange(len(df.index)),df['real'].values,c=df["colors_real"].values, alpha=0.9)
ax2 = ax1.twinx()
ax2.hist2d(np.arange(len(df.index)),df['prediction'].values, bins=30, cmap=plt.cm.jet,alpha=0.5)
plt.show()
上述绘图所需的数据集:
我得到了以下数字:

但我希望这个数字是这样的:

我想要:
1) 用
df['real']
值做一个圆,其中负值圆的中心是石灰色,然后在其旁边是0的值,然后是所有值的正值,如预期图所示。
2) 将热图或hist2d放在与值相关的位置,负片为石灰色,正片为橙色。

请让我知道如何才能做到这一点。我想按预期的数字显示输出。

有人回答或评论我想要实现的目标吗?不清楚为什么你会期望数字看起来像下图。另外,您将如何通过将
实数
值与您的索引绘制成一个圆圈?你能澄清一下你期望的图的x轴和y轴上是什么吗?因此,如果您的
“real”
值为,例如
-0.00009。。。0.00011
在您的
y
轴上,
x
轴上有什么?我尝试以线性方式实现它,如图所示。如果圆是不可能的,那么线性将工作,但如何调整背景,以显示热图一样的效果?可能吗?热图是预测值。您的背景已经有一个热图作为背景,但由于数据的性质(您将范围作为输入进行索引,根据定义,范围从来不是相同的数字),您只会得到一些包含两个数据点的箱子,因为箱子的大小。您可以减小垃圾箱的大小,但显示的颜色将与垃圾箱中的发生次数相对应,而不是负数或正数。然后,您可以尝试平滑直方图,使其更接近您的示例。但我有一种感觉,我仍然不明白你的实际目标是什么。有人对我想要实现的目标有什么回答或评论吗?不清楚为什么你会期望这个数字看起来像下图。另外,您将如何通过将
实数
值与您的索引绘制成一个圆圈?你能澄清一下你期望的图的x轴和y轴上是什么吗?因此,如果您的
“real”
值为,例如
-0.00009。。。0.00011
在您的
y
轴上,
x
轴上有什么?我尝试以线性方式实现它,如图所示。如果圆是不可能的,那么线性将工作,但如何调整背景,以显示热图一样的效果?可能吗?热图是预测值。您的背景已经有一个热图作为背景,但由于数据的性质(您将范围作为输入进行索引,根据定义,范围从来不是相同的数字),您只会得到一些包含两个数据点的箱子,因为箱子的大小。您可以减小垃圾箱的大小,但显示的颜色将与垃圾箱中的发生次数相对应,而不是负数或正数。然后,您可以尝试平滑直方图,使其更接近您的示例。但我觉得我还是不明白你的真正目标是什么。