How to read data from database and return it to chart using HTML?
To read data from the database and return it to the chart, you can follow these steps:
1、Connect to the database: Use an appropriate programming language such as PHP, Python, Java, etc., through a database connection library like MySQL or PostgreSQL.
$servername = "your_database_host"; $username = "your_username"; $password = "your_password"; $dbname = "your_database_name"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); }
2、Execute the query: Write SQL statements that retrieve data based on your needs. You may choose specific tables, columns, and filter conditions to get what you need.
$sql = "SELECT * FROM your_table"; $result = $conn->query($sql); if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "<br>" . $row["column_name"]; } } else { echo "0 results"; } $conn->close();
3、Format the data: Depending on the format requirement for charts, format the retrieved data accordingly.
for $i in range(1,$length+1){ if($i%2 == 0) continue; else $strUserID = $table[$i-1][$colName]; }
4、Return the data to the chart: Use AJAX or a server-side template engine to load the formatted data and generate the desired chart.
var html = '<div style="height:' + height + 'px; width:' + width + 'px; overflow-y:auto;" id="myChart"></div>'; function createBarChart(data) { var ctx = document.getElementById('myChart').getContext('2d'); var myChart = new Chart(ctx, { type: 'bar', data: { labels: ['January', 'February', 'March'], datasets: [{ label: '# of Votes', data: [data[0], data[1], data[2]], backgroundColor: [ 'rgba(255, 99, 132, 0.2)', 'rgba(54, 162, 235, 0.2)', 'rgba(255, 206, 86, 0.2)' ], borderColor: [ 'rgba(255, 99, 132, 1)', 'rgba(54, 162, 235, 1)', 'rgba(255, 206, 86, 1)' ], borderWidth: 1 }] }, options: { scales: { yAxes: [{ ticks: { beginAtZero: true, stepSize: 1 } }] } } }); }
5、Display data in the chart: Finally, display the data using a chart component, such as Chart.js or Highcharts.
document.getElementById('myChart').innerHTML = `<h1>${strUserID}</h1> <div class="chart" style="width: 700px; height: 400px;"></div>`;
Note: ReplacestrUserID
,table
with the actual table name and column names in your database, replace$username
,$password
,$dbname
with your actual database credentials,$height
and$width
with the desired height and width of the chart.