我在datamaps updateCloropleth函数中遇到了奇怪的问题。我按照这个例子:

https://github.com/markmarkoh/datamaps/releases/tag/v0.2.2

这是我的问题的一个例子。当我这样做时:

map.updateChoropleth({
    "AFG": colorx
});


颜色将更新。但是,当我这样做时:

var countryx = "AFG";
map.updateChoropleth({
    countryx: colorx
});


没用

我检查过countryx == "AFG"返回true,所以它的值肯定是相同的。可以很好地传递变量colorx,但是将变量countryx作为键传递似乎会破坏函数。

任何想法如何或为什么会这样?

最佳答案

您可以尝试以下方法:

var colorx = 100;
var countryx = "AFG";
var countryColor = {};

countryColor["AFG"] = colorx;

map.updateChoropleth(countryColor);


请参见thread-基本上,您的问题源于以下两个事实相同:

var obj = {"countryx": colorx}
var obj = {countryx: colorx}

10-06 08:13