Darsh Garg/ADV-C201: GUI Data Visualization Application #1/WhiteHatJr/Python Coding/Jupyter Notebook

Darsh The Codey
Darsh The Codey
239 بار بازدید - 2 سال پیش - GUI APPLICATIONfrom ipywidgets import widgetsfrom
GUI APPLICATION

from ipywidgets import widgets
from IPython.display import display, clear_output
import pandas as pd
from tkinter import Tk, filedialog
import matplotlib.pyplot as plt
import numpy as np

graph_type = ['Choose one...', 'Bubble', 'Bar']
funtionality = ['Choose one...', 'Sort', 'Filter']
sort_option = ['Ascending', 'Descending']
df = ''
new_df = ''
input_box = ''
input_fontsize = ''
input_title = ''

def select_files(b):
   clear_output()
   global df
   
   root = Tk()
   root.withdraw()    
   file_name = filedialog.askopenfilename()
   df = pd.read_csv(file_name)
   function_widget = widgets.Dropdown(options = funtionality)
   function_int = widgets.interactive(choose_the_function, function = function_widget)
   display(function_int)

def choose_the_function(function):
   global sort_option
   global df
   global input_box
   if(function == 'Sort'):
       sort_col_widget = widgets.Dropdown(options = df.columns)
       sort_option_widget = widgets.Dropdown(options = sort_option)
       range_widget = widgets.Dropdown(options = [20, 30, 40])
       sort_int = widgets.interactive(sort_dataframe, column = sort_col_widget, type_of_sort = sort_option_widget, head_range = range_widget)
       display(sort_int)
   
   elif(function == 'Filter'):
       display(df)
       input_box = widgets.Text(description = "Value : ")
       display(input_box)
       filter_col_widget = widgets.Dropdown(options = df.columns)
       compare_widget = widgets.Dropdown(options = ['Choose one...', '=', '}', '{'])
       head = widgets.Dropdown(options = [20, 30, 40])
       groupby_int = widgets.interactive(filter_dataframe, filter_column = filter_col_widget, comparison = compare_widget, head_df = head)
       display(groupby_int)
       
   else:
       print("Choose a Function")
       
def sort_dataframe(column, type_of_sort, head_range):
   global new_df
   global df
   try:
       print(df[column].dtypes)
       
       if(df[column].dtypes != 'float' or df[column].dtypes != 'int'):
           df[column] = df[column].astype('float')
   
       if(type_of_sort == 'Ascending'):
           new_df = df.sort_values(column, ascending = True)
           display(new_df)
       
       else:
           new_df = df.sort_values(column, ascending = False)
           display(new_df)
       
   except:
       print("The Data is not Structured so cannot Perform the Selected Action")
2 سال پیش در تاریخ 1401/09/19 منتشر شده است.
239 بـار بازدید شده
... بیشتر