У меня два разных набора данных. Один - это матрица numpy NxM, а другой - фрейм данных Pandas Lx3. Я накладываю график рассеяния (фрейм данных Lx3) поверх контурного графика (NxM), а шкала цветов масштабируется на основе данных графика рассеяния. Как заставить шкалу палитры масштабироваться на основе обоих наборов данных (как синхронизировать шкалу палитры на обоих слоях графика)?
import numpy as np
import matplotlib.pyplot as plt
#generate random matrix with min value of 1 and max value 5
xx = np.random.choice(a = [1,2,3,4,5],p = [1/5.]*5,size=(100,100))
#contourf plot of the xx matrix
plt.contourf(np.arange(100),np.arange(100),xx)
#generate x and y axis of the new dataframe
dfxy = np.random.choice(range(20,80),p = [1/float(len(range(20,80)))]*len(range(20,80)),size = (100,2))
#generate z values of the dataframe with min value 10 and max value 15
dfz = np.random.choice(a = np.linspace(10,15,10),p = [1/10.]*10,size = 100)
plt.scatter(dfxy[:,0],dfxy[:,1],c=dfz,s=80)
cb = plt.colorbar()
#cb.set_clim([1,15])
plt.show()
Я пытаюсь установить пределы, но результаты все еще не имеют для меня смысла. Контур все еще не отображается на палитре цветов.