GUI untuk Statistik dengan Python

Slides:



Advertisements
Presentasi serupa
Image – Hyperlink – Form
Advertisements

Praktikum PTI Sekolah Tinggi Ilmu Statistik Oleh : SIS - BPS Content Management System.
jQuery is a JavaScript Library.
CodeIgniter By ISNARDI, M.Kom.
KONSEP PEMROGRAMAN WEB
FUNGSI Deklarasi dan Definisi fungsi Void dan Non-void Fungsi main.
Menciptakan Fungsi.
Konsep Pemrograman Web
Form.
Materi 11 Membuat Form Hai. Saya akan menunjukkan bagaimana membuat web page yang bersifat interaktif dengan penggunaan tag. Dengan tag ini anda dapat.
NAMA KELOMPOK : Laili Nur Hanifah ( ) Sumani ( ) Nur Indah Ekasari ( )
Function.
© aSup-2007 PENGENALAN SPSS   1 INTRODUCTION to SPSS Statistical Package for Social Science.
Pemrograman Internet Mobile 7 PHP: Hypertext Preprocessors.
Pengembangan WEB Java Script Evangs Mailoa.
Graphic User Interface
Prosedur (Procedure).
FUNCTION / FUNGSI.
FORM PADA WEB WEB 1 KELAS X.
Review-Dasar Pemrograman Komputer
Aplikasi Web Mobile Lebar Layar Dinamis 2 dan Navigasi.
Pengembangan Web Java Script Ramos Somya.
Javascript Javascript Javascript Javascript Javascript Javascript
Sistem Operasi © Sekolah Tinggi Teknik Surabaya 1.
Function User Function.
Fungsi Fungsi (Sub Program) :
INTRODUCTION TO SPSS Statistical Package for Social Science 1.
1 Pertemuan 03 Form Matakuliah: T0063/Pemrograman Visual Tahun: 2005 Versi: 1/0.
Class and Object Matakuliah : XXXX / Algoritma dan Metode Object Oriented Programming II Pertemuan : 2 Tahun : 2008 Versi : 1/0.
1 Pertemuan 2 Function & Pointer Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
FORM Kegunaan Form : memperoleh data-data user baik nama, alamat dan data lainnya untuk mendaftar pada service yang di sediakan. memperoleh informasi pembelian.
1 Pertemuan Fungsi Matakuliah: T0016 / Algoritma dan Pemrograman Tahun: 2007 Versi: 6.
1. Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu :  Mendemonstrasikan penggunaan fungsi serta pengiriman parameter 2.
SUBRUTIN By Adnan Purwanto, S.Kom.
Prosedur dan Fungsi Triana Elizabeth, S.Kom.
(HTML). Frames are most typically used to have a menu in one frame, and content in another frame. When someone clicks a link on the menu that web page.
Membangun Aplikasi Berbasis Web Dengan CodeIgniter Framework.
Statement Control (if dan switch)
Multimedia Matematika – Pertemuan 3
Pengenalan Google Map API
Pemrograman internet ABU SALAM, M.KOM.
Pemasaran Berbasis web
Perancangan & Pemrograman Web
Pemrograman internet ABU SALAM, M.KOM.
SOFTWARE DEFINED NETWORK BAGIAN 1 INSTALASI SOFTWARE PENDUKUNG SDN
STRUKTUR KONTROL & FUNGSI
Pemrograman Berbasis WEB
Pemasaran Berbasis web
Dijalankan dengan interpreter
LAB PEMOGRAMAN III (VISUAL BASIC)
Pertemuan 2 JAVA 2 KA.
Castaka agus sugiato, M.Kom., M.CS
Fungsi, Parameter & Rekursi
PJ : Nuraini Purwandari
Pembahasan soal uts.
Pemrograman Python dan MySQL Aplikasi Pembelajaran Bangun Ruang Berbasis E-Learning Menggunakan Bahasa for further detail, please visit
Parameter Ketika procedure atau function dipanggil, kita dapat melewatkan suatu nilai ke dalam function atau procedure tersebut. Nilai yang dilewatkan.
Prinsip Dasar Internet & Pemrograman Web
Materi 9 Pembahasan CLASS Dalam C++
Pemrograman Berorientasi Platform (IN315B)
M-File Sebagai Fungsi.
DATA ENTRY MUSDALIFAH DJ.
Prinsip Dasar Internet & Pemrograman Web
Pemrograman Terstruktur
Pemrograman dengan Python function, module
Data Statistika diPYTHON
Plotting dengan Python
Graphical User Interface (GUI) dengan Python #2
Pengenalan Python Apa itu Python dan kenapa belajar Python? Apa saja alat-alat yang diperlukan untuk belajar python? Bagaimana cara membuat program python?
TITLE. Text Title.
Transcript presentasi:

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

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

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("https://raw.githubusercontent.com/nurirfansyah/digitalent_ITS_bigdata/master/hargaberas.csv", sep=';') header = pd.read_csv("https://raw.githubusercontent.com/nurirfansyah/digitalent_ITS_bigdata/master/hargaberas.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()

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

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

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 '} }})

Hasilnya:

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("https://raw.githubusercontent.com/nurirfansyah/digitalent_ITS_bigdata/master/hargaberas.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 '} }})

Hasilnya:

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

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.

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.

Instalasi (harus terhubung internet)

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') ]) @app.callback( 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)