Pythonによるデータ分析・機械学習ブログ

Pythonによるデータの前処理・グラフ化、機械学習、統計解析、画像処理、Webスクレイピング、自然言語処理の基礎について紹介していきます。

MENU

【第8回】Tkinterを用いたウィンドウへの図形や画像の描画

はじめに

 アプリを作成する際にグラフィカルユーザーインターフェースGUI)として、ウィンドウを表示させて、そこでボタン操作などを行って機能を活用できるようにするのが一般的です。Pythonには、GUIを作成するためのツールキットのtkinterがあります。tkinterは標準のライブラリとなっており、インストールは不要になっています。tkinterでウィンドウ表示できる項目にラベル、テキストボックス、ボタンなどがあります。さらに、GUIに図形や画像を描画してデザイン性を向上させることがあります。

 本記事ではtkinterを用いたGUI製作として、Tkinterを用いたウィンドウへの図形や画像の描画の方法について紹介します。

SAMURAI TERAKOYA

 

1. 各オブジェクトの描画

1.1 キャンバスの用意

オブジェクトを描画するのにウィンドウにキャンバスを用意する必要があります。以下の例では幅400、高さ440のキャンバスを用意しています。以降で示すオブジェクトはこのキャンバスに描画されます。

 

1.2 線分の描画

線分は以下の例のようにして描画することができます。

 

1.3 矢印の描画

矢印は以下の例のようにして描画することができます。

 

1.4 円・楕円の描画

円・楕円は以下の例のようにして描画することができます。

 

1.5 四角形の描画

四角形は以下の例のようにして描画することができます。

 

1.6 文字の描画

線分は以下の例のようにして描画することができます。

 

1.7 画像の描画

画像は以下の例のようにして描画することができます。

 

1.8 多角形の描画

多角形は以下の例のようにして描画することができます。

 

2. オブジェクトの描画例

上記で示した例をすべて一つのウィンドウに描画します。

以下のコードを実行すると、下記のウィンドウのようにオブジェクトが描画されます。

 

オススメ書籍

Pythonによるあたらしいデータ分析の教科書

Python3エンジニア認定データ分析試験の教科書にもなっている書籍で、データ分析に必要なPythonの基礎手法を身に付けることができます。具体的には、numpyとpandasを用いたデータの前処理、matplotlibを用いたデータのグラフ化、scikit-learnを用いた機械学習の基礎記述方法を身に付けることができます。これ一つで基礎はバッチリで、実務でも十分活用できると思います。個人的には見やすい書籍でした。

データサイエンス教本 Pythonで学ぶ統計分析・パターン認識・深層学習・信号処理・時系列データ分析

こちらの書籍は初心者から少し記述できるようになった人、かつ数学的な理論と一緒にPythonの記述方法を理解したい方にオススメです。統計分析、パターン認識、深層学習、信号処理、時系列データといった幅広く実務で使用する手法を学びたい方にもオススメです。

東京大学のデータサイエンティスト育成講座 ~Pythonで手を動かして学ぶデ―タ分析~

こちらの基礎を抑えながら実務で必要なPython記述法を学べる書籍です。基礎を一つ一つ抑えるというよりも実務で活用できるように必要な知識を身に付けられると感じました。これ一冊あれば十分かなと思いました。

 

スキル修得&転職

 近年、DXの進展に伴うデジタル人材の需要の高まりに追いついていない状況が続いていると経済産業省がホームページで記載している通り、DX人材、IT人材が不足しているのが現状です。さらにコンピュータの性能向上やAI技術の発展により、よりDX人材、IT人材の需要が高まってきます。さらには、今後の長期間安定して職がある業種とも考えられます。

以下の求人では、IT業界の転職や、IT未経験だけどIT人材を志望する就活を支援してくれます。無料で会員登録もできるので、まずは登録だけでもして様子を見てみてはいかがでしょうか?

▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲

 

おわりに

本記事ではtkinterを用いたGUI製作として、Tkinterを用いたウィンドウへの図形や画像の描画の方法について紹介しました。これらの機能を使用する頻度は多くないと思いますが、ウィンドウに画像を表示させるケースは多いと思います。ぜひ、この機能を使って見やすく使いやすいユーザーインターフェースを作成してみてください。

