帆软报表用js自定义在折线图折线95%处的位置显示样本点
时间: 2024-03-27 20:35:30 浏览: 21
要在帆软报表中使用 JavaScript 自定义代码,在折线图中显示样本点,可以按照以下步骤进行操作:
1. 打开需要添加样本点的报表,在折线图上右键单击,选择“属性”。
2. 在“属性”窗口中,选择“高级”选项卡,在“自定义JS代码”中输入以下代码:
```
function onRenderComplete() {
var chartObj = chartViewer.getChartObject();
var dataset = chartObj.getDataSetByIndex(0);
var dataCount = dataset.getDataCount();
var valueAxis = chartObj.yAxis(0);
var scale = valueAxis.getScaleObject();
var topValue = scale.getTopValue();
var bottomValue = scale.getBottomValue();
var range = topValue - bottomValue;
var thresholdValue = bottomValue + range * 0.95;
var series = chartObj.getSeriesByIndex(0);
var points = series.getPoints();
for (var i = 0; i < dataCount; i++) {
var value = dataset.getValue(i, 0);
if (value >= thresholdValue) {
var point = points[i];
var pointX = point.getX();
var pointY = point.getY();
var pointShape = point.getShape();
var pointColor = point.getFillColor();
var pointSize = pointSize;
var pointLabel = new cfx.ChartLabel();
pointLabel.setText(value.toFixed(2));
pointLabel.setDock(cfx.DockArea.Top);
pointLabel.setVisible(true);
pointLabel.setOffsetX(6);
pointLabel.setOffsetY(-16);
pointShape.setFillColor("#ffffff");
pointShape.setStrokeColor(pointColor);
pointShape.setStrokeThickness(2);
pointShape.setSize(pointSize + 6);
point.setShape(pointShape);
point.addLabel(pointLabel);
}
}
}
```
3. 保存报表并预览即可看到折线图上样本点的位置。
在上述代码中,我们通过获取折线图中的数据集和数据点,计算出折线图 Y 轴的上下限,然后根据这些数据来确定出现样本点的位置。然后我们对这些点进行了样式和标签的设置,以便更好地显示样本点。