今回はPythonにおいてグラフを作成する方法をご紹介したいと思います。
この記事では
・グラフを作成する前に知っておきたい事
・numpyとは
などといった基本な内容から
・matplotlibを使用してグラフを作成する方法
・pandasを使用してグラフを作成する方法
など、より具体的な内容に関してもわかりやすく解説していきます。
なお、Pythonの記事については、こちらにまとめています。
グラフを作成する前に知っておきたい事
みなさんはPythonを使用してグラフを作成したことはありますか?
もしかしたら「難しそう」というイメージを持たれている方も多いかもしれません。
しかしPythonには様々なライブラリが用意されており、グラフの作成もとっても簡単に出来てしまうんです。
グラフ作成の前に最低限知っておきたいのがグラフ作成ライブラリの「Matplotlib」と数値計算ライブラリの「NumPy」です。
以下のセクションで詳しくご紹介いたします。
NumPyとは
NumPyとはPythonで数値計算などを効率よく行うのに便利なモジュールです。
基本的な数値計算はもちろんPythonのみでも可能ですが、NumPyを使うことによって計算がより簡単になり、実行速度が速まったりもします。
グラフを作成するにあたって、NumPyの配列であるndarrayを使用するケースが多いため、NumPyの操作には慣れておいた方が良いでしょう。
NumPyの基本的な使い方については以下のリンクを参照してください。
基本的なグラフを作成する方法
では早速、簡単なグラフを作成するにはどのような方法があるのかを見て行きましょう。
主に、matplotlibライブラリやpandasライブラリを使用する方法があります。
この記事では両方のインストール方法や、メリット、グラフの一例などをご紹介したいと思います。
matplotlibを使う方法
まず最初にご紹介する方法はmatplotlibライブラリを使用する方法です。
matplotlibとはPythonにおけるグラフ描画の標準的なライブラリです。
様々な種類のグラフを作成する事が出来、構文などもシンプルで初心者でも使いやすいのが特徴です。
matplotlibで作成したグラフの一例は以下の通りです。
上のグラフは以下のコードを実行して作成しました。
x = np.linspace(0,10,100) y = x pyplot.plot(x,y) pyplot.show()
変数xに0から10までの数字を100分割したものを代入し、pyplotモジュールのplot関数を使用しグラフを出力しています。
matplotlibでは二次元プロットのみでなく三次元プロットなど、インタラクティブなグラフなども作成出来る、たくさんの機能が詰まったライブラリです。
主なグラフ作成においては基本的にはmatplotlibのpyplotモジュールを使用します。
matplotlibを使用しはじめるのには、まずはインストールを行いましょう。
matplotlibライブラリをインストールするには、コマンドプロンプトで次のコマンドを実行させてみてください。
pip install matplotlib
これでmatplotlibライブラリのインストールは完了しました。
matplotlibの公式ドキュメントは、以下のリンクを参照してください。
pandasを使う方法
もう一つの方法はpandasライブラリを使用するものです。
pandasライブラリはデータ解析にとても便利なライブラリで、csvファイルから直接グラフが作成出来たり、データの分析に便利なツールがたくさん詰まっています。
pandasライブラリを使用して作成したグラフの一例です。
上のグラフは以下のコードを実行して作成したものです。
x = np.random.randn(100) df = pandas.DataFrame({'x':x}) lines = df.plot.line() pyplot.show()
上のコードでは変数xに100個の乱数を代入し、それを元にデータフレームdfを作成し、plot関数を使用しプロットしたものです。
pandasのインストール方法は、コマンドプロンプトで次のコマンドを実行させるのみです。
pip install pandas
pandasの公式ドキュメントは以下のリンクを参照してください。
また、matplotlibとpandasを組み合わせて使用する事も可能です。
まとめ
この記事ではPythonにおいてグラフ作成のための方法をご紹介しました。
matplotlibもpandasも、両方Pythonにおいてはとてもメジャーなライブラリなので、どちらも使い方を覚えておくと役に立つでしょう。
みなさんもこの記事を通して、Pythonのより専門的な知識をどんどん増やしていってくださいね。