【第7回】Tkinterを用いたファイルダイアログの表示とフォルダ・ファイルパスの取得

はじめに

 アプリを作成する際にグラフィカルユーザーインターフェースGUI)として、ウィンドウを表示させて、そこでボタン操作などを行って機能を活用できるようにするのが一般的です。Pythonには、GUIを作成するためのツールキットのtkinterがあります。tkinterは標準のライブラリとなっており、インストールは不要になっています。tkinterでウィンドウ表示できる項目にラベル、テキストボックス、ボタンなどがあります。さらに、GUIで操作する際に開いたり、処理をしたいフォルダやファイルを選択することがあります。そこで使用するのがファイルダイアログであり、これはフォルダやファイルを選択するウィンドウになります。

 本記事ではtkinterを用いたGUI製作として、tkinter.filedialogを用いたファイルダイアログの表示とフォルダ・ファイルパスの取得について紹介します。

SAMURAI TERAKOYA

 

1. ファイルを選択するダイアログ:tkinter.filedialog.askopenfilename()

1.1 1つのファイルを選択して、選択したファイルパスを取得

ファイルを選択するダイアログではtkinter.filedialog.askopenfilename()を以下の様に用います。filetypesは選択するファイルの種類(.jpgや.xlsxなど)、 initialdirは最初に開くディレクトリを指定します。

filename = filedialog.askopenfilename(filetypes=***, initialdir=***)

 

以下に例を示します。以下ではfiletypesは「すべてのファイル」を選択可能な状態を指定し、initialdirはos.path.dirname(__file__) およびos.path.abspath()を用いて実行中のファイルがあるフォルダの絶対パスを指定しています。ダイアログが開かれてファイルを選択すると、選択したファイルの絶対パスを取得できます。

上記を実行すると下図のダイアログが表示されます。

 

1.2 複数のファイルを選択して、選択したファイルパスを取得

さらに、複数のファイルを選択したい場合には、tkinter.filedialog.askopenfilenames()を以下の様に用います。filetypesは選択するファイルの種類(.jpgや.xlsxなど)、 initialdirは最初に開くディレクトリを指定します。

filename = filedialog.askopenfilenames(filetypes=***, initialdir=***)

 

先ほどと同じように、ダイアログが開かれて複数のファイルを選択すると、選択した複数のファイルの絶対パスを取得できます。

上記を実行すると下図のダイアログが表示されます。

 

1.3 ファイル拡張子を指定し、ファイルを選択して、選択したファイルパスを取得

上記ではファイルはすべての拡張子のものを選択できましたが、ここではファイルの拡張子を限定して、指定した拡張子のファイルを選択できるようにします。

ファイルの拡張子を指定するには、filetypesの内容を修正する必要があります。filetypesを[('表示名', '拡張子')]のようにしてファイルの拡張子を指定します。以下に例を示します。以下では、[('JPEG', '.jpg'), ('PNG', '.png')]のようにして拡張子jpg、pngのみ選択できるようにしています。

選択する際のダイアログを見ると、拡張子が限定されているのがわかると思います。

 

2. フォルダを選択するダイアログ:tkinter.filedialog.askdirectory()

ファイルを選択するダイアログではtkinter.filedialog.askdirectory()を以下の様に用います。 initialdirは最初に開くディレクトリを指定します。

filename = filedialog.askdirectory(initialdir=***)

 

以下に例を示します。以下ではinitialdirはos.path.dirname(__file__) およびos.path.abspath()を用いて実行中のファイルがあるフォルダの絶対パスを指定しています。ダイアログが開かれてフォルダを選択すると、選択したフォルダの絶対パスを取得できます。

上記を実行すると下図のダイアログが表示されます。ボタンも「フォルダー選択」になっています。

 

オススメ書籍

Pythonによるあたらしいデータ分析の教科書

Python3エンジニア認定データ分析試験の教科書にもなっている書籍で、データ分析に必要なPythonの基礎手法を身に付けることができます。具体的には、numpyとpandasを用いたデータの前処理、matplotlibを用いたデータのグラフ化、scikit-learnを用いた機械学習の基礎記述方法を身に付けることができます。これ一つで基礎はバッチリで、実務でも十分活用できると思います。個人的には見やすい書籍でした。

