【保存版】ChatGPTでグラフ作成!16のプロンプトで徹底解説

ChatGPT

「ChatGPTで簡単にグラフを作りたい!」と考えていませんか?

実は、棒グラフ・円グラフ・レーダーチャートなど、ExcelでおなじみのグラフがChatGPTだけで作成できます。

本記事では、16種類のグラフをプロンプトとともに紹介しています。コーディングの知識は不要。誰でもすぐにグラフ作成が可能です!

AIでサクッとグラフを作ってみてください。

今回の記事でわかること
  • ChatGPTでグラフ作成するコツ
  • グラフを作成する3つの方法
  • 16個のプロンプト&出力例
  • ChatGPTでグラフ作成するときの注意点
監修者プロフィール
森下浩志
日本最大級のAI情報プラットフォーム「romptn ai」編集長。著書に「0からはじめるStable Diffusion」「0からはじめるStable Diffusion モデル・拡張機能集編」など、AmazonベストセラーのAI関連書籍を多数執筆。AIにおける情報の非対称性を解消するための社内研修や出張講義も行う。

生成AIの進化は速く、日々新しいAIツールが登場しています。「ツールが多すぎて、どれを使えばいいか、わからない」といった悩みもあるでしょう。

romptn aiが提携する「SHIFT AI」では、ChatGPTなどのAIツール活用法を紹介するセミナーを定期的に開催しています。

無料で参加できますので「最新のAIツールを知りたい」方は、ぜひ下記よりお気軽に申し込んでみてください!

\累計受講者10万人突破/

ChatGPTでうまくグラフ作成する4つのコツ

ChatGPTでグラフを作るときは、以下のコツを押さえておきましょう。

  1. 具体的に指示出しする
  2. 質問の意図や背景を伝える
  3. 参考にしてほしい情報や回答例を渡す
  4. フィードバックしながら段階的に作成する

順番に解説します。

1.具体的に指示出しする

ChatGPTにグラフを作ってもらうときは、あいまいな表現を避けて具体的に伝えましょう。あいまいな指示では、意図と違うグラフが出力されるケースがあるからです。

商品の月別売上推移を可視化したいです。このExcelデータを使って、月ごとの売上金額を棒グラフで表現してください。縦軸に売上金額、横軸に月を取り、ラベルも日本語で表示してください

具体的なプロンプトを使うと、希望に沿ったグラフが生成されやすくなります。グラフの種類や反映させたいデータについて細かく伝えると、精度の高いグラフの作成が可能です。

2.グラフ作成の意図を伝える

「何のためにグラフを作るのか」を伝えると、ChatGPTの回答がより精度の高いものになります。

「プレゼンで使いたい」と伝えると、説得力や視認性を重視した構成が期待できますし、「印象的なものにしたい」と補足すれば、配色やラベルに視覚的な工夫が加えられます。

用途や目的を明確にすることで、デザインやデータ選定に配慮した出力が可能です。

3.参考にしてほしい情報や回答例を渡す

過去に作ったグラフや「こういう感じにしたい」というイメージがあれば、なるべく具体的に共有しましょう。

以前作ったExcelグラフを読み込ませたり、似た雰囲気のグラフが掲載されたWebサイトのリンクを添えたりするのも効果的です。HTMLやコードの抜粋を提示するのも良いでしょう。

ChatGPTは、提示された例をもとに構造や表現方法を推測して再現できるため、完成イメージに近い例があると意図したグラフに仕上がりやすくなります。色使いやラベルの配置など、細部にこだわりたい場合は、積極的に参考になる情報を渡してみましょう。

4.フィードバックしながら段階的に作成する

一度の出力で完璧なグラフになるとは限りません。最初の出力で「配色のせいで見づらい」「縦軸の単位を変えてほしい」といった希望が出たら、都度フィードバックしましょう。ChatGPTは修正依頼に柔軟に応じてくれるので、具体的な要望を伝えると理想のグラフに近づきます。

思った通りのグラフが出てこないときは、質問の仕方を少し変えてみるのがおすすめです。同じ依頼でも、表現を変えるとChatGPTの解釈が変わり、より望ましい出力につながる場合があります。

ChatGPTのグラフ作成法は3つ!実際に作ってみた

