如何用不同的情节修复颜色条

时间:2019-05-21 13:56:56

标签: python matplotlib animation colorbar

下面,我创建了一个简单的数据集示例。我有4分,每一步都改变了他们的价值。这些点绘制在x,y位置,并且颜色随其值而变化。我如何固定一个对每个图有用的颜色条?

import pandas as pd
import matplotlib.pyplot as plt

data=[[1,1,3],[1,2,1],[2,1,9],[2,2,0]]
a=pd.DataFrame(data)
a.columns=['x','y','value']

data2=[[1,1,5],[1,2,2],[2,1,1],[2,2,3]]
b=pd.DataFrame(data2)
b.columns=['x','y','value']

data3=[[1,1,15],[1,2,7],[2,1,4],[2,2,8]]
c=pd.DataFrame(data3)
c.columns=['x','y','value']

final=[a,b,c]

for i in range(0,len(final)):
    fig, ax = plt.subplots()
    plt.scatter(final[i]['x'],final[i]['y'],c=final[i]['value'])
    plt.colorbar()

我还有一个问题,我想为这3个情节创建一个动画(使用相同的颜色栏),但是我无法做到这一点,有人可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

对于相同的颜色条,只需将:vmin和vmax添加到plt.scatter。例如: 对于范围在(0,len(final))中的i:     无花果,ax = plt.subplots()     plt.scatter(final [i] ['x'],final [i] ['y'],c = final [i] ['value'],vmin = 0,vmax = 15,)     plt.colorbar() 您想要哪种动画?逐个绘制散点图?

答案 1 :(得分:0)

这应该做:

fig, axs = plt.subplots(1,3, figsize=(12,3))
for i in range(0,len(final)):
    im = axs[i].scatter(final[i]['x'],final[i]['y'],c=final[i]['value'])
fig.colorbar(im, ax=axs.ravel().tolist())

enter image description here 此主题中的更多想法:Matplotlib 2 Subplots, 1 Colorbar

动画-需要更多细节。