データサイエンス教本 Pythonで学ぶ統計分析・パターン認識・深層学習・信号処理・時系列データ分析

こちらの書籍は初心者から少し記述できるようになった人、かつ数学的な理論と一緒にPythonの記述方法を理解したい方にオススメです。統計分析、パターン認識、深層学習、信号処理、時系列データといった幅広く実務で使用する手法を学びたい方にもオススメです。

東京大学のデータサイエンティスト育成講座 ~Pythonで手を動かして学ぶデ―タ分析~

こちらの基礎を抑えながら実務で必要なPython記述法を学べる書籍です。基礎を一つ一つ抑えるというよりも実務で活用できるように必要な知識を身に付けられると感じました。これ一冊あれば十分かなと思いました。

 

スキル修得&転職

 近年、DXの進展に伴うデジタル人材の需要の高まりに追いついていない状況が続いていると経済産業省がホームページで記載している通り、DX人材、IT人材が不足しているのが現状です。さらにコンピュータの性能向上やAI技術の発展により、よりDX人材、IT人材の需要が高まってきます。さらには、今後の長期間安定して職がある業種とも考えられます。

以下の求人では、IT業界の転職や、IT未経験だけどIT人材を志望する就活を支援してくれます。無料で会員登録もできるので、まずは登録だけでもして様子を見てみてはいかがでしょうか?

▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲

 

おわりに

 本記事ではtkinterを用いたGUI製作として、tkinter.filedialogを用いたファイルダイアログの表示とフォルダ・ファイルパスの取得について紹介しました。アプリを作成していると、ファイルや選択をユーザーに指定してもらう仕様になる時があります。その際にはダイアログを開いてファイルやフォルダを選択してもらい、選択したファイルやフォルダに対して何かしらの処理をするケースが多いと思います。そういったケースが多いので、GUIを作成したい方は本記事の内容は使いこなせるようになりましょう。

【第6回】Tkinterを用いたGUI作成:メッセージボックスの表示

はじめに

 アプリを作成する際にグラフィカルユーザーインターフェースGUI)として、ウィンドウを表示させて、そこでボタン操作などを行って機能を活用できるようにするのが一般的です。Pythonには、GUIを作成するためのツールキットのtkinterがあります。tkinterは標準のライブラリとなっており、インストールは不要になっています。tkinterでウィンドウ表示できる項目にラベル、テキストボックス、ボタンなどがあります。さらに、ウィンドウ操作をしていると操作の確認の上でメッセージボックスを使用するシーンが多くなります。

 本記事ではtkinterを用いたGUI製作として、tkinter.massageboxによるメッセージボックスの表示方法について紹介します。

SAMURAI TERAKOYA

 

1. 情報、警告、エラーの表示

1.1 情報:messagebox.showinfo()

情報を表示するメッセージボックスにはtkinter.messagebox.showinfo()を以下の様に用います。

messagebox.showinfo(title=***, message=***)

titleはメッセージボックスの上部に表示されるタイトル、messageはメッセージボックスに表示するコメントです。表示すると以下の様に表示されます。

戻り値は以下の表のようになります。

ボタン 戻り値
OK ok
× ok

 

1.2 警告:messagebox.showwarning()

警告を表示するメッセージボックスにはtkinter.messagebox.showwarning()を以下の様に用います。

messagebox.showwarning(title=***, message=***)

titleはメッセージボックスの上部に表示されるタイトル、messageはメッセージボックスに表示するコメントです。表示すると以下の様に表示されます。

戻り値は以下の表のようになります。

ボタン 戻り値
OK ok
× ok

 

1.3 エラー:messagebox.showerror()

エラーを表示するメッセージボックスにはtkinter.messagebox.showerror()を以下の様に用います。

messagebox.showerror(title=***, message=***)

titleはメッセージボックスの上部に表示されるタイトル、messageはメッセージボックスに表示するコメントです。表示すると以下の様に表示されます。

戻り値は以下の表のようになります。

ボタン 戻り値
OK ok
× ok

 

2. 質問の表示

2.1 はい or いいえ回答:messagebox.askquestion()

