【Python(PySimpleGUI)でGUIアプリ入門】折れ線グラフを表示するアプリを作る方法

PySimpleGUI
けんろう
けんろう

PySimpleGUIでは、グラフを表示するアプリも作ることができます。

この記事では、PySimpleGUIを使って、グラフを表示するGUIアプリの作り方を紹介します。

今回は、折れ線グラフの作り方を紹介します。

この記事に載っているサンプルコードをコピーして、Pythonで実行すれば、簡単に動きを確認できますので、是非試してみて下さい。

この記事では、初心者にもわかりやすいように、各処理の内容を、サンプルコード内にコメントとして載せています。

【無料オンライン】ゼロから始めるPythonプログラミング入門講座(週5開催) テックジム

PySimpleGUIのインストールの仕方は、以下の記事で紹介しています。

スポンサーリンク

折れ線グラフを表示するアプリ

このアプリは、テストデータを読み込んで、折れ線グラフとして表示します。

「折れ線グラフ表示」ボタンを押すと、グラフが表示されます。

テストデータは、以下とします。

[x、y]= [1.0, 10.0],[2.0, 4.4],[3.0, 6.3],[4.0, 13.4],[5.0, 0.4]

このX値、Y値を変更してもらうだけで、いろんなデータに使用できます。

【AIジョブカレ】人工知能技術専門プログラミングスクール

サンプルコード

#!usr/bin/env python
# -*- coding: utf-8 -*-

import PySimpleGUI as sg

# グラフ表示用定数
GRAPH_SIZE = (500, 500)
DATA_SIZE = (100, 100)

# プロットするデータ数
PLOTS_NUMBER = 5

# プロットするデータの定義
test_data = [   [1.0, 10.0],
                        [2.0, 4.4],
                        [3.0, 6.3],
                        [4.0, 13.4],
                        [5.0, 0.4]]

# 折れ線表示調整用
LINE_X = 10
LINE_Y = 5


# グラフの描画領域の設定
graph = sg.Graph(GRAPH_SIZE, (0, 0), DATA_SIZE, key='-GRAPH-', background_color='white',)

# レイアウト
layout = [    [sg.Text('グラフデモ')],
                    [graph],
                    [sg.Button('折れ線グラグ表示')]]

# ウィンドウの生成
window = sg.Window('シンプルなグラフのサンプル', layout)

# 折れ線グラフの初期化
before_value = 0

while True:

    # 入力待ち
    event, values = window.Read()

    # ウィンドウ右上のXを押下した時の処理
    if event is None:
        break

    # ボタン押下時の処理
    if event == '折れ線グラグ表示':

        # グラフの表示を一旦削除
        graph.Erase()

        # テストデータリストからデータを取得する
        for i in range(PLOTS_NUMBER):

            x = test_data[i][0]
            y = test_data[i][1]

            # 取得したデータと、前回取得データの間に、線を引く
            graph.DrawLine( ((x-1) * LINE_X,  before_value * LINE_Y), (x * LINE_X, y * LINE_Y), color='green', width=1)

            # ラベル(yの値)を表示
            graph.DrawText(text=y, location=(x * LINE_X, y * LINE_Y+10))

            # 点をを表示
            graph.DrawPoint((x * LINE_X, y * LINE_Y), size=3, color='red',)

            # 前回値の更新
            before_value = y

window.Close()

実行すると、

下図のようなウィンドウが立ち上がります。

「折れ線グラフ表示」ボタンを押下すると、グラフが表示されます。

まとめ

今回は、Pythonライブラリである、PySimpleGUIを使い、折れ線グラフを表示するアプリの作り方を紹介しました。

コメント

タイトルとURLをコピーしました