绘制模糊的 Python 图

Plotting an Obscure Python Graph

我一直在努力解决一个有趣的问题,但很难找到合适的解决方案。我正在尝试绘制热图列,每列的行大小可能不同。我目前拥有的数据结构由一个嵌套列表组成,其中每个列表都包含其点的各种热值。我在下面附上一张图片来说明这一点。

目前我们主要尝试让 matplotlib 工作,但是我们无法产生任何我们想要的结果。如果您对我们接下来应该采取什么步骤有任何想法,请告诉我。

谢谢

我认为基本策略是转换您的初始数组,以便您拥有一个矩形数组,其中缺失值编码为 NaN。然后你可以简单地使用 imshow 来显示热图。

我用np.pad来填充缺失值

data = [[0,0,1],[1,0,5,6,0]]
N_cols = len(data)
N_lines = np.max([len(a) for a in data])
data2 = np.array([np.pad(np.array(a, dtype=float), (0,N_lines-len(a)), mode='constant', constant_values=np.nan) for a in data])

fig, ax = plt.subplots()
im = ax.imshow(data2.T, cmap='viridis')
plt.colorbar(im)