messagebox.askquestion()を用いると、メッセージボックスで選択ができます。これは選択項目が「はい」か「いいえ」の二択になります。用いる際には以下の様に用います。

messagebox.askquestion(title=***, message=***)

titleはメッセージボックスの上部に表示されるタイトル、messageはメッセージボックスに表示するコメントです。表示すると以下の様に表示されます。

戻り値は以下の表のようになります。

ボタン 戻り値
はい ok
いいえ no

 

2.2 OK or キャンセル回答:messagebox.askokcancel()

messagebox.askokcancel()を用いると、メッセージボックスで選択ができます。これは選択項目が「OK」か「キャンセル」の二択になります。用いる際には以下の様に用います。

messagebox.askokcancel(title=***, message=***)

titleはメッセージボックスの上部に表示されるタイトル、messageはメッセージボックスに表示するコメントです。表示すると以下の様に表示されます。

戻り値は以下の表のようになります。

ボタン 戻り値
はい True
キャンセル False
× False

 

2.3 再試行 or キャンセル回答:messagebox.askretrycancel()

messagebox.askretrycancel()を用いると、メッセージボックスで選択ができます。これは選択項目が「再試行」か「キャンセル」の二択になります。用いる際には以下の様に用います。

messagebox.askretrycancel(title=***, message=***)

titleはメッセージボックスの上部に表示されるタイトル、messageはメッセージボックスに表示するコメントです。表示すると以下の様に表示されます。

戻り値は以下の表のようになります。

ボタン 戻り値
再試行 True
キャンセル False
× False

 

2.4 はい or いいえ回答:messagebox.askyesno()

messagebox.askyesno()を用いると、メッセージボックスで選択ができます。これは選択項目が「はい」か「いいえ」の二択になります。用いる際には以下の様に用います。

messagebox.askyesno(title=***, message=***)

titleはメッセージボックスの上部に表示されるタイトル、messageはメッセージボックスに表示するコメントです。表示すると以下の様に表示されます。

戻り値は以下の表のようになります。

ボタン 戻り値
はい True
いいえ False

 

2.5 はい or いいえ or キャンセル回答:messagebox.askyesnocancel()

messagebox.askyesnocancel()を用いると、メッセージボックスで選択ができます。これは選択項目が「はい」か「いいえ」か「キャンセル」の三択になります。用いる際には以下の様に用います。

messagebox.askyesnocancel(title=***, message=***)

titleはメッセージボックスの上部に表示されるタイトル、messageはメッセージボックスに表示するコメントです。表示すると以下の様に表示されます。

戻り値は以下の表のようになります。

ボタン 戻り値
はい True
いいえ False
キャンセル None
× None

 

3. メッセージボックスの表示内容の確認

以下のコードを実行して、各ボタンを押すとそれに応じた上記で示したメッセージボックスが表示されます。それぞれ戻り値をresとして取得していますので、そちらで戻り値の内容も確認してみてください。ボタン操作による関数実行はこちらの記事をご覧ください。

 

オススメ書籍

Pythonによるあたらしいデータ分析の教科書

Python3エンジニア認定データ分析試験の教科書にもなっている書籍で、データ分析に必要なPythonの基礎手法を身に付けることができます。具体的には、numpyとpandasを用いたデータの前処理、matplotlibを用いたデータのグラフ化、scikit-learnを用いた機械学習の基礎記述方法を身に付けることができます。これ一つで基礎はバッチリで、実務でも十分活用できると思います。個人的には見やすい書籍でした。

データサイエンス教本 Pythonで学ぶ統計分析・パターン認識・深層学習・信号処理・時系列データ分析

こちらの書籍は初心者から少し記述できるようになった人、かつ数学的な理論と一緒にPythonの記述方法を理解したい方にオススメです。統計分析、パターン認識、深層学習、信号処理、時系列データといった幅広く実務で使用する手法を学びたい方にもオススメです。

東京大学のデータサイエンティスト育成講座 ~Pythonで手を動かして学ぶデ―タ分析~

こちらの基礎を抑えながら実務で必要なPython記述法を学べる書籍です。基礎を一つ一つ抑えるというよりも実務で活用できるように必要な知識を身に付けられると感じました。これ一冊あれば十分かなと思いました。

 

