Spaces:
Runtime error
Runtime error
<html lang="en"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<title>Gesture Data</title> | |
<style> | |
body { | |
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; | |
padding: 20px; | |
background-color: #fafafa; | |
color: #333; | |
} | |
.container { | |
display: grid; | |
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); | |
gap: 20px; | |
margin-top: 20px; | |
} | |
.table-container, .chart-container { | |
border: 1px solid #ddd; | |
padding: 20px; | |
border-radius: 8px; | |
background-color: #ffffff; | |
box-shadow: 0 2px 5px rgba(0,0,0,0.1); | |
} | |
table { | |
width: 100%; | |
border-collapse: collapse; | |
} | |
th, td { | |
padding: 10px; | |
border: 1px solid #ddd; | |
text-align: left; | |
} | |
th { | |
background-color: #f8f8f8; | |
font-weight: 600; | |
} | |
tr:nth-child(even) { | |
background-color: #f9f9f9; | |
} | |
tr:hover { | |
background-color: #f1f1f1; | |
} | |
a { | |
display: inline-block; | |
margin-top: 20px; | |
padding: 10px 15px; | |
background-color: #4CAF50; | |
color: white; | |
text-decoration: none; | |
border-radius: 5px; | |
font-weight: bold; | |
} | |
a:hover { | |
background-color: #45a049; | |
} | |
h1, h2 { | |
color: #333; | |
} | |
</style> | |
</head> | |
<body> | |
<h1>Gesture Data Overview</h1> | |
<div class="container"> | |
<div class="table-container"> | |
<h2>Gesture Data Table</h2> | |
<table> | |
<thead> | |
<tr> | |
<th>Gesture</th> | |
<th>Start Time</th> | |
<th>End Time</th> | |
<th>Duration</th> | |
</tr> | |
</thead> | |
<tbody> | |
{% for row in gesture_data %} | |
<tr> | |
<td>{{ row[0] }}</td> | |
<td>{{ row[1] }}</td> | |
<td>{{ row[2] }}</td> | |
<td>{{ row[3] }}</td> | |
</tr> | |
{% endfor %} | |
</tbody> | |
</table> | |
</div> | |
<div class="chart-container"> | |
<h2>Gesture Distribution Chart</h2> | |
{{ html_chart|safe }} | |
</div> | |
</div> | |
<a href="{{ url_for('download_csv') }}">Download Captured Gesture Data CSV</a> | |
<a href="{{ url_for('download_json') }}">Download Captured Gesture Data JSON</a> | |
</body> | |
</html> | |