Некоторые моменты, которые нужно уточнить в первую очередь:
- Pandas не имеет ничего общего со стилем, и стилизация происходит с всеми таблицами HTML, а не только с фреймами данных. Это легко проверить, отобразив таблицу HTML в Jupyter (пример кода в конце ответа).
- Похоже, что ваш Jupyter или одно из установленных расширений выполняет «дополнительные» стили, стиль по умолчанию не включает сортировку столбцов или подсветку столбцов. Есть только нечетные / четные строки и подсветка строк (проверено на исходном коде Jupyter и моей локальной установке Jupyter). Это означает, что мой ответ может включать не все стили, которые вы хотите.
Ответ
Доступен ли код рендеринга данных, используемый jupyter, как отдельный модуль, который можно использовать в любом веб-приложении?
Не совсем отдельный модуль, но все форматы и стили таблиц, похоже, привязаны к rendered_html классу . Дважды проверил это, проверив блокнот HTML в Firefox.
Вы можете напрямую использовать файл .less
, указанный выше, или скопировать необходимые стили в ваш HTML.
Кроме того, развязаны ли ресурсы, такие как файлы js / css, от jupyter, чтобы их можно было легко использовать повторно?
Как и любой хорошо разработанный веб-проект (и фактически любой программный проект), пакеты и модули хорошо разделены. Это означает, что вы можете повторно использовать большой объем кода в своем проекте с минимальными усилиями. Вы можете найти большинство .less
файлов стилей в исходном коде Jupyter здесь .
Пример проверки того, происходит ли стилизация для всех таблиц HTML:
from IPython.display import HTML
HTML('''<table>
<thead><tr><th></th><th>a</th><th>b</th></tr></thead>
<tbody>
<tr><th>0</th><td>1</td><td>3</td></tr>
<tr><th>1</th><td>2</td><td>4</td></tr>
</tbody>
</table>''')