スキル修得&転職

 近年、DXの進展に伴うデジタル人材の需要の高まりに追いついていない状況が続いていると経済産業省がホームページで記載している通り、DX人材、IT人材が不足しているのが現状です。さらにコンピュータの性能向上やAI技術の発展により、よりDX人材、IT人材の需要が高まってきます。さらには、今後の長期間安定して職がある業種とも考えられます。

以下の求人では、IT業界の転職や、IT未経験だけどIT人材を志望する就活を支援してくれます。無料で会員登録もできるので、まずは登録だけでもして様子を見てみてはいかがでしょうか?

▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲

 

おわりに

 本記事ではtkinterを用いたGUI製作として、tkinter.massageboxによるメッセージボックスの表示方法について紹介しました。ウィンドウ操作をしていると操作の確認の上でメッセージボックスを使用するシーンが多くなります。ポイントポイントでメッセージボックスを使って使用性を向上させてみてください。

【第5回】Tkinterを用いたGUI作成:ttk.Treeviewによる表・テーブルの表示

はじめに

 アプリを作成する際にグラフィカルユーザーインターフェースGUI)として、ウィンドウを表示させて、そこでボタン操作などを行って機能を活用できるようにするのが一般的です。Pythonには、GUIを作成するためのツールキットのtkinterがあります。tkinterは標準のライブラリとなっており、インストールは不要になっています。tkinterでウィンドウ表示できる項目にラベル、テキストボックス、ボタンなどがあります。さらにtkinter.ttkには表やテーブルを表示することができるttk.Treeviewがあります。さらに、sqliteなどのデータベースの内容を表示する際にこの機能が有効な方法になります。

 本記事ではtkinterを用いたGUI製作として、ttk.Treeviewによる表・テーブルを表示する方法を簡単に紹介します。

SAMURAI TERAKOYA

 

1. ttk.Treeviewによる表・テーブルの表示の例

本記事では、以下のような表を作成します。月の名前を3パターン表示するものになっています。

 

2. ttk.Treeviewによる表・テーブルの表示の方法

本記事では細かい説明は省略させていただきます。その代わり以下のコード例にコメントとして記述方法を記載させていただきます。

上記の内容を表示すると以下のようなツリービューが表示されます。

 

オススメ書籍

Pythonによるあたらしいデータ分析の教科書

Python3エンジニア認定データ分析試験の教科書にもなっている書籍で、データ分析に必要なPythonの基礎手法を身に付けることができます。具体的には、numpyとpandasを用いたデータの前処理、matplotlibを用いたデータのグラフ化、scikit-learnを用いた機械学習の基礎記述方法を身に付けることができます。これ一つで基礎はバッチリで、実務でも十分活用できると思います。個人的には見やすい書籍でした。

データサイエンス教本 Pythonで学ぶ統計分析・パターン認識・深層学習・信号処理・時系列データ分析

こちらの書籍は初心者から少し記述できるようになった人、かつ数学的な理論と一緒にPythonの記述方法を理解したい方にオススメです。統計分析、パターン認識、深層学習、信号処理、時系列データといった幅広く実務で使用する手法を学びたい方にもオススメです。

東京大学のデータサイエンティスト育成講座 ~Pythonで手を動かして学ぶデ―タ分析~

こちらの基礎を抑えながら実務で必要なPython記述法を学べる書籍です。基礎を一つ一つ抑えるというよりも実務で活用できるように必要な知識を身に付けられると感じました。これ一冊あれば十分かなと思いました。

 

スキル修得&転職

 近年、DXの進展に伴うデジタル人材の需要の高まりに追いついていない状況が続いていると経済産業省がホームページで記載している通り、DX人材、IT人材が不足しているのが現状です。さらにコンピュータの性能向上やAI技術の発展により、よりDX人材、IT人材の需要が高まってきます。さらには、今後の長期間安定して職がある業種とも考えられます。

以下の求人では、IT業界の転職や、IT未経験だけどIT人材を志望する就活を支援してくれます。無料で会員登録もできるので、まずは登録だけでもして様子を見てみてはいかがでしょうか?

▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲

 

おわりに

