#python #matplotlib #subplot
#python #matplotlib #подзаголовок
Вопрос:
Я закодировал для создания графиков с цветными полосами. Код работает отлично. Теперь я создал цикл for для рисования 4 таких графиков. Код запускается и создает один график, и существует предупреждение об обесценении. Я не смог расшифровать, что здесь не так и почему не были созданы все 4 графика.
samdf = pd.DataFrame({'x':random.sample(range(-100,100),20),
'y':random.sample(range(-200,400),20),
'z':random.sample(range(-1500,1500), 20),
'k':random.sample(range(-2500,500), 20),
'l':random.sample(range(-100,3500), 20)})
cmaplist = ['y','z','k','l']
for i in cmaplist:
plt.scatter(samdf.index,samdf['x'],
c=samdf[i], cmap='jet',
label=i,vmin=samdf[i].min(), vmax=samdf[i].max())
fig.subplots_adjust(right=0.95)
cbar_ax = fig.add_axes([0.90, 0.15, 0.02, 0.83]) ### (colorbar xposition,yposition,width, height)
cbar=plt.colorbar(im, cax=cbar_ax)
cbar.set_label('%s '%(i))#'POA irrad. (W/m$^2$)')
# Set common labels
plt.subplots_adjust(left=0.06, right=0.89, top=0.99, bottom=0.15)
plt.show()
Текущий результат:
<ipython-input-11-a3b6e265d62a>:20: MatplotlibDeprecationWarning: Adding an axes using the same arguments as a previous
axes currently reuses the earlier instance. In a future version, a new instance will always be created and returned. Meanwhile,
this warning can be suppressed, and the future behavior ensured, by passing a unique label to each axes instance.
cbar_ax = fig.add_axes([0.90, 0.15, 0.02, 0.83]) ### (colorbar xposition,yposition,width, height)
<Figure size 432x288 with 0 Axes>
Комментарии:
1. @Jody Klymak можете ли вы здесь помочь.
2. Я могу только предположить, что вы каким-то образом создаете цветовую панель дважды. Но без минимального рабочего примера это невозможно определить. Пробовали ли вы
constrained_layout
вместо того, чтобы размещать цветовую панель вручную и играть с subplots_adjust?3. Рекомендуется размещать здесь полный код, а не только часть вашего кода.
4. @JodyKlymak Я изменил свой вопрос с помощью воспроизводимого примера.
5. @ted930511 Я изменил свой вопрос с помощью воспроизводимого примера.