본문 바로가기
반응형

파이썬/tkinter GUI (코로나 양성예측도,음성예측도)12

[파이썬 tkinter GUI 만들기] #12. 진단기기 이름입력창 추가하기 기기이름을 쓸 수 있도록 하는 라벨을 추가했습니다. 코드 수정이 좀 번거로웠습니다. 1행부터 이미 있기 때문에 0행이라는 이름으로 추가하였고, 1~6행의 row 값을 하나씩 늘려 주었습니다. 화면 사이즈도 위 아래로 약간 늘려 주었습니다. import tkinter as tk #윈도우 생성 root=tk.Tk() #전체 이름 root.title('진단기기 예측도 계산 프로그램') #창 크기 +붙은 부분은 좌상단 떨어진 위치 root.geometry("480x420+100+100") #함수들 def make_lab14() : lab14.configure(text=ent12.get()) def make_lab24() : lab24.configure(text=ent22.get()) def make_lab34(.. 2022. 2. 2.
[파이썬 tkinter GUI 만들기] #11. 퍼센트 기호 출력하기 아래 코드에 표시한 부분에 퍼센트 기호를 추가하겠습니다. 함수를 아래와 같이 수정해줍니다. 실행 결과는 아래와 같습니다. 아래는 전체 코드입니다. import tkinter as tk #윈도우 생성 root=tk.Tk() #전체 이름 root.title('진단기기 예측도 계산 프로그램') #창 크기 +붙은 부분은 좌상단 떨어진 위치 root.geometry("480x380+100+100") #함수들 def make_lab14() : lab14.configure(text=ent12.get()) def make_lab24() : lab24.configure(text=ent22.get()) def make_lab34() : lab34.configure(text=ent32.get()) def make_PPV_N.. 2022. 2. 2.
[파이썬 tkinter GUI 만들기] #10. 코드 정리하고 사이즈 수정하기 프로그램은 다 만든 상태입니다. 글자가 잘리고 여백이 너무 커서 수정하려고 합니다. 먼저 width를 변수화 시키겠습니다. 민감도, 특이도, 발생률의 width 를 width1로 설정하겠습니다. 화살표의 width를 width2로 설정하겠습니다. 입출력 라벨의 width 는 width3으로 설정하겠습니다. width 설정이 의미없는 라벨들은 width를 지워줍니다. import tkinter as tk #윈도우 생성 root=tk.Tk() #전체 이름 root.title('코로나 진단키트 에측도 진단 프로그램') #창 크기 +붙은 부분은 좌상단 떨어진 위치 root.geometry("600x500+100+100") #함수들 def make_lab14() : lab14.configure(text=ent12.. 2022. 2. 2.
[파이썬 tkinter GUI 만들기] #9. 예측도 계산해서 라벨에 추가하기 최종 목표는 아래 프로그램입니다. 버튼은 전부 추가한 상태입니다. 코드와 실행결과는 아래와 같습니다. import tkinter as tk #윈도우 생성 root=tk.Tk() #전체 이름 root.title('코로나 진단키트 에측도 진단 프로그램') #창 크기 +붙은 부분은 좌상단 떨어진 위치 root.geometry("600x500+100+100") #함수들 def make_lab14() : lab14.configure(text=ent12.get()) def make_lab24() : lab24.configure(text=ent22.get()) def make_lab34() : lab34.configure(text=ent32.get()) #1행 라벨 추가 lab11=tk.Label(root, text.. 2022. 2. 2.
[파이썬 tkinter GUI 만들기] #8. 나머지 버튼 만들기 최종 목표는 아래 프로그램입니다. 오늘은 4,5,6 행의 버튼들을 만들겠습니다. 지금까지 만든 코드는 아래와 같습니다. import tkinter as tk #윈도우 생성 root=tk.Tk() #전체 이름 root.title('코로나 진단키트 에측도 진단 프로그램') #창 크기 +붙은 부분은 좌상단 떨어진 위치 root.geometry("600x500+100+100") #함수들 def make_lab14() : lab14.configure(text=ent12.get()) def make_lab24() : lab24.configure(text=ent22.get()) def make_lab34() : lab34.configure(text=ent32.get()) #1행 라벨 추가 lab11=tk.Label(.. 2022. 2. 1.
[파이썬 tkinter GUI 만들기] #7. 세번째 행(row)까지 만들기 최종 목표는 아래 프로그램입니다. 첫번째 행은 완성한 상태입니다. 코드는 아래와 같습니다. import tkinter as tk #윈도우 생성 root=tk.Tk() #전체 이름 root.title('코로나 진단키트 에측도 진단 프로그램') #창 크기 +붙은 부분은 좌상단 떨어진 위치 root.geometry("600x500+100+100") #함수들 def make_lab14() : lab14.configure(text=ent12.get()) #1행 라벨 추가 lab11=tk.Label(root, text="민감도", width=8, height=1, font=('맑은 고딕',16,'bold'), bg='#2F5597', fg='white') lab11.grid(row=0,column=0,padx=5,.. 2022. 2. 1.
[파이썬 tkinter GUI 만들기] #6. 버튼 눌러서 값 입력받기 최종 목표는 아래 프로그램입니다. 오늘은 빨간 버튼을 만들고 우리가 입력한 값을 우측 입력결과에 나오게할 것입니다. 지난시간까지 만든 코드는 아래와 같습니다. import tkinter as tk #윈도우 생성 root=tk.Tk() #전체 이름 root.title('코로나 진단키트 에측도 진단 프로그램') #창 크기 +붙은 부분은 좌상단 떨어진 위치 root.geometry("600x500+100+100") #1행 라벨 추가 lab11=tk.Label(root, text="민감도", width=8, height=1, font=('맑은 고딕',16,'bold'), bg='#2F5597', fg='white') lab11.grid(row=0,column=0,padx=5,pady=10) ent12=tk.En.. 2022. 2. 1.
[파이썬 tkinter GUI 만들기] #5. 입력 창 만들기 최종 목표는 아래 프로그램입니다. 지난 시간에 민감도 라벨까지 만들었습니다. 오늘은 민감도 라벨 바로 오른쪽에 있는 입력창을 만들어봅시다. 일단 지난시간까지 만든 코드는 아래와 같습니다. import tkinter as tk #윈도우 생성 root=tk.Tk() #전체 이름 root.title('코로나 진단키트 에측도 진단 프로그램') #창 크기 +붙은 부분은 좌상단 떨어진 위치 root.geometry("600x500+100+100") #1행 라벨 추가 lab11=tk.Label(root, text="민감도", width=8, height=1, font=('맑은 고딕',16,'bold'), bg='#2F5597', fg='white') lab11.grid(row=0,column=0,padx=5,pady.. 2022. 1. 31.
[파이썬 tkinter GUI 만들기] #4. 라벨 하나 추가해보기 최종 목표는 아래 프로그램입니다. 첫 줄(row) 부터 만들어봅시다. 오늘은 '민감도'라는 라벨하나 추가할겁니다. tk.Label 이라는 함수를 사용합니다. 형식은 아래와 같습니다. 변수 이름인 lab11 은 1행1열에 있는 라벨이라는 의미로 지었습니다. lab11=tk.Label(root) root 라는 윈도우에 라벨을 추가했습니다. 이제 내용을 추가해주어야 합니다. 필요한 것을 추려보면 아래와 같습니다. - 라벨 이름 (text) - 라벨 크기 (height, width) - 라벨 폰트 종류와 크기 (font) - 라벨 배경색 (bg) - 라벨 글자색 (fg) 요정도면 될 것 같네요. 추가하면 아래와 같습니다. lab11=tk.Label(root, text="민감도", width=8, height=2.. 2022. 1. 31.
[파이썬 tkinter GUI 만들기] #3. 화면 만들고 이름,사이즈 설정 tkinter 패키지를 이용해서 윈도우창을 하나 만들어봅시다. tkinter 는 파이썬 내장패키지라 따로 설치할 필요는 없습니다. 아래와 같이 tkinter 를 불러옵니다. 참고로 저는 Visual Studio Code 라는 IDE 를 사용하고 있습니다. import tkinter as tk tk.Tk() 클래스를 이용하면 윈도우 창을 띄울 수 있는데요. 마치 리스트를 하나 입력하는 것과 같습니다. 리스트도 [1,2,3] 이렇게만 입력하고, 변수에 지정을 하지 않으면 추가적인 옵션설정이라던가 수정이 불가합니다. 윈도우 창을 우리가 원하는 대로 수정해주기 위해 tk.Tk() 를 변수에 입력해주겠습니다. #윈도우 생성 root=tk.Tk() 실행하면 아래와 같이 윈도우가 생성됩니다. 이름을 바꾸고 싶고, 크.. 2022. 1. 31.
[파이썬 tkinter GUI 만들기] #2. 레이아웃 짜기 오늘은 프로그램 레이아웃을 짜볼건데요. 아래 수식을 봅시다. $PPV=\frac{(Prevalence Rate)(Sensitivity)}{(Sensitivity)+(1-Specificity)}$ $NPV=\frac{(1-Prevalence Rate)(Specificity)}{(1-Sensitivity)+(Specificity)}$ 입력값은 민감도, 특이도, 발생률입니다. 출력값은 양성예측도, 음성예측도입니다. 아래와 같이 레이아웃을 짜봤습니다. 입력해야 하는 부분에는 흰색으로, 버튼을 클릭해야하는 부분은 빨간색으로 했습니다. 2022. 1. 31.
[파이썬 tkinter GUI 만들기] #1. 코로나 진단키트 예측도 계산 프로그램 아래와 같은 프로그램을 만들어보려고 합니다. 진단키트의 민감도, 특이도, 질병발생률을 입력하면 음성예측도와 양성예측도를 알려주는 프로그램입니다. 언어는 파이썬을 이용하겠습니다. 몇가지 사전지식이 필요하다. 아래 용어들을 알아야 한다. 민감도(Sensitivity, SE) : 병에 걸린 사람이 양성이 나올 확률 (참양성) 특이도(Specificity, SP) : 병에 걸리지 않은 사람이 음성이 나올 확률 (참음성) 양성예측도(Positive Predictive Value, PPV) : 양성이 나왔을 때 병에 걸려있을 확률 음성예측도(Negative Predictive Value, NPV) : 음성이 나왔을 때 병에 걸리지 않았을 확률 유병률(Prevalence Rate) : 병의 발생 확률 수식으로 유도하.. 2022. 1. 30.
반응형