Pythonでデータを可視化するときに最もよく使われるライブラリがMatplotlibです。折れ線グラフや棒グラフ、散布図などを簡単に作成できるため、データ分析の第一歩として必ず覚えておきたいスキルです。この記事では、初心者でも理解しやすいように基本から応用まで紹介します。
Matplotlibとは?
Matplotlibは、Pythonでグラフを描画するための代表的なライブラリです。多機能で自由度が高く、シンプルな折れ線グラフから高度な可視化まで対応できます。特に「pyplot」モジュールを利用すれば、少ないコードで直感的にグラフを描くことが可能です。また、データ分析や機械学習でよく利用されるPandasやNumPyとの相性も抜群です。
Matplotlibの基本的な使い方
インストールとインポート
まずはMatplotlibをインストールしましょう。一般的にはpipを使って簡単に導入できます。
pip install matplotlib
インポートする際は「pyplot」を短縮して「plt」と書くのが慣例です。
import matplotlib.pyplot as plt
最初のグラフを描画してみよう
では、実際に簡単な折れ線グラフを描いてみましょう。
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
plt.plot(x, y)
plt.show()
これを実行すると、直線的なグラフが表示されます。非常にシンプルですが、これがグラフ描画の第一歩です。
さまざまなグラフの描画方法
折れ線グラフ
データの推移を表すときに便利です。線の色やスタイルを変更することで見やすいグラフにできます。
plt.plot(x, y, color="red", linestyle="--", marker="o")
plt.show()
棒グラフ
カテゴリごとの比較をする際によく使われます。
labels = ["A", "B", "C", "D"]
values = [10, 20, 15, 25]
plt.bar(labels, values)
plt.show()
散布図
2つの変数の関係を視覚化するのに役立ちます。
x = [5, 7, 8, 7, 6, 9, 5, 6]
y = [99, 86, 87, 88, 100, 86, 103, 87]
plt.scatter(x, y)
plt.show()
グラフの装飾とカスタマイズ
グラフは視覚的にわかりやすいことが重要です。そのためにはタイトルや軸ラベル、凡例などを設定しましょう。
plt.plot(x, y, label="Linear Growth")
plt.title("Sample Graph")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.legend()
plt.grid(True)
plt.show()
このように設定することで、グラフの情報がより伝わりやすくなります。
複数のグラフを並べて表示
「subplot」を使うと複数のグラフを1つの画面に並べて表示できます。比較や分析に便利な方法です。
fig, axs = plt.subplots(1, 2)
axs[0].plot([1, 2, 3], [1, 4, 9])
axs[0].set_title("Line")
axs[1].bar(["A", "B", "C"], [3, 7, 5])
axs[1].set_title("Bar")
plt.show()
これにより、同じデータを異なる形式で比較したり、複数の観点から分析できます。
応用テクニック
基本を押さえたら、少し応用的な使い方にも挑戦してみましょう。
日本語対応
日本語をラベルやタイトルに使うと文字化けすることがあります。その場合はフォントを設定しましょう。
plt.rcParams["font.family"] = "MS Gothic"
plt.title("サンプルグラフ")
スタイルシートを活用
Matplotlibにはあらかじめ用意されたスタイルがあります。
plt.style.use("ggplot")
これを指定すると一気にデザイン性の高いグラフになります。
よくあるエラーと注意点
初心者がよく遭遇するのは「グラフが表示されない」という問題です。これは「plt.show()」を忘れている場合が多いです。また、Jupyter Notebookを使用している場合は「%matplotlib inline」を記述すると表示が安定します。さらに、データの長さが一致していないと「ValueError」が出るので注意しましょう。
Python初心者におすすめのサービス
「もっと実践的なコード例が欲しい」「自分の用途に合わせて教えてほしい」という方には、
テックアカデミーがおすすめです。
AI関連コースやシステム開発コース、アプリ開発コースなど豊富な学習が可能です。
さらに今なら無料相談でアマギフプレゼントもあるので、気軽にお申込みしてみてください。
また、プログラミング学習のプラットフォームとして、ココナラでは、現役エンジニアや経験豊富なPython講師が、あなたのレベルや目的に合わせてマンツーマンで指導してくれます。
書籍や動画ではカバーしきれない、あなた専用のカリキュラムで学べるのが最大の魅力。短時間で効率的にスキルを伸ばしたいなら、まずは出品者のサービスをチェックしてみましょう。
また、教える側としてスキルを活かして副業・独立を目指すことも可能です。
プログラミング経験やPythonの知識があれば、自分の得意分野をサービスとして出品し、全国の学習者から直接依頼を受けられます。オンラインで完結するため、場所や時間に縛られず、自分のペースで働けるのも大きなメリットです。
こちらのリンクから詳細をチェックしてみてください。
まとめ
Matplotlibを使えば、Pythonで手軽に多様なグラフを描画できます。基本操作を覚えれば、データの理解が格段に深まり、分析作業もスムーズになります。ぜひ実践して慣れていきましょう。
以下のリンクから、
SESの組込みシステムから色々な不満を持ち、自社WEBサービスへ転職した実体験の記事がありますので、是非読んでみてください。とても喜びます。
SESの組込みシステムから自社WEBサービスのエンジニアに転職した話

コメント