diff --git a/client/src/App.js b/client/src/App.js
index a973364..205ccc4 100644
--- a/client/src/App.js
+++ b/client/src/App.js
@@ -86,7 +86,20 @@ function useSensor(measurement, name, end, duration) {
const isDST = end.tz('America/Edmonton').isDST();
const tickFormatter = (timeStr) => memoConvertTZ(isDST, timeStr, duration.format);
- return [data, loading, tickFormatter];
+ let ticks = undefined;
+ if (Array.isArray(data)) {
+ ticks = [];
+ let lastLabel = null;
+ data.forEach(d => {
+ const lbl = memoConvertTZ(isDST, d.time, duration.format);
+ if (lbl !== lastLabel) {
+ ticks.push(d.time);
+ lastLabel = lbl;
+ }
+ });
+ }
+
+ return [data, loading, tickFormatter, ticks];
};
function ChartContainer({name, data, lastFormatter, loading, children, topMargin}) {
@@ -132,7 +145,7 @@ function ChartContainer({name, data, lastFormatter, loading, children, topMargin
function SolarPower({end, duration}) {
- const [data, loading, tickFormatter] = useSensor('solar', 'Solar', end, duration);
+ const [data, loading, tickFormatter, ticks] = useSensor('solar', 'Solar', end, duration);
return (
{showHumidity &&
memoConvertTZ(isDST, timeStr, duration.format);
+ let ticks = undefined;
+ if (Array.isArray(data)) {
+ ticks = [];
+ let lastLabel = null;
+ data.forEach(d => {
+ const lbl = memoConvertTZ(isDST, d.time, duration.format);
+ if (lbl !== lastLabel) {
+ ticks.push(d.time);
+ lastLabel = lbl;
+ }
+ });
+ }
+
return (
-
+