visual-design について
visual-designは、データチャート、ポスター、インフォグラフィック、アートを作成するスキルです。チャートとビジュアル制作に別々のツールを備え、編集可能な図はExcalidraw skillを案内します。
主な機能
- 01データチャートのPNG生成
- 02ポスターやインフォグラフィックの作成
- 03PNGまたはPDFでの出力
- 04編集可能な図にExcalidraw skillを利用
活用シーン
- 01データをチャートにまとめる
- 02ポスターやインフォグラフィックの制作
- 03アートやビジュアルの作成
- 04編集可能な構成図やフロー図の作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ aws-samples/ sample-strands-agent-with-agentcore --skill visual-designインストール後、Claude Code で/visual-designを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
canvas-design.mddiagram-design.mdlibrary-reference.md詳細
ビジュアルデザイン
クイックリファレンス
| タスク | ツール | ガイド |
|---|---|---|
| データチャートまたはグラフ | generate_chart | SKILL.md の Design Ideas を参照 |
| ポスター/インフォグラフィック/アート | create_visual_design | canvas-design.md を参照 |
| アーキテクチャ/フロー図 | Excalidraw スキル | アプリ内で編集可能な結果を作成するには create_excalidraw_diagram を使用します。ラスター形式または印刷用の成果物が求められている場合に限り、画像生成を使用してください。 |
利用可能なツール
generate_chart
データの可視化を行います。matplotlib/plotly のコードを実行してチャートの PNG を生成します。
python_code(str, 必須):チャート生成用の Python コードoutput_filename(str, 必須):.pngファイル名
create_visual_design
ポスター、インフォグラフィック、アートワーク、図表などのビジュアルデザインを作成します。 reportlab、Pillow、svgwrite、または利用可能な任意のライブラリを使用します。
python_code(str, 必須):デザイン生成用の Python コードoutput_filename(str, 必須):.pngまたは.pdfファイル名
利用可能なライブラリ
| 用途 | ライブラリ | 出力 | 備考 |
|---|---|---|---|
| データチャート | matplotlib, plotly, bokeh | PNG | チャートに最適 |
| PDF デザイン | reportlab, fpdf | 自由に制御可能 | |
| 画像デザイン | Pillow + fonttools | PNG | PNG デザインに最適 |
| ベクターグラフィックス | svgwrite → svglib + renderPDF | SVG → PDF | SVG→PNG はサポートされていません(renderPM が利用できません) |
| 画像処理 | Wand (ImageMagick), opencv-python | PNG | まず利用可能か確認してください |
重要:PNG を出力する場合は、Pillow または matplotlib を使用してください。svgwrite→renderPM は使用しないでください(rlPyCairo は利用できません)。
デザインのワークフロー
データチャート(generate_chart)
- データ構造を特定し、適切なチャートの種類を選びます
- カラーパレットを選択します(下記の Design Ideas を参照)
- 指定されたラベル、単位、色、寸法、明示的な軸の範囲をコード内で保持します。生成された出力でこれらを確認してください。
plt.savefig(filename, dpi=300, bbox_inches='tight')を使ってコードを記述します- 生成されたチャートを確認し、保存されたファイルが指定された形式とファイル名に一致することを確認します
ビジュアルデザイン(create_visual_design)
- デザインのコンセプト/理念を(内部で)定めます
- canvas-design.md の手順に従います
- 適切なライブラリを選び、コードを記述します
- 保存します:reportlab は
canvas.save()、Pillow はimage.save()、matplotlib はplt.savefig() - 出力を確認し、調整します
デザインのアイデア
カラーパレット
| テーマ | メインカラー | アクセントカラー | 背景色 |
|---|---|---|---|
| ミッドナイト・エグゼクティブ | 1E2761 | 408EC6 | 0D1B2A |
| フォレスト&モス | 2C5F2D | 97BC62 | 1A1A1A |
| コーラル・エナジー | F96167 | F9E795 | 2F3C7E |
| オーシャン・グラデーション | 065A82 | 1B9AAA | 021B29 |
| チャコール・ミニマル | 36454F | E8E8E8 | 1C1C1E |
| チェリー・ボールド | 990011 | FCF6F5 | 150E11 |
| セージ・カーム | 84B59F | 69A297 | 2D3A2D |
| ウォーム・テラコッタ | B85042 | E7E8D1 | 2A1F1C |
タイポグラフィ
細字またはライトのフォントを推奨します。デザイン内のテキストは最小限に抑えます。
| 要素 | サイズ | スタイル |
|---|---|---|
| メインタイトル | 48-72pt | 太字または細字 |
| 補足テキスト | 14-18pt | ライト |
| ラベル/キャプション | 8-12pt | レギュラー、控えめ |
テキストとキャンバスのバランス(重要):
- テキストサイズは、キャンバス全体や周囲のデザイン要素との比率を考慮してください
- よくある間違い:キャンバスに対してテキストが小さすぎて、通常の視距離では読めない
- 目安:拡大しないと読めない場合は、小さすぎます
- タイトルは目を引く必要があります。迷ったら大きくしてください
- ラベル/キャプションは、単なる装飾として扱わず、はっきり読めるようにしてください
- テスト:出力を頭の中で 50% に縮小してみてください。すべてのテキストが引き続き読める必要があります
余白と構成
- 十分な余白を確保します(キャンバスの最小 10%)
- 要素間の間隔を統一します
- 要素を重ねず、すべてキャンバス内に収めます
- 視覚的な階層を設け、サイズ、色、位置で重要度を伝えます
避けること
- 要素をキャンバスの端にぴったり配置すること(余白が不十分になります)
- 要素を重ねること
- 色を使いすぎること(3~4 色に抑えます)
- テキストを詰め込みすぎること — 視覚要素を中心にします
- カスタマイズせずに matplotlib のデフォルトスタイルを使うこと
コード要件
- コードでファイルをディスクに保存する必要があります
- 指定された
output_filenameをそのまま使用します - PNG:
dpi=300以上を推奨します - PDF:A4 または Letter サイズを推奨します
- 韓国語のテキストには、適切なフォントを設定します
QA
問題があることを前提に、問題がないか確認してください。
- 生成された画像/PDFを確認します
- 要素の重なり、テキストの切れ、余白の不足がないか確認します
- 十分な色のコントラストがあるか確認します
- 問題が見つかった場合は、コードを修正して再生成します
- チェックに失敗した場合は、修正して確認します。有効な出力を、修正サイクルを実施するためだけに再生成しないでください。
UI ガイダンス(tools-config より)
ツールの選択:
- generate_chart:データのチャート/グラフ(matplotlib、plotly、bokeh)→ PNG
- create_visual_design:ポスター、インフォグラフィック、アートワーク、フロー図(reportlab、Pillow、svgwrite)→ PNG または PDF
コード要件:
- チャート:plt.savefig(filename, dpi=300, bbox_inches='tight')
- PDF デザイン:canvas.save()(reportlab)または同等の処理
- 画像デザイン:image.save(filename)(Pillow)
- PNG:dpi=300 以上を推奨します
- PDF:A4 または Letter サイズを推奨します
コメント
Markdown 対応