以下是一个简单的示例代码,实现了数据集导入和散点图显示功能:

import tkinter as tk
from tkinter import filedialog
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg

class App(tk.Tk):
    def __init__(self):
        super().__init__()
        self.title('数据集导入和散点图显示')
        
        # 创建导入按钮
        self.import_button = tk.Button(self, text='导入数据集', command=self.import_data)
        self.import_button.pack(padx=10, pady=10)
        
        # 创建图像选择按钮
        self.scatter_button = tk.Button(self, text='散点图', command=self.show_scatter)
        self.scatter_button.pack(padx=10, pady=10)
        
        # 创建画布
        self.figure = plt.Figure(figsize=(5, 4), dpi=100)
        self.canvas = FigureCanvasTkAgg(self.figure, master=self)
        self.canvas.get_tk_widget().pack()
        
        # 初始化数据
        self.data = None
        
    def import_data(self):
        # 打开文件选择对话框
        file_path = filedialog.askopenfilename(filetypes=[('CSV文件', '*.csv')])
        if file_path:
            # 读取CSV文件
            self.data = pd.read_csv(file_path)
            print(self.data.head())
    
    def show_scatter(self):
        if self.data is not None:
            # 绘制散点图
            ax = self.figure.add_subplot(111)
            ax.clear()
            ax.scatter(self.data['x'], self.data['y'])
            ax.set_xlabel('x')
            ax.set_ylabel('y')
            self.canvas.draw()
        else:
            print('请先导入数据集!')

if __name__ == '__main__':
    app = App()
    app.mainloop()

运行以上代码,会弹出一个窗口,其中包含了一个“导入数据集”按钮和一个“散点图”按钮。点击“导入数据集”按钮后,会弹出一个文件选择对话框,选择CSV文件后会自动读取数据集。点击“散点图”按钮后,会在窗口中显示出散点图。注意,这里只是一个简单的示例,实际应用中还需要考虑更多的细节和异常情况。

Python Tkinter 数据可视化:导入 CSV 数据并绘制散点图

原文地址: https://www.cveoy.top/t/topic/ocvh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录