У меня есть следующий код, который создает следующий график с hexbins. Для контекста, df ['PCT_DIFF'] находится в диапазоне [0,1]. Это столбец, которым я буду окрашивать каждую область графика.
import matplotlib as plt
import pandas as pd
fig, ax = plt.subplots(figsize=(10,10))
ax.hexbin(df['X'], df['Y'],C=df['PCT_DIFF'],bins=20, gridsize=50, \
cmap=cm.get_cmap('RdYlBu_r', 10), edgecolors='black')
Это исходный график с каждой нанесенной точкой
plt.scatter(df['X'], df['Y'], s=10, marker='o', c='#007A33')
Я хотел бы изменить размер гексов на первом изображении на основе плотности точек, показанных на втором изображении.
Я пробовал это решение , но это то, что было показано. Я передал cm.get_cmap () и edgecolors в PatchCollection () в методе size_hexbin
fig, ax = plt.subplots(figsize=(10,10))
hexbin = ax.hexbin(df['X'], df['Y'],C=df['PCT_DIFF'], bins=20, gridsize=50, extent=[-275, 275, -50, 425])
sized_hexbin(ax,hexbin)
Сравнение этого графика со вторым похоже, плотность не правильная. Гексы под корзиной должны быть больше, и слева от корзины, где есть точки, нет гексов. Любая помощь приветствуется!