超初心者向けPython入門講座

仕事の効率化などにpythonを使いたい!けど何から始めらばよいか分からない、といった初心者の方向けに、pythonの導入から実用的な使い方まで、極力分かりやすくまとめたサイトです。

python Python初心者講座

第15章 Pythonでグラフを作成してみよう(matplotlib)

投稿日:2020-04-29 更新日:

この章では、いよいよPythonを使ったグラフの作成について解説したいと思います。

解説内容

 

1.matplotlibの使い方を学ぼう

Pythonでグラフを作成するためには、matplotlibというライブラリを使用します。そして、一般的に「matplotlib」を使用する際は、下記のようにライブラリをインポートします。

import matplotlib.pyplot as plt

初めて出てくる形ですね!

これは、「matplotlib.pyplot」を「plt」という名前でインポートする、という意味になります。

一般化すると以下のような形です!

import ライブラリ as 使用する名前

※ここで、「使用する名前」はなんでも良いので、好きな名前を付けても構いません。

 

そして、実際にグラフを作成するときは、

plt.plot(x座標, y座標)

という形で使用します。(ここでの「plt」はインポートするときに使用した名前)

 

まとめると、「matplotlib」は下の形で使いますので、まずは形を覚えてください!

matplotlibの使い方
import matplotlib.pyplot as plt
plt.plot(x座標, y座標)

 

2.簡単なグラフを作成してみよう

では、「matplotlib」を使用して簡単なグラフを作成してみましょう!

下のコードを保存し、実行してみてください。

import matplotlib.pyplot as plt
x = [1,2,3,4,5]
y = [3,4,7,6,5]
plt.plot(x,y)
plt.show()

すると、「spyder」を使っている方は以下のような表示が出たと思います。

最近の「spyder」は、デフォルトで図表がプロットペインという場所にプロットされるようになっているからです。そこで、下のように、プロットの場所を開いてグラフを確認しましょう!

これで、グラフを確認できました。ちゃんと作成できていますね!

 

では、先ほどのコードを解説していきます。

基本は、先ほど解説した以下の形を使用しています。

import matplotlib.pyplot as plt
plt.plot(x座標, y座標)

そして、上の基本形の「x座標」と「y座標」を2、3行目でそれぞれ作成しています。(x座標、y座標は「list」の形で作成します。)

x = [1,2,3,4,5]
y = [3,4,7,6,5]

ここで、x座標とy座標は、それぞれ頭から順番に対応しています。今回の場合だと、座標としては以下のようになります。

 

最後に、作成したグラフを表示するために

plt.show()

と記述すれば完成です!

 

3.グラフにタイトルや軸ラベルを表示させよう

では次に、先ほど作成したグラフにタイトルや軸ラベルを表示させる方法について解説します。

といっても実は簡単で、グラフにタイトルや軸ラベルを追加したい場合は以下のように記述すればOKです!

タイトル追加

plt.title(‘タイトル名’)

x軸ラベル追加

plt.xlabel(‘x軸ラベル名’)

y軸ラベル追加

plt.ylabel(‘y軸ラベル名’)

では、先ほどのコードに上で解説したコードを追加し、実行してみましょう!

import matplotlib.pyplot as plt
x = [1,2,3,4,5]
y = [3,4,7,6,5]
plt.plot(x,y)
plt.title('title')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

これで、下のように「グラフタイトル」と「軸ラベル」の入ったグラフが作成できました。

 

4.matplotlibで日本語タイトルを使う(Windows)

さて、先ほどは「タイトル」と「軸ラベル」にアルファベットを使用しましたが、実は日本語を使おうとすると、下記のように文字化けを起こしてしまいます。

デフォルトのフォントが日本語に対応していないため、文字化けを起こしてしまっています。そこで、日本語フォントを指定することで、この文字化けを防ぐことができます。

import matplotlib.pyplot as plt
x = [1,2,3,4,5]
y = [3,4,7,6,5]
plt.plot(x,y)
plt.title('タイトル', fontname='MS Gothic')
plt.xlabel('x軸ラベル', fontname='MS Gothic')
plt.ylabel('y軸ラベル', fontname='MS Gothic')
plt.show()

上のコードのように、

plt.title(‘タイトル名’, fontname=’フォント名’)

