Сюжет history2d с весами в пандах / матплотлиб
Мне нужно построить исторических данных с контурными кривыми и цветовой шкалой из кадра данных панд.
Кадр данных имеет три столбца: x_col, y_col, z_col.
Я хочу построить что-то вроде этого, где z_col - это вес исторических значений:
Но я не знаю, как преобразовать z_col в весовой 1D массив из функции hist2d.
fdf = df.groupby([valueX, valueY], as_index=False).mean().sort([valueX, valueY])
x = fdf[valueX]
y = fdf[valueY]
z = fdf[valueZ]
(... axes instantiation)
bins = 100
counts, xbins, ybins, image = axes.hist2d(x, y, bins=bins, normed=True, weights=z)
axes.contour(counts, extent=[xbins.min(), xbins.max(), ybins.min(), ybins.max()], linewidths=3)
pc = axes.pcolor(counts, cmap=cm.jet)
fig.colorbar(pc)
axes_x.hist(x, bins=bins)
axes_y.hist(y, bins=bins, orientation='horizontal')
Какие-либо предложения?
0 ответов
Вы должны ввести массив с одинаковой длиной x или y (они тоже должны иметь одинаковую длину)
Поскольку z_col является столбцом во фрейме данных, он будет иметь правильное измерение (такое же, как x_col или y_col)
Для получения массива вам понадобится: dataframe.z_col.values (это массив). С другой стороны, dataframe.z_col - это серия панд.