ここでは、3つの方法でグラフを試作してみます。

  1. チャットでプロンプトを作って出力する方法
  2. Advanced Data Analysis(旧Code Interpreter)でExcelを読み込ませる
  3. HTML&CSSを活用

さっそく見ていきましょう。

1.チャットでプロンプトを作って出力

まず、ChatGPT上でプロンプトを作ります。

プロンプトが出力されました。

以下のような形式で、商品の売上推移を折れ線グラフにしてください。

【要件】
・X軸は月(例:1月〜12月)
・Y軸は売上金額(単位:万円)
・複数の商品(例:商品A、商品B、商品C)の売上を比較
・日本語のラベルとタイトルをつけてください
・凡例も表示してください
・日本語フォントで見やすくしてください

【データ例】
月: ["1月", "2月", "3月", "4月", "5月", "6月"]
商品A: [120, 135, 150, 160, 155, 170]
商品B: [80, 95, 100, 105, 110, 115]
商品C: [60, 65, 70, 80, 90, 100]

この内容で折れ線グラフを出力してください。

プロンプトをChatGPTに投げると、きれいに出力されました!

2.Advanced Data Anataysisを使ってExcelデータを読み込ませる

あらかじめ作成しているExcelデータを、ChatGPTにアップロードします。最も手軽で、エラーも起こりにくい方法です。

元のExcelデータを変更した場合は、都度ChatGPTにアップロードすれば適切なグラフになって返ってきます。

HTML&CSSでも作ってみた

試しに、HTMLとCSSも使ってみましょう。

簡単な指示ですが、サンプルコードを書いてくれました。

表示されたグラフはこちらです!

タイトルやレイアウト、配色は、コードの該当部分を書き換えるだけで簡単に変更できます。あまりコーディングに慣れていない人でも、チャットでやり取りすれば好みのグラフが作れますよ。

【プロンプトつき】ChatGPTでサクッとグラフ作成できる実例集

ここからは、ChatGPTで作ったグラフをプロンプトと共に一気に紹介します!

Excelがサポートしているグラフはおおむね作成可能です。

グラフ名特徴
棒グラフ項目ごとの数量を棒の長さで比較する
円グラフ全体に対する各項目の割合を円形で表す
折れ線グラフ時系列データの変化を線で結んで表現する
レーダーチャート複数の指標を軸にとり、全体のバランスや特徴を可視化する
バブルチャート3変数の関係性を同時に可視化する
ドーナツチャート円グラフの中央が空白の形。中心に数値やラベルを追加できる
面グラフ折れ線グラフの下を塗った形。数量の推移と構成比の変化を表す
散布図変数の相関関係や分布、外れ値を可視化する
ツリーマップ項目の構成比を面積で表現する
サンバースト階層データを同心円状に表現する
ウォーターフォール増減を積み重ねて、最終的な合計に至る過程を可視化する
ヒストグラムデータの分布を区間ごとに棒で表現する
箱ひげ図データの中央値・範囲・外れ値を一目で確認できる
じょうごプロセスの段階ごとの減少を表す
等高線3次元データを2次元で表現する
株価チャートローソク足で価格の始値・終値・高値・安値を示す

Excelがサポートしているグラフはおおむね作成可能です。このあと、詳しい実例を紹介するので、このまま記事を読み進めてみてください。

棒グラフ

棒グラフは、カテゴリごとの値の違いを直感的に比較したいときに最適なグラフです。業界別・年度別・地域別など、グループごとの大きさの差や変化を視覚化するのに向いています。

あなたはデータビジュアライゼーションの専門家です。
以下の条件に基づいて、Python(matplotlib)でChatGPT上に可視化可能な「**業界別年間売上推移(2020〜2024年)**」の**グループ化棒グラフ**を作成してください。

【グラフ内容】
以下の売上データ(単位:億円)を使用して、**年度(2020〜2024年)×業界別の売上推移**を示す棒グラフを描画してください。

| 年度 | IT   | 製造 | 小売 | 医療 | 運輸 |
|------|------|------|------|------|------|
| 2020 | 1500 | 1200 |  900 | 1100 |  800 |
| 2021 | 1600 | 1300 |  950 | 1150 |  850 |
| 2022 | 1700 | 1400 | 1000 | 1200 |  900 |
| 2023 | 1800 | 1500 | 1100 | 1300 |  950 |
| 2024 | 1900 | 1600 | 1200 | 1400 | 1000 |