とすることで、フォントを指定することができます!ちなみに、今回は日本語フォントの「MS Gothic」を使用しました。

windowsの場合、他にも下記のようなフォントを使用できます。

MS Mincho、HGGothicM、HGMinchoB、HGGothicE、HGMinchoE

 

5.matplotlibで作成したグラフを保存しよう

では最後に、matplotlibで作成したグラフの保存方法について解説します。

グラフを保存するには、「plt.show」の代わりに「plt.savefig」を使用すれば保存できます!では、実際にコードを動かして確認してみましょう。

import matplotlib.pyplot as plt
x = [1,2,3,4,5]
y = [3,4,7,6,5]
plt.plot(x,y)
plt.title('タイトル', fontname='MS Gothic')
plt.xlabel('x軸ラベル', fontname='MS Gothic')
plt.ylabel('y軸ラベル', fontname='MS Gothic')
plt.savefig('練習グラフ.png')

これで、コードと同じ場所に「練習グラフ.png」が作成されたと思います。「plt.savefig」は以下にような形で使用します。

plt.savefig(‘保存する時のグラフ名.拡張子’)

※保存する時の「拡張子」は、基本的に「png」を使用します。

 

6.まとめ

今回は、「matplotlib」を用いて、pythonでグラフを作成する方法について解説しました。ポイントとしては以下の点でしたね。

Point
  • matplotlibの基本的な使用方法はplt.plot(x座標, y座標)
  • x座標とy座標はlist型で、それぞれ頭から順番に対応している
  • タイトルの追記にはplt.title(‘タイトル名’)
  • x軸,y軸ラベルの追加は、plt.xlabel(‘x軸ラベル名’),plt.ylabel(‘y軸ラベル名’)
  • グラフの保存はplt.savefig(‘保存する時のグラフ名.拡張子’)

 

グラフを作成できるようになると、仕事で大量のグラフを作成する必要が出てきたときなどにとても便利なので、ぜひ使えるようになってみてください!

 

また、2次元グラフの作成方法や、グラフ作成時の注意事項をそれぞれ「Pythonで2次元の平面分布図を作成しよう」、「matplotlibでグラフを作成する際の注意点」にまとめていますので、ぜひそちらもご覧ください。

 

>>前回:第14章 Pythonでフォルダを作成してみよう

 

総括

ここまでの解説をもって、Python入門講座を終わりたいと思います。

今まで学んできたことが使えるようになれば、もう初心者は卒業したといえます!

初心者講座ではあまり深く掘り下げていない部分については、「スキル別」で詳しく解説しようと思いますので、そちらから自分のやりたいことを探してみてください。

ここまで読んでくださり、ありがとうございました!

スポンサーリンク




スポンサーリンク




-python, Python初心者講座
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Pandasとnumpyの違いや変換について(どっちを使えばいいの?)

今回は、Pyhonでデータを扱う際に使えるととても便利な「Pandas」について、同じくデータを扱う際に使用する代表的なライブラリである「numpy」と比較して解説したいと思います。 「Pandas」 …

PythonのpandasでExcelを操作しよう(読み込み、書き込み)

今回は、Pythonのライブラリである「pandas」を用いたExcelの読み書きについて解説したいと思います。 他のライブラリを用いてもエクセルを操作することはできますが、「pandas」は使う機会 …

Pythonで2次元の平面分布図を作成しよう(matplotlib)

matplotlibは、Pythonでグラフを作成する際に便利なライブラリです。 ここでは、matplotlibを用いて、Pythonで平面的な分布図を作成する方法について解説したいと思います。 解説 …

Pythonでネットの情報を取得しよう(webスクレイピング)

Pythonは、ほかの言語に比べネットからデータを取ってくる事が得意な言語です。この、ネットからデータを取ってくることを「webスクレイピング」と呼びます。 普段私たちが見ているサイトの情報などは、基 …

第11章 Pythonでテキストファイルを読み込んでみよう(read、readlines、readline)

9章では、「input」を使ってプログラムの外から値を入力しましたね。この章では、「テキストファイル」からのデータの読み込みについて解説したいと思います。(次章では「csvファイル」の読み込みについて …

スポンサーリンク





初めまして、サイトを運営しているキユと申します。

このサイトでは、まったくの初心者がPythonを使って、単純作業や仕事を効率化できるようになるまでに必要なことをまとめています。