我正在使用LightningChartJS创建带条形图。我有正值和负值的数据。是否有任何可用的属性可以根据我想看到的内容隐藏负条形或正条形?
注意:我显然可以写一些基本的逻辑来实现这个功能,但我正在寻找一些内置的功能。
const rectangles = chart.addRectangleSeries()
const addValues = (entries) => {
for (const entry of entries) {
bars.push(add(entry))
}
}
const add = (entry) => {
// Create rect dimentions.
const rectDimensions = {
x: x - figureThickness,
y: 0,
width: figureThickness,
height: entry.value
}
// Add rect to the series.
x += figureThickness + figureGap
// Return data-structure with both original 'entry' and the rectangle figure that represents it.
return {
entry,
rect
}
}
chart.addValues([
{ category: '', value: 20 },
{ category: '', value: 40 },
{ category: '', value: -23 },
{ category: '', value: -29 },
{ category: '', value: 15 }
])
要隐藏基于值的序列/数字,必须在应用程序端实现此逻辑。
为此,您有两种选择:
-
将条形图分离为两个矩形系列,一个具有正值,另一个具有负值。
-
像现在一样,只使用一个RectangleSeries,但要为每个图形单独设置样式。当您使用RectangleSeries.add((.添加矩形时,您会收到对该图形的引用
在任何一种情况下,您都必须隐藏不想看到的系列/图形,并恢复您想看到的内容。RectangleSeries和图都有dispose((和restore((方法。