【グラフ仕様】
- グループ化棒グラフ(年度ごとに業界別棒を並べて表示)
- 各棒に売上数値を表示
- 業界ごとに色分け(例:オレンジ/赤/ピンク/紫/青など)
- 凡例を右上に表示し、**タイトル「業界」も日本語フォントで表示**
- 横軸:年度(2020〜2024)、縦軸:売上(億円)
- タイトル:「業界別年間売上推移(2020〜2024年)」
- グリッド線あり(Y軸のみ、点線)
- 図サイズは `figsize=(12, 6)`
- 日本語表示に対応するため、**フォントに Noto Sans JP(など)を指定**

【出力形式】
- ChatGPTのPython実行環境にそのまま貼って実行できる `matplotlib` コードで
- 画像ファイル保存は不要、グラフ表示のみでOK

円グラフ

円グラフは、全体100%に対して各要素がどれくらいの割合を占めているかを分かりやすく伝えるグラフです。以下のグラフのように、業界別の市場シェアや費用内訳、カテゴリ別分布など、「割合」や「比率」を強調したいときに活用されます。

こちらの円グラフは、HTML&CSSでコード生成しました。Pythonに見劣りせずきれいです。

あなたはWebフロントエンドの専門家です。以下の条件に基づいて、Chart.jsとHTML+CSSだけで完結する円グラフのコードを作成してください。出力形式はそのままブラウザで動作する**1つのHTMLファイル**としてください。

【グラフ内容】
「2024年上半期 業界別市場シェア」をテーマに、以下のカテゴリとシェア率をもとに**円グラフ(Pie Chart)**を作成してください。

| 業界 | 割合 |
|------|------|
| IT   | 30%  |
| 製造 | 25%  |
| 医療 | 15%  |
| 小売 | 10%  |
| 運輸 | 10%  |
| その他 | 10% |

