以下是可以工作的硬编码代码(只有两个状态):
var myAreas = [];
myAreas = {
"VA": {
value: "6.3",
tooltip: { content: "Virginia freq : 7.2" }
},
"NC": {
value: "5.7",
tooltip: { content: "North Carolina freq : 6.7" }
}
};
$(".mapcontainer").mapael({
map: {
name: "usa_states"
},
areas: myAreas
});我正在尝试使用HTML表中的结果,但似乎无法将其转换为可接受的格式。这就是我一直在尝试的:
var data = [];
var rows = $('#tblStateFreq').find('tr');
for (var i = 0; i < rows.length; i++) {
var row = $(rows[i]);
var state = row.find('td').eq(0).text();
var freq = row.find('td').eq(1).text();
data.push({
state,
value: freq,
tooltip: state + " " + freq;
});
}
$(".mapcontainer").mapael({
map: {
name: "usa_states"
},
areas: data
});数据数组包含具有正确数据的所有状态,但其格式如下:
0:状态:"AK“工具提示:{content:"AK 7.0"}值:"7.0”
对于折线图和柱状图,我在flot中成功地使用了这种表数据方法,但是映射似乎比较棘手。有人能帮上忙吗。谢谢
发布于 2019-01-24 06:11:12
我在这里找到了我要找的东西:Is it possible to add dynamically named properties to JavaScript object?
尽管硬编码数据myAreas[]最初被定义为数组,但它被重新定义为对象,添加了myAreas{...}和属性(状态)。
在我的示例中,我试图使用push将区域添加到我的数组data[]中,但这并不是mapeal插件想要的区域参数。
https://stackoverflow.com/questions/54000309
复制相似问题