ttk.Treeviewによる表・テーブルを表示する方法を簡単に紹介しました。この表示する方法とデータベースと組み合わせると簡単にデータを入力したり、データを閲覧できたりすることができ、とても有用です。本記事では基本的な内容を記述しましたので、上記の内容に倣って記述することで大抵は事足ります。より詳しく知りたい方はご自身で調査してみてください。

【第4回】Tkinterを用いたGUI作成:ttkによるスタイル設定

はじめに

 アプリを作成する際にグラフィカルユーザーインターフェースGUI)として、ウィンドウを表示させて、そこでボタン操作などを行って機能を活用できるようにするのが一般的です。Pythonには、GUIを作成するためのツールキットのtkinterがあります。tkinterは標準のライブラリとなっており、インストールは不要になっています。tkinterでウィンドウ表示できる項目にラベル、テキストボックス、ボタンなどがあります。

 本記事では、tkinterを用いたGUI製作として、ttkによるスタイル設定について紹介します。

SAMURAI TERAKOYA

 

1. tkinter.ttkとは

tkinter.ttk モジュールは Tk 8.5 で導入された 機能です。ttkモジュールを用いるとスタイルがオシャレで現代的なデザインになります。言葉よりも視覚的に確認したほうが良いと思うので、早速ウィンドウを開いて確認していきましょう。

 

2. tkinterでのウィジェット

tkinterでのウィジェットの表示方法などは以下の記事をご覧ください。

chantastu.hatenablog.com

 

3. tkinterとttkのスタイル比較

通常のtkinterのスタイルとttkのスタイルを比較して見てみましょう。grid()でレイアウト配置を指定し、左側にtkinterの通常スタイル、右側にttkスタイルでウィジェットを表示させます。

画面表示は以下のようになります。デザインがオシャレになっているのがわかると思います。デザインをオシャレにしたい場合は可能な限りttkモジュールを使用したほうが良いですね。

 

オススメ書籍

Pythonによるあたらしいデータ分析の教科書

Python3エンジニア認定データ分析試験の教科書にもなっている書籍で、データ分析に必要なPythonの基礎手法を身に付けることができます。具体的には、numpyとpandasを用いたデータの前処理、matplotlibを用いたデータのグラフ化、scikit-learnを用いた機械学習の基礎記述方法を身に付けることができます。これ一つで基礎はバッチリで、実務でも十分活用できると思います。個人的には見やすい書籍でした。

データサイエンス教本 Pythonで学ぶ統計分析・パターン認識・深層学習・信号処理・時系列データ分析

こちらの書籍は初心者から少し記述できるようになった人、かつ数学的な理論と一緒にPythonの記述方法を理解したい方にオススメです。統計分析、パターン認識、深層学習、信号処理、時系列データといった幅広く実務で使用する手法を学びたい方にもオススメです。

東京大学のデータサイエンティスト育成講座 ~Pythonで手を動かして学ぶデ―タ分析~

こちらの基礎を抑えながら実務で必要なPython記述法を学べる書籍です。基礎を一つ一つ抑えるというよりも実務で活用できるように必要な知識を身に付けられると感じました。これ一冊あれば十分かなと思いました。

 

スキル修得&転職

 近年、DXの進展に伴うデジタル人材の需要の高まりに追いついていない状況が続いていると経済産業省がホームページで記載している通り、DX人材、IT人材が不足しているのが現状です。さらにコンピュータの性能向上やAI技術の発展により、よりDX人材、IT人材の需要が高まってきます。さらには、今後の長期間安定して職がある業種とも考えられます。

以下の求人では、IT業界の転職や、IT未経験だけどIT人材を志望する就活を支援してくれます。無料で会員登録もできるので、まずは登録だけでもして様子を見てみてはいかがでしょうか?

▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲

 

おわりに

本記事では、tkinterを用いたGUI製作として、ttkによるスタイル設定について紹介しました。Pythonでアプリを作っていくと最終的にデザインにもこだわりたくなる時がきます。その際にtkinter.ttkモジュールを用いてオシャレなデザインでユーザーインターフェースを作成していきましょう!

【第3回】Tkinterを用いたGUI作成:ボタン操作による関数実行

