質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

解決済

[Python初心者]プルダウン(commbobox)で選択したcsvデータを実行ボタンを押すとグラフ表示出来るようにしたい

tasukete11
tasukete11

総合スコア10

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

2回答

0評価

0クリップ

355閲覧

投稿2022/06/08 07:34

編集2022/06/09 19:22

プルダウン(combobox)で選択したデータを実行ボタンを押すと表示出来るようにしたいのですが、コードの書き方がわかりません。サイトで色々調べましたが、自分の言葉の表現の仕方が悪いのか、自分の求めているページが出てきませんでした。ヤフーさんにも質問してみましたが、やはり求めている答えには至らなかったので、こちらで質問させて頂きます。Python初めて1週間も経ってないので、言葉足らずな部分もありますが、ご理解頂けると幸いです。また、プロの方からすればかなりコードも雑になっていると思います。温かい目で見ていただければと思います。。。

(※anacondaのJupyter Notebookで作成しています)
Tkinterでプルダウンと実行ボタンを押すとcommandで示したグラフは表示出来るようにはできたのですが、commandの部分をプルダウンで選択したものに切り替えてグラフを表示出来るようにしたいのです。このままだとプルダウンはただの飾りで実行ボタンを押すとコードで指定した一か所のグラフしか表示されなくなってしまいます。このコードを使うと出来るようになるよとか、サイトのURLでも提示してくれるなど、何かヒントを頂ければと思います。
そもそもそんなコードないとかであれば、こればっかりは仕方ないです。。。
どうぞよろしくお願い致します。m(__)m

自分で色々調べて作成したコードは以下の通りです。
whr2017=pd.read_csv(r"")  
whr2016=pd.read_csv(r"")
の部分の()が空欄になってますが、自分の名前が入ってしまっているので空白にさせて頂いています。

csvファイルは以下のサイトの「世界幸福度報告」というものを使っています。
(https://domohelp.domo.com/hc/ja/articles/360043931814-%E6%A5%BD%E3%81%97%E3%81%BF%E3%81%AA%E3%81%8C%E3%82%89%E5%AD%A6%E3%81%B6%E3%82%B5%E3%83%B3%E3%83%97%E3%83%ABDataSet)

import pandas as pd import numpy as np from matplotlib import pyplot as plt %matplotlib inline from sklearn.linear_model import LinearRegression as LR from sklearn.metrics import accuracy_score whr2017=pd.read_csv(r"")   whr2016=pd.read_csv(r"") import tkinter as tk from tkinter import messagebox import tkinter.ttk as ttk from tkinter import messagebox #タイトルと画面サイズ root = tk.Tk() root.title("Python") root.geometry("350x100") #select_combo1の値を取得 def select_combo1(event): print(combo1.get()) #select_combo2の値を取得 def select_combo2(event): print(combo2.get()) #ボタンクリックイベント_tarin&ヒストグラム def btn_clk(): messagebox.askyesno("メッセージ","結果を表示しますか?") root.destroy() plt.hist(whr2017["Happiness Rank"]) #ボタンクリックイベント_tarin&折れ線グラフ def btn_clk1(): messagebox.askyesno("メッセージ","結果を表示しますか?") root.destroy() plt.hist(whr2017["Family"]) def btn_(): messagebox.askyesno("メッセージ","結果を表示しますか?") root.destroy() plt.plot(whr2016["Happiness Rank"]) def btn_1(): messagebox.askyesno("メッセージ","結果を表示しますか?") root.destroy() plt.plot(whr2016["Family"]) #comboboxのリスト表示(①データ選択) list = ["WHR2017", "WHR2016"] variable1 = tk.StringVar() combo1 = ttk.Combobox (root,values = list,textvariable = variable1,state="readonly",width = 10) combo1.bind('<<ComboboxSelected>>', select_combo1) combo1.set("データ選択") combo1.place(x=30,y=40) #comboboxのリスト表示(②解析方法選択) list = ["ヒストグラム","折れ線グラフ"] variable = tk.StringVar() combo2 = ttk.Combobox(root,values = list,textvariable = variable,state="readonly",width = 12) combo2.bind('<<ComboboxSelected>>', select_combo2) combo2.set("解析方法選択") combo2.place(x=140,y=40) #実行ボタン button = tk.Button(root,text ="実行",width = 10,height=1,command = btn_1) button.place(x = 260,y = 38) #文字の表示 label = tk.Label(root, text='品質改善システム') label.place(x = 1 ,y = 1) label =tk.Label(root,text='①') label.place(x = 10, y=40) label =tk.Label(root,text='②') label.place(x = 120, y=40) label =tk.Label(root,text='③') label.place(x = 240, y=40) root.mainloop()

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

meg_

2022/06/08 12:43

testが未定義のように見えますがどこで定義されているのでしょうか?
tasukete11

2022/06/08 13:08

すみません!先ほど修正致しました。ちなみにmeg_さんは解決できますでしょうか? 他のサイトでも質問したところ、関数を作って呼び出せばいけると言われたのですが、どのようなコードをおかけば出来るかよくわかりません…ご教授いただけないでしょうか?
meg_

2022/06/08 15:40

質問のコードを実行したところ、whr2017=pd.read_csv(r"")のところでSyntaxError: invalid character in identifierとなりましたが、質問者さんの方ではなりませんか?
meg_

2022/06/08 15:52

> 他のサイトでも質問したところ、 上記についてはhttps://teratail.com/help#posted-otherserviceを確認いただきご対応ください。 > このままだとプルダウンはただの飾りで 上記については「プルダウンで選択したもの」の取得は出来るのでしょうか?
tasukete11

2022/06/08 17:09

返信遅くなって申し訳ありません。 if elif文使ったら選択表示出来るようになりました!! お騒がせしました

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。