Тепловая карта в Holoviews? - PullRequest
       24

Тепловая карта в Holoviews?

1 голос
/ 19 сентября 2019

Я пытаюсь построить HeatMap с Holoviews.Я сделал несколько попыток, но безуспешно.Я строю данные, которые имеют 2 значения (одно на оси "x" и одно на "y"), и я хотел бы, чтобы каждый цвет представлял количество (как гистограмма в HeatMap).

1 Ответ

1 голос
/ 20 сентября 2019

В HoloViews HeatMap действительно для категориальных данных.Если ваши данные являются числовыми, вы действительно хотите вычислить 2D гистограмму и использовать элемент hv.Image, вы можете сделать это с помощью np.histogram2d, например:

a, b = np.random.randn(1000, 2).T
df = pd.DataFrame({'a': a*10, 'b': b}, columns=['a', 'b'])
z, a, b = np.histogram2d(df['a'], df['b'])
hv.Image((a, b, z), ['a', 'b'], 'Count')

enter image description here

Или, если у вас много данных, вы можете использовать встроенную поддержку dashashader, чтобы сделать то же самое:

from holoviews.operation.datashader import rasterize

a, b = np.random.randn(1000, 2).T
df = pd.DataFrame({'a': a*10, 'b': b}, columns=['a', 'b'])
rasterize(hv.Scatter(df), width=10, height=10, dynamic=False)

Отрегулируйте ширину и высоту в соответствии с вашими потребностями или удалитеdynamic = False для динамического пересчета при масштабировании.

...