- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
friend 们,
我的目的是创建一个交互式图表来表示同位素表的一部分,您可以在此处查看,例如:http://www.nndc.bnl.gov/chart/ .
所以:我有一个包含约 400 个点的二维图。我想在绘制点后根据我为每个点包含的一段元数据的值对它们进行颜色编码。例如,我可能有十种红色阴影,并根据点的元数据值所在的位置进行设置。
作为测试,我尝试将它们全部涂成红色,以便正确调用函数。
这是我的问题:我已经想出如何使用这段代码(放置在图表加载事件中)来做到这一点:
for (var i = 0; i < this.series[0].data.length; i++) {
this.series[1].points[i].update({
marker: {
fillColor: "#FF0000"
}
});
但我发现使用 series.points.update() 是非常非常慢。
我尝试直接访问标记属性。我想首先从我可以写的 API 来看: 系列[i].data[j].marker.fillColor="#FF0000"
或者,根据我在 highcharts-more.js 中找到的一些代码来判断: 系列[i].data[j].markerOptions.fillColor="#FF0000"
但我现在看到API在“初始配置选项”下列出了对标记的直接调用,而在“方法和属性”下没有直接调用。
那么我的问题是:有没有一种快速的方法可以在绘制图表后设置数百个点的标记颜色?或者我可以在绘制图表之前以某种方式更快地更改它吗?
不管怎样,我的代码在这里:http://jsfiddle.net/mattmcg/bn35f/13/
很长,但相关部分在第 5-14 行。
谢谢!
最佳答案
我会直接在数据对象中为每个点指定颜色,而不是在渲染后更新。
您可以发送任何可以在 plotOptions 中指定的内容作为点对象中的参数,例如:
data:[{x:0,y:10,marker:{fillColor:'rgba(255,0,0,.5)'}},{x:10,y:25,marker:{fillColor:'rgba(255,0,0,.75)'}},{x:25,y:30,marker:{fillColor:'rgba(255,0,0,.25)'}}]
等等...
关于highcharts - 在散点图中为许多单独的标记着色的更好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18253814/
我是一名优秀的程序员,十分优秀!