forked from ddrilling/asb_cloud_front
Неиспользуемый компонент удалён
This commit is contained in:
parent
3ce66ab6ba
commit
565bc1e1e7
@ -1,73 +0,0 @@
|
|||||||
import moment from 'moment';
|
|
||||||
import { useEffect, useState} from 'react';
|
|
||||||
import {ChartTimeBase} from './ChartTimeBase'
|
|
||||||
|
|
||||||
export const GetRandomColor = () => "#" + Math.floor(Math.random()*16777215).toString(16)
|
|
||||||
|
|
||||||
export const CreateDataset = (lineConfig) => {
|
|
||||||
let color = lineConfig.borderColor
|
|
||||||
?? lineConfig.backgroundColor
|
|
||||||
?? lineConfig.color
|
|
||||||
?? GetRandomColor()
|
|
||||||
|
|
||||||
let datasets = {
|
|
||||||
label: lineConfig.label,
|
|
||||||
data: [],
|
|
||||||
backgroundColor: lineConfig.backgroundColor ?? color,
|
|
||||||
borderColor: lineConfig.borderColor ?? color,
|
|
||||||
borderWidth: lineConfig.borderWidth ?? 1,
|
|
||||||
borderDash: lineConfig.dash ?? [],
|
|
||||||
}
|
|
||||||
return datasets
|
|
||||||
}
|
|
||||||
|
|
||||||
const ChartOptions = {
|
|
||||||
// responsive: true,
|
|
||||||
// plugins:{
|
|
||||||
// legend:{
|
|
||||||
// display: false,
|
|
||||||
// maxHeight: 64,
|
|
||||||
// fullSize: true,
|
|
||||||
// position: 'chartArea',
|
|
||||||
// align: 'start',
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
|
|
||||||
export const ChartTimeArchive = ({lines, data, yDisplay, rangeDate, chartRatio}) => {
|
|
||||||
const [dataParams, setDataParams] = useState({data:{datasets: []}})
|
|
||||||
|
|
||||||
useEffect(() => {
|
|
||||||
if ((!lines)
|
|
||||||
|| (!data))
|
|
||||||
return
|
|
||||||
|
|
||||||
let newDatasets = lines.map(lineCfg => {
|
|
||||||
let dataset = CreateDataset(lineCfg)
|
|
||||||
dataset.data = data.map(dataItem => {
|
|
||||||
return {
|
|
||||||
x: dataItem[lineCfg.xAccessorName],
|
|
||||||
y: new Date(dataItem[lineCfg.yAccessorName??'date'])
|
|
||||||
}
|
|
||||||
})
|
|
||||||
return dataset
|
|
||||||
})
|
|
||||||
|
|
||||||
let interval = rangeDate ? (rangeDate[1] - rangeDate[0]) / 1000 : null
|
|
||||||
let startDate = rangeDate ? rangeDate[0] : moment()
|
|
||||||
let newParams = {
|
|
||||||
yInterval: interval,
|
|
||||||
yStart: startDate,
|
|
||||||
displayLabels: yDisplay??false,
|
|
||||||
data: {
|
|
||||||
datasets: newDatasets
|
|
||||||
}
|
|
||||||
}
|
|
||||||
setDataParams(newParams)
|
|
||||||
}, [data, lines, yDisplay, rangeDate, chartRatio])
|
|
||||||
|
|
||||||
const opt = ChartOptions
|
|
||||||
opt.aspectRatio = chartRatio
|
|
||||||
|
|
||||||
return (<ChartTimeBase dataParams={dataParams} options={opt}/>)
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user