Python Djangoを使用して、データを視覚化し、Webアプリケーションにグラフを表示する方法を紹介します。この記事では、MatplotlibとPlotlyの2つの異なるライブラリを使用した例を提供します。
Matplotlibを使用したグラフの表示
MatplotlibはPythonのグラフ描画ライブラリで、Djangoと組み合わせて使用することで、Webアプリケーション上でグラフを表示することができます。
import matplotlib.pyplot as plt
import base64
from io import BytesIO
def Output_Graph():
buffer = BytesIO()
plt.savefig(buffer, format="png")
buffer.seek(0)
img = buffer.getvalue()
graph = base64.b64encode(img)
graph = graph.decode("utf-8")
buffer.close()
return graph
def Plot_Graph(x,y):
plt.switch_backend("AGG")
plt.figure(figsize=(10,5))
plt.bar(x,y)
plt.xticks(rotation=45)
plt.title("Revenue per Date")
plt.xlabel("Date")
plt.ylabel("Reveue")
plt.tight_layout()
graph = Output_Graph()
return graph
Plotlyを使用したグラフの表示
Plotlyはインタラクティブなグラフを作成するためのJavaScriptライブラリで、Pythonからも利用することができます。Djangoと組み合わせて使用することで、Webアプリケーション上でインタラクティブなグラフを表示することができます。
from django.views.generic import TemplateView
import plotly.graph_objects as go
def line_charts():
fig = go.Figure(
go.Scatter(
x=[1, 2, 3],
y=[3, 5, 2]
),
layout=go.Layout(
title="Line Chart Sample",
xaxis=dict(title="X-axis"),
yaxis=dict(title="Y-axis")
)
)
return fig.to_html(include_plotlyjs=False)
これらのコードスニペットは、Django Webアプリケーションでグラフを表示する基本的な方法を示しています。具体的な使用例や詳細な説明については、参考リンクをご覧ください。.