gpt4 book ai didi

javascript - Highmaps 中可以使用 "value"以外的其他列名吗?

转载 作者:行者123 更新时间:2023-12-03 08:59:39 25 4
gpt4 key购买 nike

我有一个包含多列的 JSON 文件,并且希望根据用户的选择将其中任何一个文件显示为相对开放的 map 。现在,我看不到任何使用“值”以外的其他列名称在 Highmaps 中显示的示例。是这样吗?或者是否有任何方法可以在 Javascript 代码中命名 Highmaps 用于显示数据的列?

也就是说,列名称是(例如)这些:

LC_Ctry_Limit,LC_Capita_Limit,LC_Ctry_Footprint,LC_Capita_Footprint,LC_Score

现在,为了能够显示 LC_Score 中的数据,我需要将该列(硬编码到 JSON 文件中)重命名为“value”。因此:

LC_Ctry_Limit,LC_Capita_Limit,LC_Ctry_Footprint,LC_Capita_Footprint,value

但是,如果用户想要显示另一列呢?我是否需要为每一列创建五个不同的 JSON 文件,并将其命名为“value”?这对我来说似乎相当不灵活。

我的 Highmaps 代码看起来像这样,基于首先加载 GeoJSON,然后加载 JSON 文件,我猜它应该与列名称说明符有关:

    series : [
{
data : data,
mapData: geojson,
joinBy: ['Country_40','Country'],
name: 'LC_Score',
borderWidth: 0.2,
COLUMN-TO-BE-USED: lorem
}]

感谢您的任何提示!

最佳答案

您可以在图表的选项/配置中设置数据之前设置value属性的值。此选择可以基于传递到函数的值,该函数将返回准备好的配置数组。

示例:http://jsfiddle.net/bmv0y8dn/

    var columnToBeUsed = 'lorem';
$('#container').highcharts('Map', {
series: [{
data: (function (columnToBeUsed) {
var len = data.length,
tab = [];
for (var i = 0; i < len; i++) {
data[i].value = data[i][columnToBeUsed];
}
return data;
})(columnToBeUsed),
...

可以使用 Series.setData 动态更改系列数据,因此您可以更改 value 的值并使用新数据调用 setData() 来实现动态数据更改。

关于javascript - Highmaps 中可以使用 "value"以外的其他列名吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32349315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com