mcpField
C
create-viz

create-viz

github.com/anthropicsデータ・データベース33.6k5.2k 回インストール1 日前に更新
リポジトリ

create-viz について

create-vizは、提供・アップロード・クエリしたデータをPythonで可視化するスキルです。チャートの選択とデザインを支援し、PNGを保存して使用したコードも提示します。

主な機能

  1. 01貼り付け・アップロード・クエリしたデータに対応
  2. 02データの関係に基づくチャートの提案
  3. 03matplotlib、seaborn、plotlyでチャートを生成
  4. 04明瞭さと正確さを重視したデザイン
  5. 05PNGの保存とソースコードの提示

活用シーン

  1. 01レポート用の推移グラフを作成
  2. 02プレゼン用にカテゴリを比較
  3. 03分布や相関を調べる
  4. 04データからインタラクティブなチャートを作成

インストール

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

$npx skills add https://github.com/anthropics/knowledge-work-plugins --skill create-viz

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

詳細

/create-viz - ビジュアライゼーションを作成する

見慣れないプレースホルダーがある場合や、接続されているツールを確認する必要がある場合は、CONNECTORS.md を参照してください。

Python を使用して、出版物の品質に適したデータビジュアライゼーションを作成します。明瞭さ、正確さ、デザインに関するベストプラクティスに基づいて、データからチャートを生成します。

使用方法

/create-viz <data source> [chart type] [additional instructions]

ワークフロー

1. リクエストを理解する

次の点を確認します。

  • データソース:クエリ結果、貼り付けられたデータ、CSV/Excel ファイル、またはクエリが必要なデータ
  • チャートの種類:明示的に指定されているか、推奨が必要か
  • 目的:データの探索、プレゼンテーション、レポート、ダッシュボードのコンポーネント
  • 対象者:技術チーム、経営幹部、社外の関係者
2. データを取得する

データウェアハウスが接続されており、データのクエリが必要な場合:

  1. クエリを記述して実行します
  2. 結果を pandas DataFrame に読み込みます

データが貼り付けられているか、アップロードされている場合:

  1. データを pandas DataFrame に解析します
  2. 必要に応じてデータをクリーニングし、準備します(型変換、null の処理など)

データが会話内の以前の分析から得られた場合:

  1. 既存のデータを参照します
3. チャートの種類を選択する

ユーザーがチャートの種類を指定していない場合は、データと質問に基づいて推奨します。

データの関係性推奨するチャート
時間経過による傾向折れ線グラフ
カテゴリ間の比較棒グラフ(カテゴリが多い場合は横棒グラフ)
全体に対する各部分の構成積み上げ棒グラフまたは面グラフ(カテゴリが 6 未満の場合を除き、円グラフは避ける)
値の分布ヒストグラムまたは箱ひげ図
2 つの変数間の相関散布図
2 つの変数の時間経過による比較2 軸の折れ線グラフまたはグループ化された棒グラフ
地理データコロプレスマップ
順位横棒グラフ
フローまたはプロセスサンキーダイアグラム
関係性のマトリックスヒートマップ

ユーザーが指定していない場合は、推奨する理由を簡潔に説明します。

4. ビジュアライゼーションを生成する

必要に応じて、次のいずれかのライブラリを使用して Python コードを記述します。

  • matplotlib + seaborn:静的で出版物の品質に適したチャートの作成に最適です。デフォルトの選択肢です。
  • plotly:インタラクティブなチャートや、ユーザーがインタラクティブな表示を求めている場合に最適です。

コードの要件:

import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd

# Set professional style
plt.style.use('seaborn-v0_8-whitegrid')
sns.set_palette("husl")

# Create figure with appropriate size
fig, ax = plt.subplots(figsize=(10, 6))

# [chart-specific code]

# Always include:
ax.set_title('Clear, Descriptive Title', fontsize=14, fontweight='bold')
ax.set_xlabel('X-Axis Label', fontsize=11)
ax.set_ylabel('Y-Axis Label', fontsize=11)

# Format numbers appropriately
# - Percentages: '45.2%' not '0.452'
# - Currency: '$1.2M' not '1200000'
# - Large numbers: '2.3K' or '1.5M' not '2300' or '1500000'

# Remove chart junk
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)

plt.tight_layout()
plt.savefig('chart_name.png', dpi=150, bbox_inches='tight')
plt.show()
5. デザインのベストプラクティスを適用する

色:

  • 一貫性のある、色覚多様性に配慮したパレットを使用します
  • 色は装飾ではなく、意味を伝えるために使用します
  • 重要なデータポイントや傾向は、コントラストのある色で強調します
  • 重要度の低い参照データはグレー表示にします

タイポグラフィ:

  • 指標名だけでなく、洞察を伝える説明的なタイトルを付けます(例:「月別の売上」ではなく「売上が前年比 23% 増加」)
  • 読みやすい軸ラベルを使用します(可能であれば 90 度回転させないでください)
  • 明瞭さが増す場合は、重要なポイントにデータラベルを付けます

レイアウト:

  • 適切な余白とマージンを設けます
  • データを隠さない位置に凡例を配置します
  • 自然な順序がない場合は、カテゴリを値の順に並べます(アルファベット順ではなく)

正確さ:

  • 棒グラフでは Y 軸を 0 から始めます
  • 明確な表記なしに、誤解を招く軸の省略を行いません
  • パネルを比較する場合は、尺度を統一します
  • 適切な精度を使用します(小数点以下 10 桁まで表示しないでください)
6. 保存して提示する
  1. 説明的な名前を付けて、チャートを PNG ファイルとして保存します
  2. チャートをユーザーに表示します
  3. ユーザーが変更できるよう、使用したコードを提示します
  4. 別のチャートの種類、別のグループ化、期間を拡大した表示などのバリエーションを提案します

例

/create-viz Show monthly revenue for the last 12 months as a line chart with the trend highlighted
/create-viz Here's our NPS data by product: [pastes data]. Create a horizontal bar chart ranking products by score.
/create-viz Query the orders table and create a heatmap of order volume by day-of-week and hour

ヒント

  • ホバー、ズーム、フィルターが使えるインタラクティブなチャートが必要な場合は、「interactive」と指定すると Claude は plotly を使用します
  • フォントを大きくし、コントラストを高めたい場合は、「presentation」と指定してください
  • 複数のチャートを一度にリクエストできます(例:「チャートを 2x2 のグリッドで作成して…」)
  • チャートは現在のディレクトリに PNG ファイルとして保存されます

コメント