ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

Python tkinter create chart table PDF

python tkinter เป็นคำสั่งที่สร้างขึ้นมาให้แสดงผลลัพธ์ทางหน้าจอ เป็นหนึ่งในผู้เล่นใหม่ๆสามารถลองเขียนโค้ด python ได้อย่างสนุกและในวันนี้ผมจะมาแนะนำโค้ดในการสร้างแผนภูมิจากการปริ๊น PDF นะครับ

 

Input

from pandas import DataFrame
import matplotlib.pyplot as plt
from matplotlib.backends.backend_pdf import PdfPages
import tkinter as tk
Data1 = {'Unemployment_Rate': [6.1, 5.8, 5.7, 5.7, 5.8, 5.6, 5.5, 5.3, 5.2, 5.2],
         'Stock_Index_Price': [1500, 1520, 1525, 1523, 1515, 1540, 1545, 1560, 1555, 1565]
         }
df1 = DataFrame(Data1, columns=['Unemployment_Rate', 'Stock_Index_Price'])

Data2 = {'Year': [1920, 1930, 1940, 1950, 1960, 1970, 1980, 1990, 2000, 2010],
         'Unemployment_Rate': [9.8, 12, 8, 7.2, 6.9, 7, 6.5, 6.2, 5.5, 6.3]
         }
df2 = DataFrame(Data2, columns=['Year', 'Unemployment_Rate'])
root = tk.Tk()
canvas1 = tk.Canvas(root, width=700, height=500)
canvas1.pack()
def export():
    with PdfPages(r'C:\Users\poob\PycharmProjects\PDF\1.pdf') as export_pdf:
        plt.scatter(df1['Unemployment_Rate'], df1['Stock_Index_Price'], color='green')
        plt.title('Unemployment Rate Vs Stock Index Price', fontsize=10)
        plt.xlabel('Unemployment Rate', fontsize=8)
        plt.ylabel('Stock Index Price', fontsize=8)
        plt.grid(True)
        export_pdf.savefig()
        plt.close()
        plt.plot(df2['Year'], df2['Unemployment_Rate'], color='red', marker='o')
        plt.title('Unemployment Rate Vs Year', fontsize=10)
        plt.xlabel('Year', fontsize=8)
        plt.ylabel('Unemployment Rate', fontsize=8)
        plt.grid(True)
        export_pdf.savefig()
        plt.close()
button1 = tk.Button(root, text='Export PDF', command=export, bg='brown', fg='white')
canvas1.create_window(360, 250, window=button1)
root.mainloop()

Output

1.ผลลัพธ์หน้าจอคำสั่ง Python tkinter

2.หน้าที่ทำการสร้างไฟล์ PDF

3.ผลลัพธ์ในไฟล์ PDF

อธิบายลำดับการทำงานของ Python  Tkinter create chart table PDF

บรรทัดที่ 1 เรียกใช้ pandas เพื่อโหลดข้อมูลออกมาเป็นตาราง (DataFrame)

บรรทัดที่ 2 เรียกใช้ matplotlib สำหรับการวาดกราฟ

บรรทัดที่ 3 แสดงไฟล์ PDF ในหน้า page browser ที่เราเซตไว้

บรรทัดที่ 4 เรียกใช้ tkinter เช่น Tk 

บรรทัดที่ 5 - 7 สร้างชุดข้อมูลที่ 1 

บรรทัดที่ 8 กำหนดข้อมูลชุดที่ 1 ใช้ในแกน ( x, y ) 

บรรทัดที่ 9 - 11 สร้างชุดข้อมูลที่ 2

บรรทัดที่ 12 กำหนดข้อมูลชุดที่ 2 ใช้ในแกน ( x, y ) 

บรรทัดที่ 13 สร้างหน้าจอ

บรรทัดที่ 14 - 15 กำหนดขนาดหน้าจอ

บรรทัดที่ 16 - 31 กำหนด Function ในการทำงาน

บรรทัดที่ 32 เมื่อทำการกดปุ่มจะไปเรียกใช้คำสั่ง Function def export():

บรรทัดที่ 33 กำหนดตำแหน่งปุ่ม button

บรรทัดที่ 34 จบคำสั่งการทำงานและแสดงคำสั่งการทำงาน

 

Python tkinter create chart table PDF มีลำดับการทำงานดังนี้เริ่มแรกเรียก pandas มาช่วยในการสร้างตารางข้อมูล DataFrame จากนั้นเรียกใช้ matplotlib ไว้วาดเส้นกราฟ จากนั้นกำหนดให้ไฟล์ PDF ไปโชว์ในหน้า Browser สร้างชุดข้อมูลและกำหนดชุดข้อมูลใน (x,y)( แกนxแนวนอน,แกนyแนวตั้ง ) สร้างปุ่ม button เพื่อเรียกใช้ Function export เพื่อแสดงผลลัพธ์การทำงานตาม Style ที่เรากำหนดจากนั้น save ข้อมูลแล้วไปสร้างไฟล์ PDF ตามตำแหน่งโฟล์เดอร์ที่เรากำหนดแล้วภายในไฟล์จะแสดงผลลัพธ์ตาม Function ที่เรากำหนดเป็นอันเสร็จสิ้นการทำงาน


ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : Python

