Day After Day
tsurezure naru mamani...
ANOTHER DECADE

from 2022 when it's begining after/with CORONA Virus.

PHPでグラフが描けるPHPlot

2月
12
2025
Back
Alt+HOME


PHPlotと言うアプリについて環境構築してみた。

現在 D-STAR の Rpi-GW 向けに rpi-monitor と言うアプリケーションが開発中である。 その中に「受信パケットの受信間隔表示」と言うグラフを表示する PHP ファイルを出力する機能がある。 環境構築をしてこの PHP によるグラフ表示を実現してみようと言う試みである。


アマチュア無線 D-STAR 管理者向け関連記事
Last Heard v.2.1.x RpiGW管理用WEBアプリケーション(rpi-monitor対応)

rpi-monitorと言う開発中のアプリケーション


現在でもインストールは可能であるが、開発中のため自己責任となる。

$ sudo apt install rpi-monitor

これでインストールは完了する。rpi-monitor.confは不要である。他の .conf から必要事項を読み取っている。


=MEMO= rpi-monitor v.00.02 から rpi-monitor.conf に HTTP_PORT を指定できるようになった。
この結果 LastHeard に rpi-monitor のログ及びブラフの表示機能を追加することが出来た。(2025.2.20追記)

Wed Feb 12 16:43:20 2025 受信情報
Wed Feb 12 16:43:27 2025 受信パケット数 342 (from JK3ZNB F)
Wed Feb 12 16:43:27 2025 平均パケット間隔 19.848 ミリ秒 最大 36.089ミリ秒 最小 0.016ミリ秒
Wed Feb 12 16:43:27 2025 パケット間隔の乖離の累積最大値 0.000 ミリ秒
Wed Feb 12 16:43:27 2025 最後の20パケットの平均パケット間隔 18.599 ミリ秒
Wed Feb 12 16:43:27 2025 受信パケット状態のグラフ表示


Wed Feb 12 16:43:46 2025 受信情報
Wed Feb 12 16:43:46 2025 RPT2:JL3ZBS G RPT1:JL3ZBS A Ur:JL3ZBS Z My:JE3HCZ   My2:7100
Wed Feb 12 16:43:46 2025 送信元ポート番号 54940  送信先ポート番号 40000
Wed Feb 12 16:43:47 2025 受信パケット数 71 (from JE3HCZ  )
Wed Feb 12 16:43:47 2025 平均パケット間隔 18.535 ミリ秒 最大 127.847ミリ秒 最小 0.006ミリ秒
Wed Feb 12 16:43:47 2025 パケット間隔の乖離の累積最大値 107.847 ミリ秒
Wed Feb 12 16:43:47 2025 最後の20パケットの平均パケット間隔 20.007 ミリ秒
Wed Feb 12 16:43:47 2025 受信パケット状態のグラフ表示

Wed Feb 12 16:43:48 2025 送信情報(エコー)
Wed Feb 12 16:43:48 2025 RPT2:JP3YIX G RPT1:JP3YCS A Ur:JE3HCZ   My:JL3ZBS Z My2:ECHO
Wed Feb 12 16:43:48 2025 「UDPホールパンチヲ ON ニスルコト」メッセージの送信
Wed Feb 12 16:43:48 2025 送信元ポート番号 40000  送信先ポート番号 40000
Wed Feb 12 16:43:50 2025 送信パケット数 72 (to JE3HCZ  )

Wed Feb 12 16:43:50 2025 ポートは開放されていません (54940:40000) ホールパンチ:OFF
Wed Feb 12 16:43:50 2025 ホールパンチをONにしてみて下さい
このようなログが出力される。

PHPlotのインストール



  1. 画像をクリックするとダウンロードサイトへ行くのでグリーンのダウンロードをクリックしてファイルを取得する。

  2. Pi OS のコンソールで取得したい場合は同ダウンロードページのリストから
    [phplot] をクリック --> [6.2.0] (最も上の最新版) をクリック --> [.tar.gz または .zip] を右クリック -->
    [リンクのアドレスをコピー]を選択

    $ wget https://sourceforge.net/projects/phplot/files/phplot/6.2.0/phplot-6.2.0.zip  # <-- /downloadを消す

  3. phplotのダウンロードファイルを解凍

  4. $ unzip phplot-6.2.0.zip

  5. phplotのフォルダを /var/www/html に名前を変えてコピー又は移動する

  6. $ sudo cp -r phplot-6.2.0 /var/www/html/phplot
    このフォルダー構成は、生成されるログPHPファイルに記載されているphplotフォルダに合わせるためである。


日本語フォントが正しく表示されない場合


    窓の杜 などにアップロードされているものを取得して、ログPHPファイルが生成されているフォルダに置く。


PHPの環境の確認 DG Support


  1. PHPinfoを表示させて機能を確認する。

  2. $ sudo nano /var/www/html/phpinfo.php
      GNU nano 7.2                              /var/www/html/phpinfo.php
    <?php
        phpinfo();
    ?>

  3. これを保存してブラウザーで見ると次のような画面になる。
  4. 途中は割愛しているがかなりスクロールしなければ下の [gd] の部分は出てこない。[Ctrl] + [f] で検索した方が良い。 この gd セクションが有れば PHP の環境としてはOKである。念のため [GD Support] が enabled であることも確認する。

  5. GD セクションがない場合

  6. $ sudo apt update
    $ sudo apt install php-gd
    $ sudo systemctl restart apache2 
    前セクションのブラウザーでの確認をもう一度行う。


Back
Alt+HOME