mcpField
P
pygraphistry-core

pygraphistry-core

github.com/graphistryデータ・データベース339 回インストール今日更新
リポジトリ

pygraphistry-core について

PyGraphistry Core は、Graphistry の Python クライアントでグラフデータを準備するスキルです。登録、グラフとハイパーグラフの構築、可視化列の割り当て、描画、データ整形の確認を扱います。

主な機能

  1. 01Graphistry 登録の案内
  2. 02エッジとノードからのグラフ構築
  3. 03ワイドテーブルからのハイパーグラフ構築
  4. 04可視化列の割り当てと描画
  5. 05ETL とデータ品質の確認

活用シーン

  1. 01取引やエンティティのグラフ準備
  2. 02表形式データの関係可視化
  3. 03複数のエンティティ列からのハイパーグラフ構築
  4. 04グラフのアップロード前のデータ整形

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/graphistry/graphistry-skills --skill pygraphistry-core

インストール後、Claude Code で/pygraphistry-coreを入力して読み込まれたか確認します。

詳細

PyGraphistry Core

ドキュメントのルーティング(ローカル+正規版)

  • まず ../pygraphistry/references/pygraphistry-readthedocs-toc.md を使ってルーティングします。
  • セクション単位のショートカットには ../pygraphistry/references/pygraphistry-readthedocs-top-level.tsv を使います。
  • 必要なページが見つからない場合に限り、../pygraphistry/references/pygraphistry-readthedocs-sitemap.xml を確認します。
  • 詳細ページを読む前に、まとめて一度に検索します。cat * や細かく順番に読む方法は避けてください。
  • ユーザー向けの回答では、正規版の https://pygraphistry.readthedocs.io/en/latest/... リンクを優先してください。

クイックワークフロー

  1. Graphistry サーバーに登録します。
  2. エッジ/ノード(または幅広形式の行からハイパーグラフ)でグラフを構築します。
  3. 必要に応じて視覚化する列をバインドします。
  4. プロットして反復します。

最小限の基本構成

import os
import graphistry

graphistry.register(
    api=3,
    username=os.environ.get('GRAPHISTRY_USERNAME'),
    password=os.environ.get('GRAPHISTRY_PASSWORD')
)

認証のバリエーション(組織とキーのフロー)

# Organization-scoped login (SSO or user/pass org routing)
graphistry.register(api=3, org_name=os.environ['GRAPHISTRY_ORG_NAME'], idp_name=os.environ.get('GRAPHISTRY_IDP_NAME'))
# Service account / personal key flow
graphistry.register(
    api=3,
    personal_key_id=os.environ['GRAPHISTRY_PERSONAL_KEY_ID'],
    personal_key_secret=os.environ['GRAPHISTRY_PERSONAL_KEY_SECRET']
)
# edges_df: src,dst,... and nodes_df: id,...
edges_df['type'] = edges_df.get('type', 'transaction')
nodes_df['type'] = nodes_df.get('type', 'entity')
g = graphistry.edges(edges_df, 'src', 'dst').nodes(nodes_df, 'id')
g.plot()

ハイパーグラフの基本構成

# Build graph from multiple entity columns in one table
hg = graphistry.hypergraph(df, ['actor', 'event', 'location'], engine='pandas')
hg['graph'].plot()

ETL 整形チェックリスト

  • バインド前に識別子列を正規化します(src/dst/id の型の一貫性、null の処理)。
  • 凡例に適したデフォルト設定と一貫したカテゴリのエンコーディングのため、エッジとノードの両方に単純な type 列を使います。
  • 初回アップロードの前に、大量に繰り返される行を重複排除します。
  • ノード中心の手順ではノードを実体化します。
g = graphistry.edges(edges_df, 'src', 'dst').materialize_nodes()

実用上の確認事項

  • 始点/終点の列が null でなく、正しい型であることを確認します。
  • 必要に応じて、ノード中心の操作の前にノードを実体化します(g.materialize_nodes())。
  • 大規模データの初回レンダリングでは、小さなデータ範囲から始めます。
  • GFQL の実行で Polars の結果を保持するには、engine='polars' を明示的に指定します。自動/デフォルトの経路では Polars は選択されません。エンジンの正確なリテラルは 'pandas'、'cudf'、'dask'、'dask_cudf'、'polars'、'polars-gpu'、'auto' です。'polars-gpu' はハイフン区切りであり、polars_gpu という表記はありません。
  • gfql() に strict= 引数はありません。エンジン外での分析ポリシーは、graphistry.compute.gfql.lazy.set_call_mode('auto'|'strict') または GFQL_POLARS_CALL_MODE 環境変数で設定します。エンジンのセクションについては pygraphistry-gfql を参照してください。
  • 現時点では hypergraph(..., engine='polars'|'polars-gpu') は推奨しないでください。現在の API 注釈には記載されていますが、上流のハイパーグラフフレーム実装には、まだこれらのディスパッチ経路がありません。対応している pandas/cuDF のハイパーグラフエンジンを使い、その後、適切な場合に Polars/Polars-GPU を GFQL の処理に使用してください。
  • 近傍の展開やパターンマイニングには、必ず .gfql([...]) または .gfql("MATCH ...") を使います。hop() と chain() メソッドは非推奨です。
  • 認証情報は環境変数のみに保存し、ユーザー名/パスワード/トークンをハードコードしないでください。

正規版ドキュメント

コメント