Flaskを使用して、JavaScript(具体的にはChart.jsというライブラリ)を使ってHTMLテンプレートでグラフを作成する方法を説明します。以下は手順です。
1.必要なライブラリのインストール:
コンソール、またはコマンドプロントでFlaskをインストールします。
pip install flask
2.Flaskアプリケーションの設定:
app.py
という名前のファイルを作成し、以下のコードを追加します。
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
# ダミーデータ
data = {
"labels": ["9:00", "10:00", "11:00", "12:00", "13:00"], # 時間
"datasets": [
{
"label": "Temperature (°C)",
"data": [20, 22, 24, 23, 21], # 温度
}
]
}
return render_template('index.html', data=data)
if __name__ == '__main__':
app.run(debug=True)
3.HTMLテンプレートの作成:
templates
という名前のディレクトリを作成し、その中にindex.html
という名前のファイルを作成し、以下の内容を追加します。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Temperature Chart</title>
<!-- Chart.jsのCDNを追加 -->
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
</head>
<body>
<canvas id="temperatureChart" width="400" height="200"></canvas>
<script>
var ctx = document.getElementById('temperatureChart').getContext('2d');
var temperatureChart = new Chart(ctx, {
type: 'line',
data: {{ data | tojson | safe }},
options: {
scales: {
x: {
beginAtZero: true,
title: {
display: true,
text: '時間'
}
},
y: {
beginAtZero: true,
title: {
display: true,
text: '温度 (°C)'
}
}
}
}
});
</script>
</body>
</html>
4.アプリケーションの実行:
app.py
を実行して、ブラウザでhttp://127.0.0.1:5000/
にアクセスすると、時間と温度のグラフが表示されます。
以上の手順で、FlaskとChart.jsを使用して、時間と温度のグラフを作成することができます。