- บทเรียน Python (174)

- VDO Tutorial - Python (53)

- ความหมายของคำ (736)

- ถาม-ตอบ Python (608)

- พูดคุยเรื่องทั่วไป (1004)

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
มาแล้ว Plugin System MooZiiCart Auto Close สำหรับตั้งเวลาเปิดปิดระบบการสั่งซื้อสินค้าออนไลน์
โดย prmindphp พ 19 ก.พ. 2020 6:40 pm บอร์ด MindPHP News & Feedback
0
8
พ 19 ก.พ. 2020 6:40 pm โดย prmindphp
ถ้าคุณต้องเลือก
โดย noppadonsk พ 19 ก.พ. 2020 11:22 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
9
พ 19 ก.พ. 2020 11:22 am โดย noppadonsk
อยากจะทราบว่าวิธีการแสดงค่าอาเรย์แต่ล่ะค่าครับ
โดย waterwelon พ 19 ก.พ. 2020 11:04 am บอร์ด Programming - PHP
2
25
พ 19 ก.พ. 2020 11:58 am โดย thatsawan
คลายเครียด
โดย noppadonsk อ 18 ก.พ. 2020 2:50 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
24
อ 18 ก.พ. 2020 2:50 pm โดย noppadonsk
7 สิ่งที่ต้องปรับปรุงเพื่อลดค่า Bounce Rate บนหน้าเว็บไซต์
โดย phasamon อ 18 ก.พ. 2020 10:22 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
15
อ 18 ก.พ. 2020 10:22 am โดย phasamon
อยากให้ธุรกิจเป็นที่รู้จักบนโลกออนไลน์ ลองหาบริษัทรับทำ SEO ดูซิ !
โดย totheworld จ 17 ก.พ. 2020 3:34 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
55
จ 17 ก.พ. 2020 3:34 pm โดย totheworld
สี่เหตุผลที่ควรปรับปรุงเว็บไซต์
โดย phasamon จ 17 ก.พ. 2020 2:05 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
36
จ 17 ก.พ. 2020 2:05 pm โดย phasamon
อย่าได้พลาดเชียว
โดย noppadonsk จ 17 ก.พ. 2020 10:52 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
14
จ 17 ก.พ. 2020 10:52 am โดย noppadonsk
วิธีการแก้ไขปํญหา undefined index กรณีกำหนดเงือนไขเทียบค่าอาร์เรย์
โดย Ittichai_chupol ศ 14 ก.พ. 2020 5:50 pm บอร์ด PHP Knowledge
0
67
ศ 14 ก.พ. 2020 5:50 pm โดย Ittichai_chupol
เรื่องน่าเศร้า
โดย noppadonsk ศ 14 ก.พ. 2020 10:19 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
64
ศ 14 ก.พ. 2020 10:19 am โดย noppadonsk
อยากทรบวิธีจัดการไม่ให้สมาชิกที่อยู่ในกลุ่มที่กำหนดมาส่องโพสต์ของผู้อื่นได้
โดย Ittichai_chupol พฤ 13 ก.พ. 2020 3:22 pm บอร์ด Programming - PHP
3
89
พฤ 13 ก.พ. 2020 5:31 pm โดย thatsawan
กลับไปเริ่มใหม่
โดย noppadonsk พฤ 13 ก.พ. 2020 10:57 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
51
พฤ 13 ก.พ. 2020 10:57 am โดย noppadonsk
อยากทราบการเอาเลขมาคุณในช่อง 10อัน แล้วมาแล้วผลข้างล่างครับ
โดย comopal พ 12 ก.พ. 2020 6:49 pm บอร์ด Programming - PHP
1
111
พฤ 13 ก.พ. 2020 9:39 am โดย LEG
ต้องรีบเดี๋ยวลืม
โดย noppadonsk พ 12 ก.พ. 2020 10:56 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
50
พ 12 ก.พ. 2020 10:56 am โดย noppadonsk
วิธีการเลือกงาน
โดย jataz2 พ 12 ก.พ. 2020 9:47 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
60
พ 12 ก.พ. 2020 9:47 am โดย jataz2
วิธีการไปสัมภาษณ์งาน
โดย jataz2 พ 12 ก.พ. 2020 9:25 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
57
พ 12 ก.พ. 2020 9:25 am โดย jataz2
วิธีการ insert ข้อมูลในขั้นตอนติดตั้ง Extension phpbb
โดย Ittichai_chupol อ 11 ก.พ. 2020 5:55 pm บอร์ด PHP Knowledge
1
83
อ 11 ก.พ. 2020 6:01 pm โดย thatsawan
visual studio 2008 crystal reports viewer มี ในToolbox แต่ใช้งานไม่ได้
โดย d.direk อ 11 ก.พ. 2020 2:33 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
91
อ 11 ก.พ. 2020 2:33 pm โดย d.direk
การเดินทางจากปลวกแดง (ระยอง)- กรุงเทพฯ
โดย panudda อ 11 ก.พ. 2020 12:07 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
49
อ 11 ก.พ. 2020 12:07 pm โดย panudda
จะหยามกันเกินไปแล้ว
โดย noppadonsk อ 11 ก.พ. 2020 11:19 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
57
อ 11 ก.พ. 2020 11:19 am โดย noppadonsk