Skip to content
This repository has been archived by the owner on Jan 23, 2025. It is now read-only.

Commit

Permalink
fix: enable multiple bar charts
Browse files Browse the repository at this point in the history
Signed-off-by: 1998-felix <felix.gateru@gmail.com>
  • Loading branch information
felixgateru committed Mar 13, 2024
1 parent b7200d9 commit 90fb2ea
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 18 deletions.
36 changes: 19 additions & 17 deletions ui/web/static/js/charts.js
Original file line number Diff line number Diff line change
Expand Up @@ -245,14 +245,15 @@ class TimeSeriesBarChart extends Echart {
channel: '${this.chartData.channel}',
publisher: '${this.chartData.thing}',
name: '${this.chartData.valueName}',
from: ${this.chartData.startTime / 1000},
to: ${this.chartData.stopTime / 1000},
from: ${this.chartData.startTime},
to: ${this.chartData.stopTime},
aggregation: '${this.chartData.aggregationType}',
limit: 100,
interval : '${this.chartData.updateInterval}'
}
getData(barChart, chartData);
async function fetchDataAndUpdate() {
async function getData(barChart, chartData) {
try {
const apiEndpoint = "/data?channel=" + chartData.channel +
"&publisher=" + chartData.publisher +
Expand All @@ -264,33 +265,34 @@ class TimeSeriesBarChart extends Echart {
"&interval=" + chartData.interval;
const response = await fetch(apiEndpoint);
if (!response.ok) {
throw new Error("HTTP request failed with status: " + response.status);
}
const data = await response.json();
console.log(data);
const xAxisArray = [];
const yAxisArray = [];
data.messages.forEach((message) => {
xAxisArray.push(new Date(message.time).toLocaleTimeString());
yAxisArray.push(message.value);
});
updateChart(xAxisArray, yAxisArray);
if (data.message != undefined && data.messages.length > 0) {
data.messages.forEach((message) => {
xAxisArray.push(new Date(message.time).toLocaleTimeString());
yAxisArray.push(message.value);
});
}
updateChart(barChart,xAxisArray, yAxisArray);
} catch (error) {
console.error("Error fetching data:", error);
}
setTimeout(function () {
getData(barChart, chartData);
}, 20000);
}
}
function updateChart(xAxisArray, yAxisArray) {
function updateChart(barChart, xAxisArray, yAxisArray) {
const option = barChart.getOption();
option.series[0].data = yAxisArray;
option.xAxis[0].data = xAxisArray;
option.series[0].data = yAxisArray.reverse();
option.xAxis[0].data = xAxisArray.reverse();
barChart.setOption(option);
}
fetchDataAndUpdate();
`;
}
}
Expand Down
2 changes: 1 addition & 1 deletion ui/web/templates/charts/barchartmodal.html
Original file line number Diff line number Diff line change
Expand Up @@ -228,7 +228,7 @@ <h5 class="modal-title" id="barChartModalLabel">Time Series Bar Chart</h5>
for (var pair of formData.entries()) {
if (pair[0] === "startTime" || pair[0] === "stopTime") {
const inputDate = new Date(pair[1]);
chartData[pair[0]] = inputDate.getTime();
chartData[pair[0]] = inputDate.getTime() * 1e6;
} else {
chartData[pair[0]] = pair[1];
}
Expand Down

0 comments on commit 90fb2ea

Please sign in to comment.