Konfigurasi Font pada Plotly

Konfigurasi Font pada Plotly


Plotly adalah sebuah library Python yang digunakan untuk membuat visualisasi data. Salah satu fitur penting dari Plotly adalah kemampuan konfigurasi font yang dapat membantu meningkatkan readability dan keindahan plot.

Dalam contoh di atas, kita akan mengkonfigurasi font pada layout.font. Kita akan set variannya menjadi small-caps, yang berarti huruf awal tiap kata dalam plot akan ditulis dengan huruf besar.

import plotly.graph_objects as go
from plotly import data

df = data.iris()

setosa_df = df[df["species"] == "setosa"]
versicolor_df = df[df["species"] == "versicolor"]
virginica_df = df[df["species"] == "virginica"]

fig = go.Figure(
 data=[
 go.Scatter(
 x=setosa_df["sepal_width"],
 y=setosa_df["sepal_length"],
 mode="markers",
 name="setosa",
 ),
 go.Scatter(
 x=versicolor_df["sepal_width"],
 y=versicolor_df["sepal_length"],
 mode="markers",
 name="versicolor",
 ),
 go.Scatter(
 x=virginica_df["sepal_width"],
 y=virginica_df["sepal_length"],
 mode="markers",
 name="virginica",
 ),
 ],
 layout=go.Layout(
 title="Plot Title",
 xaxis=dict(title="X Axis Title"),
 yaxis=dict(title="Y Axis Title"),
 legend=dict(title="Legend Title"),
 font=dict(
 family="Courier New, monospace",
 size=18,
 color="RebeccaPurple",
 variant="small-caps",
 )
 )
)

fig.show()

Mengatur Judul Plot


Judul plot dapat diatur menggunakan layout.title. Anda dapat mengatur posisi judul dengan menggunakan properti x dan y, serta menentukan apakah judul akan berada di tengah (center), kiri (left), atau kanan (right) dengan menggunakan properti xanchor.

import plotly.graph_objects as go

fig = go.Figure(go.Scatter(
 y=[3, 1, 4],
 x=["Mon", "Tue", "Wed"]))

fig.update_layout(
 title={
 'text': "Plot Title",
 'y':0.9,
 'x':0.5,
 'xanchor': 'center',
 'yanchor': 'top'})

fig.show()

Menambahkan Sub Judul Plot


Anda dapat menambahkan sub judul plot dengan menggunakan layout.title.subtitle. Dalam contoh di atas, kita akan menampilkan subtitle yang berisi teks "Life expectancy by European country in 1952 and in 2002", serta mengatur warna dan ukuran font.

import plotly.graph_objects as go
from plotly import data

df = data.gapminder().query("continent == 'Europe' and (year == 1952 or year == 2002)")

df_pivot = df.pivot(index="country", columns="year", values="lifeExp")

fig = go.Figure(
 [
 go.Bar(
 x=df_pivot.index, y=df_pivot[1952], name="1952", marker_color="IndianRed"
 ),
 go.Bar(
 x=df_pivot.index, y=df_pivot[2002], name="2002", marker_color="LightSalmon"
 ),
 ],
 layout=dict(
 title=dict(
 text="Life Expectancy",
 subtitle=dict(
 text="Life expectancy by European country in 1952 and in 2002",
 font=dict(color="gray", size=13),
 ),
 )
 ),
)


fig.show()

Mengenai Dash


Dash adalah sebuah framework open-source untuk membangun aplikasi analitik, tanpa menggunakan JavaScript. Dash juga terintegrasi dengan baik dengan library Plotly.

Anda dapat mengunduh Dash di https://dash.plot.ly/installation.

Kita juga dapat menampilkan plot yang sama dalam aplikasi Dash dengan cara menambahkannya ke komponen Graph dari paket dash_core_components seperti berikut:

import plotly.graph_objects as go # or plotly.express as px
fig = go.Figure() # or any Plotly Express function e.g. px.bar(...)
# fig.add_trace( ... )
# fig.update_layout( ... )

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