highcharts - 未显示系列最后一点的 Highcharts 数据标签
问题描述
我想在折线图中系列的最后一点显示数据标签并添加以下代码:
dataLabels: {
enabled: true,
formatter: function() {
if (this.x == this.series.data[this.series.data.length - 1].x) {
return 'Test';
} else {
return null;
}
}
},
不幸的是,没有显示数据标签。见小提琴
解决方案
您的系列包含 63 个点,但其中只有 23 个已定义y
属性并显示。您需要过滤可见点并获取它们中的最后一个,例如:
dataLabels: {
enabled: true,
formatter: function() {
var visiblePoints = this.series.points.filter(p => typeof p.y === 'number');
if (this.x == visiblePoints[visiblePoints.length - 1].x) {
return 'Test';
} else {
return null;
}
}
}
推荐阅读
- c# - 如果一个连接返回到池中,而一个线程被阻塞等待创建新连接,是否会使用返回的连接?
- android - 如何在我的 Android 应用程序中接收和拨打 MS Teams 电话会议
- oracle - ORA-02289: 序列不存在
- javascript - 在不使用黑客键盘的情况下在 Android 中调用浏览器的键盘加载 - JavaScript
- c# - 在集合之间查找唯一对象
- ruby-on-rails - Ruby on Rails 未定义方法“referrals_path”
- reactjs - 单击叠加层时,材质 UI 对话框未关闭
- ibm-integration-bus - 使用 IIB 中的 HTTP 请求节点将文件作为附件发送
- ruby - 这段 Ruby 代码有什么问题?为什么地图代码块后数组为空?
- linux - BASH,if 语句未按预期运行