plotnine

2026/06/19 18:08

plotnine

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

Summary: Plotnine は、Python 向けのデータ可視化ライブラリであり、R の ggplot2 の「グラフィックの文法」を Python に持ち込みつつ、慣れ親しみの深い構文を提供します。

from plotnine import *
ggplot
を用いることで、1 つの行でアド・ホックなプロットを作成でき、データのグループ化に基づいて自動的に適切なデフォルト値——凡例、ラベル、刻み、カラーパレットなど——が適用されます。このワークフローは、要素を論理的にレイヤー積み上げることで刊用レベルの可視化を構築する様子を示しています;データとマッピングは各レイヤーで継承されたり変更されたりします。
facet_wrap
を通じた宣言的サブセットによって、手作業のループなしにマルチパネルレイアウトが可能となり、タイトル(
labs(title=...)
)、軸座標(
coord_fixed(xlim=..., ylim=...)
)、そして全体のスタイリングなど、あらゆる側面が
geom_*
および
scale_*
関数の特定のパラメータを通じてオーバーライドされます。テーマは個人や組織のブランドに合わせてカスタマイズ可能であり、例として
theme_tufte
theme()
の調整を加えることができます。本チュートリアルではアンソームの四重集を用いて、単純なグラフィックから完全にカスタマイズされたグラフィックへと段階的に発展する様子を解説し、インストール手順については今後のセクションで取り扱います。このアプローチにより、レポート全体での視覚的な一貫性を保つとともに、標準的なレポートタスクを効率化します。

本文

ピートノインのためのグラフ法則:Anscombe 四重奏で実践する可視化ワークフロー

Plotnine は、「グラフの法則(Grammar of Graphics)」に基づいた Python データ可視化パッケージです。R の ggplot2 と構文が類似しており、統一的な体系でグラフを作成できます。 本稿では、記述統計量には差がないが分布が異なる「Anscombe 四重奏」を用い、Plotnine の機能を段階的に探索します。


クイックスタート:アドホックなプロット

まず、たった一行のコードで基本的な散布図を作成できます。

from plotnine import *
from plotnine.data import anscombe_quartet

ggplot(anscombe_quartet, aes(x="x", y="y")) + geom_point()
  • データセットには
    x
    y
    の 2 つの連続変数が含まれます。
  • 現状の問題点:4 つの異なるデータセットを区別する方法がないため、プロットの意味は限定的です。

センスブルデフォルト(適切な既定値)

Plotnine はデータを基に自動的に適切な要素を追加します。

  • 自動凡例生成:各点を所属するデータセットごとに着色し、自動的に凡例を作成します。
  • 自動色選択:配色も自動的に決定されます。
    • ※後述するように、すべての設定はカスタマイズ可能です。現状は乱雑なため、以下で改善します。

データサブセットによるファセット化

for
ループを書かずに、複数の変数(パネル)に分けて可視化できます。

ggplot(anscombe_quartet, aes(x="x", y="y")) + 
    geom_point() + 
    facet_wrap("dataset")
  • 成果:4 つのデータセットを横並びで表示でき、比較が可能になります。
  • 課題:各パネルで色の使い方が重複しており、図面が冗長になっています。これを簡略化します。

可視化には「層」がある

Plotnine の最大の特徴は、レイヤー(層)単位でのカスタマイズです。一度設定したマッピングは継承されますが、各層ごとに詳細を変更可能です。

  • 散布図層 (
    geom_point
    )
    :点の描画設定
  • 傾向線層 (
    geom_smooth
    )
    :回帰直線の追加設定

これらを組み合わせることで、Anscombe が示した「異なる分布でも記述統計量が等しい」という特徴を明確に裏付けるプロットを作成できます。


任意の既定値を上書き:出版向けのカスタマイズ

凡例、ラベル、区切り目、座標範囲など、あらゆる要素を手動で調整可能です。

(
    ggplot(anscombe_quartet, aes("x", "y"))
    + geom_point(color="sienna", fill="darkorange", size=3)
    + geom_smooth(method="lm", se=False, fullrange=True, color="steelblue", size=1)
    + facet_wrap("dataset")
    + scale_y_continuous(breaks=(4, 8, 12))
    + coord_fixed(xlim=(3, 22), ylim=(2, 14))
    + labs(title="Anscombe's Quartet")
)

改善点のまとめ

  • 視覚的強調:点の色・サイズと線の色を明確に区分しました。
  • 読みやすさ:Y 軸の区切り目を統一し、座標範囲(
    coord_fixed
    )を調整しました。
  • メタデータ:適切なタイトルを追加しました。

Plotnine はさらにカスタマイズ可能:テーマの変更

最後に、図全体のスタイルやレイアウトをテーマを変更することで、独自または組織のブランドに合わせて仕上げます。

