- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个 xrange highchart
,其中有一个系列,其中一些数据点具有重叠值。当鼠标指针悬停在特定数据点上时,我需要获取重叠数据点的值一次。我尝试使用系列 mouseover
事件,但从中我只能获得重叠数据点之一。下面是我的代码,
Highcharts.chart('container', {
chart: {
type: 'xrange',
height: 100,
marginLeft: 12,
marginRight: 12,
backgroundColor: 'transparent'
},
plotOptions: {
series: {
point: {
events: {
mouseOver: (ev) => {
console.log(ev);
}
}
}
}
},
credits: {
enabled: false
},
title: {
text: ''
},
tooltip: {
shared: true
},
xAxis: {
visible: true,
tickLength: 0,
lineWidth: 2,
lineColor: '#eee',
labels: {
enabled: false
},
max: Date.UTC(2019, 6, 13)
},
yAxis: {
visible: false
},
legend: {
enabled: false
},
series: [{
name: '',
borderRadius: 0,
pointPadding: 0,
borderWidth: 4,
groupPadding: 0,
data: [{
x: Date.UTC(2019, 3, 21),
x2: Date.UTC(2019, 6, 2),
y: 0,
color: 'transparent',
borderColor: 'rgba(230, 141, 11, 0.5)'
}, {
x: Date.UTC(2019, 5, 26),
x2: Date.UTC(2019, 6, 5),
y: 0,
color: 'transparent',
borderColor: 'rgba(228, 53, 70, 0.5)'
}, {
x: Date.UTC(2019, 5, 8),
x2: Date.UTC(2019, 11, 10),
y: 0,
color: 'transparent',
borderColor: 'rgba(40, 167, 69, 0.5)'
}
],
dataLabels: {
enabled: false
}
}]
});
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/xrange.js"></script>
<div id="container"></div>
我什至尝试了工具提示的 shared: true
选项,但没有用。是否有可能在 xrange 图表中实现这一点?提前致谢!
最佳答案
您可以启用 followPointer
选项,并在 positioner
函数中将光标坐标与点坐标进行比较,以在工具提示标签中显示所需的值:
tooltip: {
followPointer: true,
positioner: function(plotX, plotY, pos) {
var points = this.chart.series[0].points,
str = '';
points.forEach(function(p) {
if (
p.shapeArgs.x <= pos.plotX &&
p.shapeArgs.x + p.shapeArgs.width >= pos.plotX
) {
str += '<span style="color:' + p.borderColor +
'">' + p.x + ' - ' + p.x2 + '</span><br>';
}
});
this.label.attr({
text: str
});
return this.getPosition(plotX, plotY, pos)
}
}
现场演示: http://jsfiddle.net/BlackLabel/n6w1vLbd/
API 引用:
关于javascript - highchart xrange 中的重叠数据点不显示工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56577411/
在下面的代码片段中, if evaluation_data: n_data = len(evaluation_data) n = len(training_data) eval
我正在从传感器捕获数据,并将其输出到 .dat 文件中。我想使用 gnuplot 将此信息导出到绘图中,并使其完全自主地仅显示最近 7 天收集的数据(没有对日期进行硬编码,应使用 time() 函数根
我尝试绘制一个包含 YEAR-MONTH-DAY HOUR 格式的时间戳的文件和一个由制表符分隔的正整数。 GNUPlot 似乎无法提取给定文件的开始结束时间告诉我 Warning: empty x
这个问题已经有答案了: Why doesn't modifying the iteration variable affect subsequent iterations? (10 个回答) 已关闭
片段 xi = xrange(10) zip(xi,xi) 和 xi = iter(range(10)) zip(xi,xi) 行为不同。我希望得到 [(0, 1), (2, 3), (4
我想创建一个 Highcharts xrange 图表,其中仅显示适合框/范围的数据标签。这可能吗? 目前,标签不会重叠,但在不适合时会显示在框外。 我尝试使用 xrange.dataLabels 选
我想创建一个 xrange highcharts。据此demo ,他们使用 UTC 格式创建日期,但我从 MySQL 的 json 输出是这样的 [{"y":1,"x":"2018-01-19 08:
我不确定标题的措辞是否正确,但我想做的是找到 xrange() 传递的值的总和。 理想情况下,它看起来像这样:(注意,这不是工作代码) mofthree = xrange(2, 1000, 3) mo
在 Python 中,迭代时使用 xrange() 而不是 range 更节省内存。 我遇到的问题是我想遍历一个大列表——因此我需要使用 xrange() 然后我想检查任意元素。 使用 range()
我在尝试在网络应用程序中显示 Xrange 图表时遇到问题。 一切正常,直到我尝试缩放图表并且数据输入的极端之一落在视口(viewport)之外,从那时起图形表示就不再显示。 chart: {
我想像下面这样显示我的图表。我为此使用了“xrange”类型的 Highcharts 。我正在尝试为每个数据点显示一个事件,其中将有一个开始数据和一个结束日期。 到目前为止,我能够使用 xrange
我有一个 xrange highchart,其中有一个系列,其中一些数据点具有重叠值。当鼠标指针悬停在特定数据点上时,我需要获取重叠数据点的值一次。我尝试使用系列 mouseover 事件,但从中我只
我正在尝试使用 ctypes 从内部 python 结构中提取数据。也就是说,我正在尝试读取 xrange 中的 4 个字段: typedef struct { PyObject_HEAD
为什么 zip(*[xrange(5)]*2) 给出 [(0, 0), (1, 1), (2, 2), (3, 3), (4, 4)] 但是 zip(*[iter(xrange(5))]*2) 给出
我是python和django的新手。我的django在我的机器上正常运行,直到安装django-haystack。我直接从github下载django-haystack.zip,并在haystack
我正在使用此 jsfiddle 创建一个 xrange Highcharts 作为引用。 如何将值传递给列表中的“x”、“x2”、“y”值? 对于普通的柱形图/条形图,我会执行以下操作,效果很好。 v
操作 myInput 字符串以获得 myOutput 字符串的更快方法是什么? myInput = "1,3-5,7" myOutput = "1,3,4,5,7" 最佳答案 re.sub(
这个问题在这里已经有了答案: How do I concatenate two lists in Python? (31 个答案) 关闭 6 年前。 我有这个正在工作的数组: urls = [
我编写了以下代码来在文本文件中定义 4 行的 block ,如果 block 的第 2 行仅由一种字符组成,则输出该 block 。假设(并且之前已验证)第 2 行始终由 36 个字符的字符串组成。
出于好奇,我用 Python 编写了 3 个测试并使用 timeit 将它们超时: import timeit # simple range based on generator def my_ran
我是一名优秀的程序员,十分优秀!