Таблица Holoviews не сохраняет визуально индекс - PullRequest
1 голос
/ 01 февраля 2020

Вот код:

import pandas as pd
import holoviews as hv
hv.extension('bokeh','matplotlib','plotly')

mydf = pd.DataFrame({
                     'x':np.arange(5),
                     'y':-np.arange(5),
                     'z':2+3*np.arange(5)
                    }
                   )
statdf = pd.DataFrame({'min':mydf.min(),
                       'max':mydf.max(),
                       'mean':mydf.mean()}).T
statdf

и в следующей ячейке:

hv.Table(statdf)

Тогда вы получите что-то вроде этого: illustration of the issue

Любая помощь или разъяснение будет более чем приветствоваться!

Спасибо!

Ответы [ 2 ]

1 голос
/ 01 февраля 2020

1) Вы можете установить индекс в качестве ключевого измерения:

hv.Table(statdf, kdims=['index'])

При использовании боке, это все равно даст вам дополнительное hv. Table () index. Но это также может быть преимуществом, когда вы сортируете и хотите, чтобы ваш фрейм данных вернулся в исходном порядке.
Однако, когда у вас есть matplotlib или plote backend hv.extension('plotly'), это решение даст у вас есть фрейм данных с индексом.


2) Другой вариант - использовать вместо этого виджет панели данных.
Это покажет фрейм данных с исходным индексом и все еще позволяет сортировать et c.:

import panel as pn
pn.extension()

pn.widgets.DataFrame(statdf)

Подробнее о pn.widgets.DataFrame ():
https://panel.holoviz.org/reference/widgets/DataFrame.html#widgets -gallery-dataframe


Результирующий кадр данных с использованием виджета панели:

dataframe using panel widget

0 голосов
/ 01 февраля 2020

Попробуйте:

hv.Table(statdf.reset_index())

Не думаю, что вы можете обновить столбец индекса в holoviews

...