(
    ggplot(anscombe_quartet, aes("x", "y"))
    + geom_point(color="sienna", fill="orange", size=3)
    + geom_smooth(method="lm", se=False, fullrange=True, color="steelblue", size=1)
    + facet_wrap("dataset")
    + labs(title="Anscombe's Quartet")
    + scale_y_continuous(breaks=(4, 8, 12))
    + coord_fixed(xlim=(3, 22), ylim=(2, 14)) 
    + theme_tufte(base_family="Futura", base_size=16)
    + theme(
        axis_line=element_line(color="#4d4d4d"),
        axis_ticks_major=element_line(color="#00000000"),
        axis_title=element_blank(),
        panel_spacing=0.09,
    )
)

高度なカスタマイズ内容

  • フォントスタイル:Tufte テーマを採用し、基盤フォントを
    Futura
    に変更。
  • 軸の最適化
    • 軸線の色をグレーに統一。
    • メジャー目盛り線を透明化(不要なノイズを排除)。
    • 軸タイトルを削除し、余白を広げます。

まとめ

Plotnine は、「一行のコードで素早い可視化」から始め、段階的に詳細を調整する拡張性のあるアプローチを採用しています。

  1. 探索的データ分析:この程度のカスタマイズで十分です。
  2. 出版・レポート用途:上記のような詳細なレイヤー別制御とテーマ設定が必須となります。

ご自身のデータを用いて同様のワークフローを試してみませんか? Plotnine のインストール方法について詳しく知りたい場合は、次章をご確認ください。

同じ日のほかのニュース

一覧に戻る →

2026/06/24 3:40

ジェリーの地図

## Japanese Translation: 「ジェリーのワールド」は、1963 年夏にニューヨーク・コールドスプリングに住むアーティスト・ジェリーによって開始された、架空の都市を巨大な円形地図として機能させる、独自性の高い二次元アートプロジェクトである。4,000 点以上の個々のパネル(8x10 インチ)が N、S、E、W の座標を用いて配置されており、本作は二つの明確な時代へと発展してきた。時代 1(1963–1983)では軽量なタイプライター用紙が使われ、パネルは時系列順に積み重ねられていたが、時代 2(2003–現在)では再生された重紙を用い、座標順でパネルを配置し、自動化されたシステムを採用している。創作プロセスは、約 100 枚のユニークなカードからなる専用デッキによって厳密に管理されており、これらカードには描画サイズ、絵混ぜの色調調整、アーカイブ作業、ブログ投稿などの管理業務などランダム化された指示が含まれている。各カードサイクルは数分から数日続き、巨大な黒または赤の数字に基づいて作業ユニット(1 インチ正方形)を指し示す。実行にはアクリル絵具、マーカー、コラージュ、インクジェット印刷などのメディアが用いられる。プロジェクトはベースレイヤー、ザ・バッド、ザ・レッドディメンション、ブラックネッズ、ザ・ジグurat フェーズ、ザ・フロード、そしてリ・バーストといった段階的な概念層を通じて進行する。元々屋根裏部屋に保管され、アーティストの息子であるヘンリーによって数十年後に再発見された本作は、現在では公的展覧会やデジタルアーカイブとの統合を達成しており、環境に優しい素材の使用と創造的かつ管理業務を含む意思決定を導く厳格なルールベースのワークフローを通じて、現代アートの持続可能性への転換を浮き彫りにしている。 ## サマリー: 「ジェリーのワールド」は 1963 年に開始され、現在も継続中の二次元アートプロジェクトであり、架空の都市を巨大な円形地図として機能させる独自性の高いものである。その最も顕著な特徴は、約 100 枚のユニークなカードからなる専用デッキによって駆動される厳格でランダム化されたシステムである。これらのカードには実行とアーカイブ作業に関する独自の指示が含まれており、描画サイズから絵混ぜの色調調整に至るまで、各工程を決定する。このシステムにより、作品は純粋な直感に頼らずルールに基づくガイダンスによって発展する。プロセスは特定のルールに従い、カードの色に基づいて方向が変化し、その結果としてザ・バッドやザ・レッドディメンションといった段階的な層が構築される。元々はニューヨークのコールドスプリングで制作された物理的な作品は、アーティストの息子によって数十年後に再発見された。第一世代では軽量な紙が使われたが、現在のフェーズでは再生素材と自動化されたシステムを採用しており、デジタルアーカイブで引退した作品を保存しながらも新たなパネルを生成したり既存のセクションを完了させることができる。この堅固なワークフローは、一貫した管理ルーチンを強制することで協力者に影響を与え、環境に優しい素材の使用や展覧会における公的関与を通じて現代アートにおける持続可能性への転換を強調している。 ## キーポイント一覧 - 1963 年夏、アーティスト・ジェリーはニューヨーク・コールドスプリングで架空の都市の地図を描き始めたが、それは彼の屋根裏部屋に保管されており、後に息子であるヘンリーによって再発見された。 - プロジェクトは現在、4,000 点以上の個々の 8 インチ x10 インチのパネルからなる二次元的な「バーチャルワールド」アートプロジェクトであり、中央を起点として N、S、E、W の座標を用いて近似円形に配置されている。 - 実行にはアクリル絵具、マーカー、彩色鉛筆、インク、コラージュ、そしてインクジェット印刷が重紙上に用いられ、これは規則および約 100 枚のユニークなカードからなる専用デッキからのランダム生成された指示によって決定される。 - 各カードサイクルは前回の作業が完了するまで開始されず、数分から数日かかる;タスクとは、カード上の巨大な黒または赤の数字で指定された作業ユニット(1 ユニット=1 インチ正方形)をカバーすることを指す。 - カード指示は次の 5 つのカテゴリーに分類される:上位次元への進歩(バッド、レッド、ブラック、ジグurat)、隣接する 4 パネルのスプラッター塗装、新しいシードパネルの作成、新しい色調の混合、および連続する 9 パネルのスクリーン印刷。 - アドдиショナルなアーティスト指示には、マスターの更新/複製、ファイルからのパッチワークまたは写真の使用、数字の追加/削除、デッキからのカードの除去/追加、ブログ投稿や販売価値の計算などの管理業務が含まれる。 - ヘルパー指示には、デジタルライブラリー用のパネルのスキャン、引退したパネルのソート/アーカイブ、現在のパネルのコピー作成、アーカイブインベントリを更新する作業が含まれる。 - 作業方向はカードの色によって決定される:黒は地図 perimeter 周りの時計回りの進行を示し、赤は反時計回りの進行を示す。 - 新しいパネルは「新しいパネル」カードを描画するか、アートのセクションを完了するために生成され、常に親ページと同じ「中心」点を保ち、「その日の色」を使用する。 - プロセスは次の層で表現される:ベースレイヤー(パッチ、塗られたバンド、コラージュ、シティスクエア)、ザ・バッド(白/黑白/グレー/黒のコラージュ)、ザ・レッドディメンション(ソリッドレッドのコラージュ)、ブラックネッズ、ザ・ジグurat フェーズ、ザ・フロード(ブルーのコラージュ)、そしてリ・バースト(クラフト紙)。 - プロセスは二つの明確な時代へと発展した:時代 1(1963–1983)では軽量なタイプライター用紙が使われ、ゲストアーティストはいなかった、パネルは時系列順に積み重ねられた;時代 2(2003–現在)では再生された紙が使われ、デッキ駆動の自動化システムを採用し、展覧会が開催され、パネルは座標順に積み重ねられている。