はじめに

 アプリを作成する際にグラフィカルユーザーインターフェースGUI)として、ウィンドウを表示させて、そこでボタン操作などを行って機能を活用できるようにするのが一般的です。Pythonには、GUIを作成するためのツールキットのtkinterがあります。tkinterは標準のライブラリとなっており、インストールは不要になっています。tkinterでウィンドウ表示できる項目にラベル、テキストボックス、ボタンなどがあります。

 本記事では、tkinterを用いたGUI製作として、ボタン操作による関数実行の方法を紹介します。

SAMURAI TERAKOYA

 

1. ウィンドウの作成、ボタンやラベルの作成

ウィンドウ、ボタン、ラベルの作成は以下の記事をご覧ください。

chantastu.hatenablog.com

ボタンやラベルの配置については以下の記事をご覧ください。

chantastu.hatenablog.com

 

2. ボタン操作による関数実行

2.1 簡単な例:ボタンクリックでテキストボックスに文字表示

ボタン操作で関数を実行するには、tkinter.Button()の引数にcommandを設定し、commandにボタンが押された際に実行したい関数を指定してください。

以下の例では、ボタンをクリックすると、string_view()関数が実行されてテキストボックス(textbox)に「ボタンが押されました」という文字が表示されます。

ここで、テキストボックスに文字を挿入するにはtextbox.insert(tkinter.END, ***)(***は挿入したい内容)を用います。tkinter.ENDはそのテキストボックス内の最後を意味しています。一方、テキストボックス内の文字をすべて削除するには、textbox.delete(0, tkinter.END)を用います。これで、テキストボックス内の0番目から最後まで削除することを意味しています。

それでは以下の例をご覧ください。

表示結果は以下の様になります。

ボタンをクリックすると、以下の画面になります。

 

2.2 ボタン操作による足し算の計算と結果を出力

 次は、ボタンをクリックしてcalculate関数を実行して、2つのテキストボックスの値を取得して足し算の計算を行い、その計算結果をテキストボックスに出力する例を示します。

ここで、テキストボックスに記載された内容を取得するには、textbox.get()のようにします。文字(String)として取得するので、数字の際にはint型かfloat型に変換します。

表示画面は以下の様になります。

上部のテキストボックスに値を入れて「足し算」ボタンをクリックすると、下部のテキストボックスに計算結果が出力されます。

 

オススメ書籍

Pythonによるあたらしいデータ分析の教科書

Python3エンジニア認定データ分析試験の教科書にもなっている書籍で、データ分析に必要なPythonの基礎手法を身に付けることができます。具体的には、numpyとpandasを用いたデータの前処理、matplotlibを用いたデータのグラフ化、scikit-learnを用いた機械学習の基礎記述方法を身に付けることができます。これ一つで基礎はバッチリで、実務でも十分活用できると思います。個人的には見やすい書籍でした。

データサイエンス教本 Pythonで学ぶ統計分析・パターン認識・深層学習・信号処理・時系列データ分析

こちらの書籍は初心者から少し記述できるようになった人、かつ数学的な理論と一緒にPythonの記述方法を理解したい方にオススメです。統計分析、パターン認識、深層学習、信号処理、時系列データといった幅広く実務で使用する手法を学びたい方にもオススメです。

東京大学のデータサイエンティスト育成講座 ~Pythonで手を動かして学ぶデ―タ分析~

こちらの基礎を抑えながら実務で必要なPython記述法を学べる書籍です。基礎を一つ一つ抑えるというよりも実務で活用できるように必要な知識を身に付けられると感じました。これ一冊あれば十分かなと思いました。

 

スキル修得&転職

 近年、DXの進展に伴うデジタル人材の需要の高まりに追いついていない状況が続いていると経済産業省がホームページで記載している通り、DX人材、IT人材が不足しているのが現状です。さらにコンピュータの性能向上やAI技術の発展により、よりDX人材、IT人材の需要が高まってきます。さらには、今後の長期間安定して職がある業種とも考えられます。

以下の求人では、IT業界の転職や、IT未経験だけどIT人材を志望する就活を支援してくれます。無料で会員登録もできるので、まずは登録だけでもして様子を見てみてはいかがでしょうか?

▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲

 

おわりに

