Menggabungkan Plotly dengan Dash dan Pandas
Pada artikel ini, kita akan membahas bagaimana menggabungkan Plotly, Dash, dan Pandas untuk membuat aplikasi analitik yang interaktif. Plotly adalah sebuah library grafis yang populer digunakan untuk membuat grafik dan visualisasi data. Dash adalah sebuah framework open-source yang memungkinkan kita untuk membina aplikasi analitik dengan tidak perlu menggunakan JavaScript, sedangkan Pandas adalah sebuah library Python yang populer digunakan untuk mengelola dan menganalisis data.
Menggunakan Plotly
Plotly memungkinkan kita untuk membuat berbagai jenis grafik, seperti scatter plot, line chart, dan histogram. Pada contoh di atas, kita akan menggunakan fungsi go.Figure() dari library Plotly untuk membuat grafik Iris Data set.
import plotly.graph_objects as go
import pandas as pd
df = pd.read_csv("https://raw.githubusercontent.com/plotly/datasets/master/iris-data.csv")
index_vals = df["class"].astype("category").cat.codes
fig = go.Figure(
data=go.Splom(
dimensions=[
dict(label="sepal length", values=df["sepal length"]),
dict(label="sepal width", values=df["sepal width"]),
dict(label="petal length", values=df["petal length"]),
dict(label="petal width", values=df["petal width"]),
],
showupperhalf=False,
text=df["class"],
marker=dict(
color=index_vals,
showscale=False,
line_color="white",
line_width=0.5,
),
)
)
fig.update_layout(
title="Iris Data set",
hoversubplots="axis",
width=600,
height=600,
hovermode="x",
)
fig.show()
Grafik Iris Data set akan terlihat dengan menggunakan fungsi go.Splom() dan parameter data yang berisi informasi tentang sepal length, sepal width, petal length, dan petal width. Kita juga dapat menambahkan hover effects dengan menggunakan parameter hoversubplots="axis".
Menggunakan Dash
Dash memungkinkan kita untuk membina aplikasi analitik yang interaktif tanpa perlu menggunakan JavaScript. Pada contoh di atas, kita akan menggunakan library Dash dan fungsi Graph dari package dash_core_components untuk menampilkan grafik Iris Data set dalam sebuah aplikasi Dash.
import plotly.graph_objects as go # or plotly.express as px
fig = go.Figure() # or any Plotly Express function e.g. px.bar(...)
from dash import Dash, dcc, html
app = Dash()
app.layout = html.Div([
dcc.Graph(figure=fig)
])
app.run_server(debug=True, use_reloader=False) # Turn off reloader if inside Jupyter
Aplikasi Dash akan terlihat dengan menggunakan fungsi Graph dan parameter figure yang berisi grafik Iris Data set. Kita juga dapat menambahkan fitur-fitur lain, seperti hover effects dan interaksi user.
Menggunakan Pandas
Pandas memungkinkan kita untuk mengelola dan menganalisis data dengan mudah. Pada contoh di atas, kita akan menggunakan fungsi scatter_matrix() dari library Pandas untuk membuat matrix of scatter plots.
import pandas as pd
df = pd.DataFrame(np.random.randn(1000, 4), columns=['A','B','C','D'])
pd.plotting.scatter_matrix(df, alpha=0.2)
Matrix of scatter plots akan terlihat dengan menggunakan fungsi scatter_matrix() dan parameter alpha yang berisi amount of transparency applied.
Menggabungkan Plotly, Dash, dan Pandas memungkinkan kita untuk membina aplikasi analitik yang interaktif dan mudah digunakan. Dengan menggunakan library-library ini, kita dapat membuat grafik dan visualisasi data yang lebih baik, serta meningkatkan kemampuan analisis data.