2026/06/24 3:00

Swift パッケージインデックス、Apple に加入

## Japanese Translation: ## 日本語翻訳: 元のサマリーは明確で、正確かつ完全です。変更する必要はありません。 ## 翻訳対象のテキスト: (必要であればここに貼り付け;なければそのまま元の文章を繰り返す):元のサマリーは明確で、正確かつ完全です。変更する必要はありません。

2026/06/24 2:50

FUTO スワイプ:新たなスワイプタイピングモデル

## Japanese Translation: 主なイノベーションは「FUTO Keyboard」というプライバシーを最優先とした Android アプリであり、クラウドサーバーの必要性なくデバイス上で迅速かつ正確なスワイプタイピングを可能にします。データをローカルに保持することで、キーストロークを外部ネットワークへ送る際に生じる一般的なセキュリティリスクを排除します。推論はオンデバイスで実装されており、サーバーサイドデモと比べてはるかに低いレイテンシを実現しています。ミリ秒単位で入力を処理し、エラーレートは 1% を下回ります(具体的には、ビーム幅 300 を使用したテストセットにおいて、トップ 4 の失敗率は約 4%、エラー率は 1% 未満です)。 技術の基盤となるのはオープンなモデルファミリ(Encoder、ContextLM、Decoder)で、総パラメータ数 2,494,767 のうち有効パラメータは 1,364,271 です。低性能向けスマートフォンを最適化しています。「swipe-library」という C++ ライブラリが推論とビームサーチを担当し、スワイプパスから単語予測への変換を行います。学習は効率的で、ワークステーション用 GPU 1 台のみで完了しました。開発者は 2024 年 8 月にデータセット収集を開始し(100 万件以上のユーザーのスワイプデータを収集)、2025 年 3 月に MIT ライセンスの下で HuggingFace にフィルタリングされた 100 万件のスワイプデータをリリースしました。モデルは FUTO モデルライセンス、推論ライブラリは GPL の下に利用可能です。エンドユーザーへの謝示は長期投資合意の一部として必須であり、速度とプライバシーを最優先とするオフラインモバイル入力の持続可能なエコシステムを支えています。