tkinterを用いたGUI製作として、ボタン操作による関数実行の方法を紹介しました。ボタンをクリックして関数を実行させて結果を得るという基本的な操作を確認しました。本記事の内容を発展させることで基本的なアプリが作成できるようになりますので、ぜひチャレンジしてみてください。

 

【第2回】Tkinterを用いたGUI作成:ウィジェットの配置調整

はじめに

 アプリを作成する際にグラフィカルユーザーインターフェースGUI)として、ウィンドウを表示させて、そこでボタン操作などを行って機能を活用できるようにするのが一般的です。Pythonには、GUIを作成するためのツールキットのtkinterがあります。tkinterは標準のライブラリとなっており、インストールは不要になっています。tkinterでウィンドウ表示できる項目にラベル、テキストボックス、ボタンなどがあります。

 本記事では、tkinterを用いたGUI製作として、ウィジェット配置の方法について紹介します。

SAMURAI TERAKOYA

 

1. placeで座標指定して配置

ウィジェット配置の方法の一つにplaceによる座標指定の方法があります。ウィンドウの左上を(0,0)として横方向をX方向、縦方向をY方向として、x=***, y=***を指定してウィジェットの配置を行います。

以下に例を示します。ラベルやボタンをXY座標を指定して配置しています。

画面表示はこのようになります。

 

2. gridでセル番号を指定して配置

ウィジェット配置の方法の一つにgridでセル番号指定の方法があります。以下の図のようにウィンドウを表のようにセルで分割し、行番号(row)、列番号(column)の番号を指定してウィジェットの配置を行います。

 

以下に例を示します。以下では4行2列にセルを分割して、各ウィジェットを配置しています。padx、padyはセルの外側の間隔を指定しています。padx、padyの値を大きくするとウィジェット同時の間隔が広がります。

画面表示はこのようになります。

 

また、grid()の引数にrowspan・columnspanを指定することで、N行分のセルに対して配置・N列分のセルに対して配置するかを設定できます。以下の例では、テキストボックスを2行分のセルを使って配置し、チェックボックスを2列分のセルを使って配置します。

表示結果は以下の様になります。

 

オススメ書籍

Pythonによるあたらしいデータ分析の教科書

Python3エンジニア認定データ分析試験の教科書にもなっている書籍で、データ分析に必要なPythonの基礎手法を身に付けることができます。具体的には、numpyとpandasを用いたデータの前処理、matplotlibを用いたデータのグラフ化、scikit-learnを用いた機械学習の基礎記述方法を身に付けることができます。これ一つで基礎はバッチリで、実務でも十分活用できると思います。個人的には見やすい書籍でした。

データサイエンス教本 Pythonで学ぶ統計分析・パターン認識・深層学習・信号処理・時系列データ分析

こちらの書籍は初心者から少し記述できるようになった人、かつ数学的な理論と一緒にPythonの記述方法を理解したい方にオススメです。統計分析、パターン認識、深層学習、信号処理、時系列データといった幅広く実務で使用する手法を学びたい方にもオススメです。

東京大学のデータサイエンティスト育成講座 ~Pythonで手を動かして学ぶデ―タ分析~

こちらの基礎を抑えながら実務で必要なPython記述法を学べる書籍です。基礎を一つ一つ抑えるというよりも実務で活用できるように必要な知識を身に付けられると感じました。これ一冊あれば十分かなと思いました。

 

スキル修得&転職

 近年、DXの進展に伴うデジタル人材の需要の高まりに追いついていない状況が続いていると経済産業省がホームページで記載している通り、DX人材、IT人材が不足しているのが現状です。さらにコンピュータの性能向上やAI技術の発展により、よりDX人材、IT人材の需要が高まってきます。さらには、今後の長期間安定して職がある業種とも考えられます。

以下の求人では、IT業界の転職や、IT未経験だけどIT人材を志望する就活を支援してくれます。無料で会員登録もできるので、まずは登録だけでもして様子を見てみてはいかがでしょうか?

▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲

 

おわりに

tkinterを用いたGUI製作として、ウィジェット配置の方法について紹介しました。ウィジェット・オブジェクトを配置するのはGUI製作の基本となりますので、ぜひ覚えましょう。