【グラフ仕様】
- Chart.js(最新版)と `chartjs-plugin-datalabels` を使用
- グラフ上に各カテゴリのシェア(%)を**ラベルとして直接表示**
- アニメーションは**無効**
- 凡例はグラフの**右側**に表示
- 日本語フォントに対応した**シンプルかつ上品なデザイン**
- 色はパステル調(例:#FFB6B6, #AEDFF7 など)
- HTML+CSS+JavaScriptをすべて1ファイル内にまとめる
- `<script>`タグや`<style>`タグを含め、**コピペでそのまま使える状態**にする

【出力形式】
- 完全なHTMLコードとして出力
- コメントは不要(実務利用を想定)
- サーバー構成や追加ファイルは不要(CDN利用でOK)

折れ線グラフ

折れ線グラフは、時間の経過に伴う数値の増減やトレンドを示すのに適しています。売上やアクセス数、成績などの推移を把握したいときに効果的です。

こちらもHTML&CSSでコードを生成してみました。

あなたはWebフロントエンドの専門家です。以下の条件に基づいて、Chart.jsとHTML+CSSのみで完結する折れ線グラフを作成してください。出力は、ブラウザでそのまま動作する**1つのHTMLファイル**としてください。

【グラフ内容】
「2020〜2024年 業界別売上推移」をテーマに、以下の3業界の売上(単位:億円)の年次推移を折れ線グラフで表してください。

- IT:2000, 2200, 2400, 2600, 2800
- 製造:1800, 1900, 2100, 2300, 2500
- 医療:1500, 1600, 1700, 1800, 1900

【グラフ仕様】
- グラフタイプ:折れ線グラフ(line chart)
- X軸:年度(2020〜2024)
- Y軸:売上(億円)
- 線の色は業界ごとに色分け(パステル調)
- 各業界の凡例を**上部に表示**
- アニメーションは**無効**
- **軸ラベルを明記**(X軸:年度、Y軸:売上(億円))
- **グリッド線あり**
- **背景は白/フォントはNoto Sans JP(日本語対応)**
- 各データ点には**マーカー(点)あり**、ホバー時に拡大
- **キャンバスサイズを大きめ(横1000px × 縦500px)**に指定
- chartjs-plugin-datalabelsは不要(データラベル非表示)

【出力形式】
- HTML・CSS・JavaScriptすべてを1つのHTMLファイル内にまとめて出力
- `<script>`および`<style>`タグを含める
- CDN経由の読み込みで構成(追加ファイルは不要)
- コメントは省略してよい(実務用途想定)

レーダーチャート

レーダーチャートは、複数の評価指標を一度に可視化し、それぞれの特徴を直感的に比較したいときに有効です。業界別に「成長率」「利益率」「市場規模」「競争率」といった複数指標を用いれば、各業界の強みや弱みがひと目でわかります。

あなたはデータビジュアライゼーションの専門家です。以下の仕様に基づき、Python(matplotlib)でChatGPT上に表示可能なレーダーチャートを作成してください。

【グラフ内容】
「業界別 指標比較(レーダーチャート)」をテーマに、以下の業界と指標データをもとにグラフを描画してください。  
各業界の「成長率・利益率・市場規模・競争率」をスコア化したデータを比較表示します(0〜100スケール)。

| 業界 | 成長率 | 利益率 | 市場規模 | 競争率 |
|------|--------|--------|-----------|--------|
| IT   | 85     | 30     | 90        | 40     |
| 製造 | 60     | 25     | 80        | 65     |
| 医療 | 70     | 20     | 70        | 60     |
| 小売 | 50     | 15     | 60        | 70     |
| 運輸 | 45     | 10     | 55        | 75     |

【グラフ仕様】
- タイトル:「業界別 指標比較(レーダーチャート)」
- 軸ラベル:成長率、利益率、市場規模、競争率
- スコア範囲:0〜100(目盛:20刻み)
- 各業界を異なる色で描画し、凡例を右上に表示
- ラベルやタイトルには日本語フォント(Noto Sansなど)を適用
- サイズは `figsize=(8, 8)`
- グラフは円状に閉じた形でプロット(始点と終点をつなぐ)

【出力形式】
- Python(matplotlib)コードで出力
- ChatGPTのPython実行環境でそのまま実行可能な形式
- グラフ画像の保存は不要、画面表示のみでOK

バブルチャート

バブルチャートは、横軸・縦軸に加えて、円の大きさで3つのデータを同時に表せるグラフです。業界や製品の規模・特徴を直感的に比較できます。

あなたはデータビジュアライゼーションの専門家です。以下の条件に基づき、Python(matplotlib)でChatGPT上に表示可能なバブルチャートを描画してください。

【グラフ内容】
「2024年 業界別 売上・利益率・市場シェア(バブルチャート)」をテーマに、以下のデータを可視化してください。

| 業界 | 売上(億円) | 利益率(%) | 市場シェア(%) |
|------|-------------|-------------|-----------------|
| IT   | 2800        | 18          | 30              |
| 製造 | 2500        | 12          | 25              |
| 医療 | 1900        | 15          | 20              |
| 小売 | 1200        | 8           | 15              |
| 運輸 |  900        | 6           | 10              |

【グラフ仕様】
- X軸:売上(億円)
- Y軸:利益率(%)
- バブルサイズ:市場シェア(%)×300
- 各バブルに業界名ラベルを中央表示
- カラー:業界ごとにパステル調で色分け
- バブルは透明度0.6、黒枠線あり
- 背景グリッドあり(点線)
- タイトル:「2024年 業界別 売上・利益率・市場シェア(バブルチャート)」
- 日本語フォント(Noto Sans JPなど)を適用し文字化けを防止
- 図サイズ:`figsize=(12,6)`
- 画像保存は不要、表示のみ

【出力形式】
- ChatGPTのPython実行環境でそのまま動くmatplotlibコードを出力
- 実行するとバブルチャートが画面に描画される形式

ドーナツチャート

ドーナツチャートは、円グラフの中央をくり抜いた形のグラフです。

全体に対する各カテゴリの割合を一目で把握できます。

あなたはデータビジュアライゼーションの専門家です。以下の条件に基づき、Python(matplotlib)でChatGPT上に表示可能なドーナツチャートを描画してください。

【グラフ内容】
「2024年 業界別市場シェア(ドーナツチャート)」をテーマに、以下のデータを可視化してください。

| 業界 | 市場シェア(%) |
|------|----------------|
| IT   | 30             |
| 製造 | 25             |
| 医療 | 15             |
| 小売 | 10             |
| 運輸 | 10             |
| その他 | 10           |

【グラフ仕様】
- グラフタイプ:ドーナツチャート(中央をくり抜いた円グラフ)
- 各カテゴリのシェア(%)をラベルとして表示
- 色はパステル調で業界ごとに区別
- タイトル:「2024年 業界別市場シェア(ドーナツチャート)」をグラフ上部に表示
- フォントはNoto Sansなど日本語対応
- 図サイズ:`figsize=(8, 8)`
- 中央には白い円を重ねてドーナツ状に加工
- 背景は白、凡例は不要(ラベルに業界名あり)
- グラフ保存は不要、画面表示のみでOK

【出力形式】
- ChatGPTのPython実行環境でそのまま動くmatplotlibコードを出力
- 実行するとドーナツチャートが画面に描画される形式

面グラフ

面グラフ(エリアチャート)は、折れ線グラフに面積を塗ったものです。カテゴリごとの推移・構成比の変化を示したいときや、全体の増減と内訳のバランスを同時に見たいときに適しています。

Python で積み上げ型の面グラフ(スタックエリアチャート)を描いてください。

【データ仕様】
- 表す内容:2024年1月〜12月の月別Webサイト訪問数
- カテゴリ:検索流入、SNS流入、ダイレクト流入(それぞれ適当な推移を作ってください)
- 合計は月により2,000〜6,000の範囲で増減してかまいません

【描画仕様】
- matplotlib を使って積み上げ面グラフを描画
- 凡例に各カテゴリ名を表示(日本語で)
- タイトルは「月別Webサイト訪問数の推移(カテゴリ別)」、Y軸ラベルは「訪問数」、X軸は月
- フォントは Noto Sans JP を読み込んで文字化け対策
- 図のサイズは `figsize=(10, 5)`、`tight_layout()` で余白を調整
- グリッドは横線のみ点線で表示

この条件で1枚の図として出力してください。

散布図

散布図は、2つの変数の関係性(相関)を見るときに使われます。

数値データ間の傾向やばらつきを直感的に理解できるため、広告費と売上の関係や、勉強時間とテストの点数の相関を見たいときに適しています。

Pythonで意味のある散布図を描いてください。

【データ仕様】
- X軸:高校生50人の1週間あたりの学習時間(単位:時間)。範囲は1〜20時間としてください。
- Y軸:模擬試験の得点(0〜100点)。学習時間が増えるほど得点が高くなるように、Y = 50 + 学習時間 × 2.5 にノイズを加えて生成してください。
- ノイズは正規分布 N(0, 10) とします。
- 最終的な得点は0〜100点の範囲にクリップしてください(例:np.clip)。

【描画仕様】
- matplotlib を使用して散布図を作成
- マーカーは「×」、色はオレンジ(#f4a300)、サイズは適度に見やすく
- タイトル:「学習時間と模試得点の関係」
- X軸ラベル:「学習時間(時間)」、Y軸ラベル:「模試得点」
- グリッドは点線で表示
- フォントに Noto Sans JP を読み込んで、日本語のタイトルやラベルが文字化けしないようにしてください
- 図のサイズは figsize=(10, 5)、tight_layout() を使用して余白調整

この条件で1枚の散布図を出力してください。

ツリーマップ

ツリーマップは、階層構造やデータの割合を長方形の面積で視覚的に表すグラフです。全体に対する各要素の比率を一目で把握できます。

Pythonでツリーマップを描いてください。

【前提】
- Google Colab 環境で実行します。
- 日本語が文字化けしないように、IPAフォントを使ってください(IPAゴシック)。

【データ仕様】
- 家賃:75,000円
- 食費:30,000円
- 光熱費:15,000円
- 通信費:10,000円
- 娯楽:20,000円

【描画仕様】
- squarify を使ってツリーマップを描画してください。
- 各支出項目は色分けし、金額と項目名を日本語で表示(改行あり)。
  例:「家賃\n75,000円」
- カラーマップには pastel 系の落ち着いた色(例:plt.cm.Pastel2)を使ってください。
- 文字の書式は以下の通り:
  - フォントサイズ:12
  - 色:黒
  - 太さ:bold
  - フォント:IPAゴシックを明示的に読み込んで使用
- タイトル:「月間支出の内訳(ツリーマップ)」とし、日本語フォントで中央に表示
- グラフの枠線(軸)は非表示
- 図のサイズは `figsize=(8, 6)`
- 画像として保存("monthly_expense_treemap.png")し、同時に表示も行ってください

この条件で、1枚のグラフを出力してください。

ChatGPT上では環境の問題でエラーが出ましたが、Google Colabでの出力用にしてみたところきれいなツリーマップができました!

サンバースト 

サンバーストチャートは階層構造を可視化するのに最適なグラフです。部門ごとの構成比や階層関係が一目でわかるため、組織の構造やカテゴリの内訳を視覚化するのに向いています。

サンバーストチャート(Sunburst chart)を Python で描いてください。

【データ仕様】
- 企業組織の階層構造を想定し、以下のような構成にしてください:
  - 会社全体(100%)
    - 営業部(30%)
      - 東日本(15%)
      - 西日本(15%)
    - 技術部(40%)
      - 開発(25%)
      - インフラ(15%)
    - 管理部(30%)
      - 経理(15%)
      - 人事(15%)

【描画仕様】
- plotly を使用してサンバーストチャートを描画
- 日本語対応フォントを指定(`Noto Sans JP`)
- 色分けは部門単位(親で異なる色)
- ホバー時にセクション名と比率を表示
- 中央に会社名(例:「全社」)が表示される構成
- タイトルは「組織構成のサンバーストチャート」としてください
- 出力はインタラクティブな1枚のグラフとして表示

ウォーターフォール

ウォーターフォールは、最初の値から最終の値に至るまでの増減要因を視覚的に表現します。利益構造や費用内訳の説明資料として有効です。

あなたはデータビジュアライゼーションの専門家です。以下の条件に基づき、Python(matplotlib)でChatGPT上に表示可能なウォーターフォールチャートを描画してください。

【グラフ内容】
「2024年 営業利益までの構成(ウォーターフォールチャート)」をテーマに、以下の構成要素を時系列で表示してください。

| 項目       | 金額(百万円) |
|------------|----------------|
| 売上       | +1000          |
| 原価       | -300           |
| 人件費     | -200           |
| その他費用 | -150           |
| 営業利益   | +350(自動計算)|

【グラフ仕様】
- 売上:緑色のバー
- 原価、人件費、その他費用:赤色のバー
- 営業利益:グレーの積み上げバー
- 各バーの上に金額ラベルを表示(+/-記号付き)
- 背景にグリッドを表示(視認性のため)
- タイトル:「2024年 営業利益までの構成」
- X軸:各項目名、Y軸:金額(百万円)
- フォントは日本語対応(Noto Sansなど)
- 図サイズは`figsize=(12, 6)`
- グラフの保存は不要、表示のみ

【出力形式】
- ChatGPTのPython実行環境でそのまま動作するmatplotlibコードを出力
- 実行するとウォーターフォールチャートが画面に描画される形式

ヒストグラム

ヒストグラムは、データの分布を視覚的に表現するグラフです。

値の範囲をいくつかの区間に分け、その中に含まれるデータの数(頻度)を棒グラフで表します。

データの偏りやばらつきを把握するのに便利です。

あなたはデータビジュアライゼーションの専門家です。以下の条件に基づき、Python(matplotlib)でChatGPT上に表示可能なヒストグラムを作成してください。

【グラフ内容】
「エンジニア年収の分布」をテーマに、以下のような架空データ(100件)を生成し、それをヒストグラムで可視化してください。

【グラフ仕様】
- 横軸:年収(万円)
- 縦軸:人数(人)
- 年収データは平均600万円、標準偏差100万円の正規分布を仮定(NumPyで乱数生成)
- ビン数は10個
- 棒はパステル調の青系で塗りつぶし
- タイトル:「エンジニア年収の分布(ヒストグラム)」
- X・Y軸のラベルに日本語フォントを使用(Noto Sansなど)
- グリッド線あり(視認性向上)
- 図サイズは figsize=(10, 6)
- グラフ保存は不要、画面表示のみ

箱ひげ図

箱ひげ図は、データの分布・ばらつき・外れ値の有無が一目でわかるグラフです。

以下の場面で利用されています。

  • 複数グループ間の中央値や分散の比較
  • 外れ値や極端な値の検出
  • 教育・心理・マーケティング・実験データの可視化

グループ別に「中央値」「四分位範囲」「最小値・最大値」「外れ値」を表示できます。

Pythonで3つのグループ(グループA・B・C)のスコアを比較する箱ひげ図を描いてください。

【データ仕様】
- 各グループのスコアは NumPy の正規分布からランダムに生成してください。
  - グループA: 平均0, 標準偏差1
  - グループB: 平均1, 標準偏差0.5
  - グループC: 平均-0.5, 標準偏差1.2
- 各グループのサンプル数は30程度で十分です。

【描画仕様】
- matplotlib の `boxplot` を使用して描画
- X軸にグループ名(グループA〜C)、Y軸にスコアを表示
- タイトルは「グループ別箱ひげ図」、Y軸ラベルは「スコア」
- 外れ値(outliers)も描画
- フォントは `Noto Sans JP` を読み込んで日本語対応
- グラフサイズは `figsize=(10, 5)` とし、`tight_layout()` で余白調整
- 背景は白、グリッドは点線で表示(なくても可)

この条件で1枚の図として出力してください。

じょうご(ファネルチャート)

じょうご(ファネルチャート)は、段階を追って数が減っていくプロセスを可視化したいときに使います。マーケティングや営業、採用など「入り口は多いが、最終的には一部が残る」ケースに最適です。

たとえば「Web訪問 → 資料請求 → 商談 → 成約」のような流れを、視覚的に理解しやすい形で示せます。

顧客獲得の段階を表すファネルチャートを描いてください。 
各ステージは「訪問」「資料請求」「見積依頼」「商談」「契約」です。 
それぞれの件数は順に 1000, 600, 350, 200, 120 です。 色の濃淡をつけて、文字が見やすいように文字色も自動調整してください。
matplotlib を使って台形で表現し、タイトルは「顧客獲得のファネルチャート」としてください。 日本語フォントの文字化けが起きないよう、フォント指定もお願いします。

等高線

等高線は、2次元空間上の数値の変化を線や色の濃淡で表現します。

もともとは地形図(標高)で使われてきた手法ですが、現在では以下のような用途でもよく活用されます。

  • 施設の温度・湿度分布の把握
  • 気象予報における気圧・風速・降水量
  • 磁場や振動、Wi-Fi強度などの強度分布

数値の傾きや局所的なピークを視覚的に捉えやすいのが魅力です。

工場フロアの温度分布を 3D で可視化するグラフを作成してください。  
横 10m、奥行 15m を 100 × 100 のメッシュで表現し、温度は次の 3 要素で構成します。

1. X=2, Y=5 を中心とする局所的な加熱(+10℃)  
2. X=8, Y=12 を中心とする局所的な冷却(-5℃)  
3. sin×cos のゆらぎ

ベース温度は 25℃ とし、plot_surface でサーフェスを描画します。  
同時に床面(Z の最小値)に向けて contourf で等高線をカラーバンド付きで投影してください。  
カラーマップは **plasma** を使用し、カラーバーは次の条件で配置してください。

- **幅 0.04、パディング 0.08**(shrink=0.6, aspect=10, pad=0.08 を指定)  
- ラベルは **「温度(℃)」**  
- 軸ラベルやグラフ本体に重ならない位置に配置

視点角度は elev=30, azim=135 に設定。  
軸ラベルは「横位置(m)」「奥行位置(m)」「温度(℃)」、タイトルは「工場内の温度分布」としてください。  
日本語文字化けを防ぐため、Noto Sans JP などの日本語フォントを読み込んで使用してください。

株価チャート

株価チャートで用いるキャンドルスティック(ローソク足)チャートは、1 本のローソクで 1 日(または 1 期間)の「始値・高値・安値・終値」を表現します。

実体(太い四角) が「始値↔終値」、ヒゲ(細い線) が「高値↔安値」です。

実体が 赤(下落)/緑(上昇) など色分けされており、相場の流れや価格変動 がひと目で把握できます。

- 始値は100前後から生成し、終値・高値・安値は乱数でリアルに変動
- 各日付に対して OHLC を持つ

【描画条件】
- matplotlib でローソク足(キャンドルスティック)を描画
  - 実体:終値 > 始値 → 緑(#2ca02c)、終値 < 始値 → 赤(#d62728)
  - 実体は中央寄せ(bar)
  - ヒゲは黒で vlines で描画
- グラフ全体に洗練されたスタイルを適用
  - 背景色:#f9f9f9
  - 上下枠線は非表示、左右は薄い線に
  - Y軸のみ点線グリッド、X軸グリッドは非表示
- タイトル:「株価チャート」、Y軸ラベル:「株価」
- 日付表示は2営業日おき、X軸ラベルは45°に傾ける
- フォントは Noto Sans JP を読み込んで使用
- 図のサイズは `figsize=(12, 6)`、`tight_layout()` で余白調整

この条件で1枚のチャート画像として出力してください。

ChatGPTでグラフ作成するときの3つの注意点

最後に、ChatGPTでのグラフ作成における注意点を3つ解説します。

  1. 一発で思い通りに出力しようと思わない
  2. 個人情報や機密情報は絶対に入れない
  3. 日本語フォントのアップロードを忘れない

1つずつ見ていきましょう。

1.一発で思い通りに出力しようと思わない

ChatGPTは非常に優秀なツールですが、一度のプロンプト入力で完璧なグラフが出力されるとは限りません。データの読み違いが起こったり、プロンプトのあいまいさから意図とは違う結果が出たりするケースもあります。

また、あまりにも複雑なグラフ作成は難しいため、データの整備やプロンプトの具体性を高めるなど、対策も必要です。

2.個人情報や機密情報は絶対に入れない

業務上の機密データや個人情報を含んだプロンプトを投げるのは避けましょう。ChatGPT上で使用した情報は、学習のためにクラウドで保管されています。もし個人情報や社内の機密情報を入力すると、情報が漏れる危険性があるのです。

使用するデータは必ず匿名化し、社内規定や利用規約に従って安全に取り扱わなければなりません。

また、ChatGPTの設定も変更しておきましょう。

「設定」から「データコントロール」を選び、「モデルの改善」の下にある「すべての人のためにモデルを改善する」のトグルをオフにします。

3.日本語フォントのアップロードを忘れない

ChatGPTでグラフ作成すると、文字が□で表記されるケースがあります。

これは、デフォルト環境に日本語フォントが入っていないためです。文字化けを防ぐには、Google Fontsにアクセスし、日本語フォントをChatGPTにアップロードしなければなりません。

「Noto Sans Japanese」をクリックします。

「Get font」の青いボタンをクリックします。

「Download all」をクリックすると、「Noto_Sans_JP」というzipファイルがダウンロードされます。解凍すると「static」というフォルダがあるので、中からどれか1つ選んでChatGPTにアップロードしましょう。

文字化けが解消されました!

まとめ

ChatGPTを使えば、コードが書けなくても、さまざまなグラフを手軽に作成できます。

用途に応じたグラフを選び「こういうグラフを描きたい」とChatGPTに伝えるだけできれいなグラフを作ってくれます。プロンプト次第で、業務資料やレポートに使えるレベルの図も自動生成が可能です。

フォント指定などの日本語対応やレイアウト調整もプロンプトでコントロール可能なので、試行錯誤を楽しみながら精度を高めましょう。

この記事では以下を紹介しました。

  • ChatGPTでのグラフ作成で押さえたいコツ
  • ChatGPTでグラフを作成する流れ
  • 16種類のグラフ作成プロンプトと出力例
  • グラフ作成で注意すべき点

AIでグラフ作成をもっと身近に、直感的に。

ぜひ、ChatGPTを使ったグラフ作成を体験してみてください。

romptn aiが提携する「SHIFT AI」では、AIの勉強法に不安を感じている方に向けて無料オンラインセミナーを開催しています。

AIを使った副業の始め方や、収入を得るまでのロードマップについて解説しているほか、受講者の方には、ここでしか手に入らないおすすめのプロンプト集などの特典もプレゼント中です。

AIについて効率的に学ぶ方法や、業務での活用に関心がある方は、ぜひご参加ください。

\累計受講者10万人突破/