さくら CGI/Python/Composer/pear
さくら VPS Python/pyplot インスト-ル
ここまでで、CGI, Python ファイルが実行できるようになりました。
引き続き、Python/pyplot をインスト-ルします。
Python/pyplot インスト-ル
を参考にします。
デ-タの集計と解析を行うためのライブラリは Python には多数そろっています。
その中でも、グラフを描くことに最も優れているのが pyplot です。
これを使うといろいろなグラフを簡単に描くことができます。
pyplot は matplotlib ライブラリ-の中にあります。
よって、 matplotlib をインスト-ルする必要があります。
Python/pyplot インスト-ル準備
まずは、Pythonパッケージのインストールなどを行うユーティリティ pip が必要です。
pip
に行くと pip について詳しく書いてあります。
さくら VPS の場合 Ubuntu のなかに Python はなし、python3 と python3.6 が
/usr/bin/python3
/usr/bin/python3.6
にインストールされ
pip 及び pip3 はインスト-ルされていませんでした。
そして、python3 は python3.6 にリンクされていました。
よって、python3 用のインスト-ルツ-ル pip3 をインストールすることにします。
Ubuntu 環境でインスト-ルされる pip3 は、
$ sudo apt install python3-pip
でインスト-ルできます。
この pip3 は、通常の pip コマンドでパッケージを
インストールするのと同様に、/usr/local/lib/ などの全ユーザが参照できる
Python のモジュールを格納するディレクトリにインストールすることができるほか、
追加で --user オプションを指定することができます。
これにより、それぞれのユーザ個別の専用ディレクトリにインストールすることができ、
他のユーザに影響を与えずに自由にパッケージのインストールや削除ができます。
また、pip3 を使用せず
$ sudo apt install パッケ-ジ名
でもインスト-ル可能です。
sudo apt-get install python3-matplotlib
とすると matplotlib がインスト-ルされるのですが、
ついでに、python2.7 もインスト-ルされてしまうので困りものです。
お薦めしません。
pip3 インスト-ル
Python パッケージインストール用 pip3 をインスト-ルします。
シリアルコンソ-ル(β版)を開き、
yamada@********:~$
sudo apt install python3-pip
Enter を押してインスト-ルを開始します。
しばらく黙りこくってからコメントが次々と出てきます。
途中インスト-ルの確認メッセ-ジが出ますので y を入力します。
時間がかかってインスト-ルが完了します。
$ which pip3
でインスト-ルを確認すると
/usr/bin/pip3
に入ったことがわかります。
pyplot インスト-ル
pyplot は matplotlib ライブラリ-の中にあります。
よって matplotlib をインスト-ルします。
シリアルコンソ-ル(β版)を開き、
yamada@********:~$
sudo pip3 install matplotlib
Enter を押してインスト-ルを開始します。
しばらく黙りこくってからコメントが次々と出てインスト-ルが完了します。
インスト-ル結果を見ます。
$ pip3 show matplotlib
でインスト-ルを確認すると
yamada@********:~$ pip3 show matplotlib
Name: matplotlib
Version: 3.2.2
Summary: Python plotting package
Home-page: https://matplotlib.org
Author: John D. Hunter, Michael Droettboom
Author-email: matplotlib-users@python.org
License: PSF
Location: /usr/local/lib/python3.6/dist-packages
Requires: pyparsing, python-dateutil, kiwisolver, cycler, numpy
となり
/usr/local/lib/python3.6/dist-pacages
に入ったことがわかります。
ついでに付属で numpy も入ったことがわかります。
Python/pyplot 動作確認ファイル作成
Python/pyplot 動作確認用ファイルを作成します。
内容は次の通りです。
#!/usr/bin/python3
# coding: utf-8
import matplotlib.pyplot as plt
x = range(0,10)
y = x
plt.plot(x,y)
plt.show()
plt.savefig('images/pyplot-g.png')
print("Content-type: text/html; charset=UTF-8\n\n")
print('<img src="images/pyplot-g.png">')
ファイル内容は
pyplot グラフファイル作成
の中にある pyplot-g ファイルを修正したものです。
ここを読めば、ファイル作成方法もわかります。
ファイル修正点は
# 印の部分で、Python3 のあるディレクトリ、コ-ディング文字指定
の2箇所とさらに
最後の3行を追加して、一旦画像ファイルを images フォルダに保存して、
その後 html で WEB 表示させています。
上記のファイルの
#!/usr/bin/python3
~・・・~
print('<img src="images/pyplot-g.png">')
までをすべてをコピ-し、Python ファイルを作成します。
自分の PC Windows で TeraPad 等を使用して作成できたら
c:\vb_public_html
に保存します。
ファイル名は
pyplot-g.py
とします。
文字コ-ドは、UTF-8N
BOM なし
改行コ-ドは、LF
です。
SFTP で pyplot-g.py をアップロード
作成した pyplot-g.py ファイルをユ-ザ-ディレクトリ
/home/yamada/public_html
にアップロ-ドします。
やり方がよく分からない方は
ユ-ザ-ごとの公開ディレクトリを用意する
の「SFTP でファイル アップロード」
を読んでください。
そして、/home/yamada/public_html/ のなかにある、pyplot-g.py の パミッションを
実行可能 705 にします。
$ cd public_html
$ sudo chmod 705 pyplot-g.py
images フォルダ作成
pyplot-g.py が作成した画像ファイル pyplot-g.png を 保存する images フォルダがないので
これを作成します。
作成場所は
/home/yamada/public_html/images
です。
シリアルコンソ-ル(β版)を開き、
yamada@********:~$
mkdir public_html/images
ここは Apache が書き込みを行う専用フォルダとします。
Ubuntu では Apache ユーザー名は「www-data」です。
/etc/apache2/envvars に設定があります。
空行を除き13-14行目
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
もし、ユーザー名、グル-プ名を変更する場合はこのファイルを編集します。
今回はこのままにしておきます。
Apache が images フォルダに入れないと pyplot-g.png ファイルを書き込めません。
よって images フォルダの所有グル-プを www-data に変更する必要があります。
$ cd public_html
$ sudo chgrp www-data images
とします。
さらには、所有グル-プが pyplot-g.png ファイルを images フォルダにおいて書込み作業ができるようにします。
すなわち、
所有グル-プ = 書込 2 + 実行 1 = 3
のパ-ミッションにする必要があります。
したがって、
images のパ-ミッションは 734 とします。
$ cd public_html
$ chmod 734 images
Python/pyplot 動作確認
ブラウザの URL 欄に、
https://70vps.net/pyplot-g.py
と入力し表示画面に
y = x
のグラフが表示されれば pyplot の動作確認は完了です。
ほかにどんな URL で接続可能かは
HTTPS によるアクセス確認
を参考にしてください。
ここまで、Python/pyplot インスト-ルについて説明しました。
引き続き、Composer をインスト-ルしていきます。