Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

GUI untuk Statistik dengan Python

Presentasi serupa


Presentasi berjudul: "GUI untuk Statistik dengan Python"— Transcript presentasi:

1 GUI untuk Statistik dengan Python
Program Digitalent Kominfo: Big Data Analytics Disusun oleh: Astria Nur Irfansyah, PhD 2018

2 Dashboard dengan Python
Dashboard butuh unsur: Visualisasi Interaktivitas Alternatif dalam slide ini: Dengan matplotlib dan tkinter (canvas) Dengan plotly, dan dash (web-based).

3 Dashboard sederhana dengan Tkinter
import matplotlib as mpl import numpy as np import tkinter as tk from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg import pandas as pd def update_grafik(): ax.cla() if (grafik.get() == 'semua'): data.plot(kind="bar",x="Kota Harga Eceran", y=["2011","2012","2013"], ax=ax) elif (grafik.get() == '2011'): data.plot(kind="bar",x="Kota Harga Eceran", y=["2011"], ax=ax) elif (grafik.get() == '2012'): data.plot(kind="bar",x="Kota Harga Eceran", y=["2012"], ax=ax) elif (grafik.get() == '2013'): data.plot(kind="bar",x="Kota Harga Eceran", y=["2013"], ax=ax) canvas.draw() print(grafik.get()) data = pd.read_csv(" sep=';') header = pd.read_csv(" sep=';', header=None,nrows=1) fig = mpl.figure.Figure(figsize = (6,5)) ax = fig.add_axes([0.1,0.1,0.85,0.85]) utama = tk.Tk() w = tk.Canvas(utama, width=600, height=600) w.pack() canvas = FigureCanvasTkAgg(fig, master=w) canvas.get_tk_widget().pack(side = tk.LEFT, fill=tk.X) grafik = tk.StringVar() grafik.set("semua") radio_semua = tk.Radiobutton(utama, text="semua", variable = grafik, value = 'semua', command=update_grafik).pack() radio_2011 = tk.Radiobutton(utama, text="2011", variable = grafik, value = '2011', command=update_grafik).pack() radio_2012 = tk.Radiobutton(utama, text="2012", variable = grafik, value = '2012', command=update_grafik).pack() radio_2013 = tk.Radiobutton(utama, text="2013", variable = grafik, value = '2013', command=update_grafik).pack() utama.mainloop()

4 Hasilnya: Radiobutton: Buat variabel dahulu (versi Tkinter)
Radiobutton dibuat, parameternya: parent : window parent text : label variable : variabel Tk value : variabel diisi ini command : function ini dipanggil Radiobutton

5 Plotly Sebetulnya ini nama sebuah perusahaan.
Menyediakan library visualisasi grafis interaktif online, dan alat bantu statistik. Menyediakan modul Dash untuk web apps. Butuh akun, jika deployment secara online.

6 Program Plotly 1 from plotly import __version__ from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot import pandas as pd import numpy as np import plotly.graph_objs as go subjects = ['Mathematics', 'English', 'History', 'Science', 'Arts'] marks = [67, 60, 36, 61, 58] marks_dataset = zip(subjects, marks) marks_df = pd.DataFrame(list(marks_dataset), columns=['Subjects', 'Marks']) marks_data = [go.Bar(x=marks_df.Subjects, y=marks_df.Marks)] plot({ 'data': marks_data, 'layout': { 'title': 'Marks Distribution', 'xaxis': { 'title': 'Subjects'}, 'yaxis': { 'title': 'Marks '} }})

7 Hasilnya:

8 Pandas dan plotly from plotly import __version__ from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot import pandas as pd import numpy as np import plotly.graph_objs as go data = pd.read_csv(" sep=';') data_df = pd.DataFrame(data, columns=['kota','Th_2011','Th_2012','Th_2013','Th_2014','Th_2015','Th_2016']) data_plot = [go.Bar(x=data["Kota Harga Eceran"], y=data["2011"]), go.Bar(x=data["Kota Harga Eceran"], y=data["2012"]), go.Bar(x=data["Kota Harga Eceran"], y=data["2013"]) ] plot({ 'data': data_plot, 'layout': { 'title': 'Harga beras', 'xaxis': { 'title': 'Kota'}, 'yaxis': { 'title': 'Rp / kg '} }})

9 Hasilnya:

10 Latihan Untuk program sebelumnya, betulkan label legend.
Bisakah dibuat interaktif?

11 Dash oleh Plotly (tambahan)
Dash adalah library GUI dan visualisasi dari Plotly dengan berbasis Web. Secara default akan memanggil css dan script secara online, namun bisa dijalankan sepenuhnya lokal.

12 Dash Installation In your terminal, install several dash libraries. These libraries are under active development, so install and upgrade frequently. Python 2 and 3 are supported. pip install dash pip install dash-html-components pip install dash-core-components Ready? Now, let's make your first Dash app.

13 Instalasi (harus terhubung internet)

14 Program Mencoba Dash import dash from dash.dependencies import Input, Output import dash_core_components as dcc import dash_html_components as html app = dash.Dash() app.css.config.serve_locally = True app.scripts.config.serve_locally = True app.layout = html.Div([ dcc.Input(id='input', value='Ketikkan sesuatu di sini!', type='text'), html.Div(id='output') Output(component_id='output', component_property='children'), [Input(component_id='input', component_property='value')] ) def update_value(input_data): return 'Input: "{}"'.format(input_data) if __name__ == '__main__': app.run_server(debug=True)


Download ppt "GUI untuk Statistik dengan Python"

Presentasi serupa


Iklan oleh Google