10

インタラクティブな分析とパンダのための素晴らしいノートブックを使用して、IPythonでいくつかのインタラクティブなワークフローを構築しています。

私が表示しているテーブルのいくつかは、少しフォーマットするだけではるかに読みやすくなります。1行おきに陰影を付けた「ゼブラテーブル」のようなものが本当に欲しいです。このフォーマットをcss経由で実装する方法についてここで読みました。cssをIPythonNotebookに適用し、スタイルシートを使用してテーブルをレンダリングする本当に簡単な方法はありますか?

4

3 に答える 3

13

<script>タグ内のマークダウンセルで、またはIPythonのIPython.core.display.Javascriptクラスを介して、任意のjavascript(jQueryを使用)を実行できます。これらを使用すると、スタイルシートの追加など、ドキュメントを心ゆくまで操作(または台無し)することができます。

たとえば、以下は適切に分類されたテーブルをストライプ化します。

<script type="text/javascript">
    $('head').append(
        "<style type='text/css'>tr.odd{background-color: #def}</style>"
    );
</script>

それをマークダウンセルの1つに貼り付けるだけで、ページ上のすべてに適用されます。

<script>または、コードセルでPythonから同じコード(マイナスタグ)を実行することもできます。

from IPython.core.display import Javascript, display
display(Javascript("""
    $('head').append(
        "<style type='text/css'>tr.odd{background-color: #def}</style>"
    );
"""))

ただし、これを行うと、適切に分類されたテーブルにのみ影響します。これは、HTMLを記述しているコード(パンダなど)次第です。

于 2012-05-25T21:01:21.067 に答える
7

IPythonノートブックで豊富にフォーマットされたデータテーブル(色、境界線、配置、フロートフォーマット、ゼブラシェーディングなど)を作成するための簡単なメカニズムを提供するipy_tableというプロジェクトをリリースしました。プロジェクトはhttps://github.com/epmoyer/ipy_tableにあり、 https ://github.com/epmoyer/ipy_table/blob/master/ipy_table-Reference.pdfからその機能の良いアイデアを得ることができます。

于 2012-12-27T06:32:31.840 に答える
2

slickgridを使用してグリッド/テーブルを構築することに興味があるが、Pythonを使用している場合は、qgridに興味があるかもしれません。これは、パンダを使用するipythonノートブックから機能します。

https://github.com/quantopian/qgrid

別のオプションは、次のようなハンズオンテーブルを使用することです。

http://nbviewer.ipython.org/gist/bollwyvl/6ad208084744c60dda65

パンダのみを使用するさらに別の3番目のオプションはここにあります:

Pandas Dataframes to_html:テーブル行の強調表示

4番目のオプションは、次のようにjinja2などのテンプレートエンジンを使用することです。

PandasデータフレームがWebページに表示される

http://nbviewer.ipython.org/github/pydata/pandas/blob/8c4f9571c08d5122f1d9e40c43dadab8b6f10bf5/pandas_HTML_styling.ipynb

最後に、パンダにはテンプレートに基づいてレンダリングするための未解決の問題があります。

https://github.com/pydata/pandas/issues/3190

GoogleのPSPythonの第一人者は、この最小限の解決策を提案しています(サードパーティの依存関係を避けてください)。

https://stackoverflow.com/a/1475453/2230844

または彼の本を読んでください:

一言で言えばPython、第2版、第23章構造化テキスト:HTML

于 2015-02-06T04:52:56.923 に答える