微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何手动指定缺失值的颜色是d3.jsglobe.gl

如何解决如何手动指定缺失值的颜色是d3.jsglobe.gl

我必须说我对Java语言(尤其是d3)非常陌生。但是,我找不到很好的答案或教程。

我正在建立globle.gl库(https://globe.gl/example/choropleth-countries)的choropleth示例,并尝试制作自己的choropleth。但是,我没有所有国家的数据。我仍然想显示所有国家/地区,但用颜色标记我没有信息的国家/地区为灰色阴影。我正在使用带有指数变换的Inferno色标来显示不同国家的值。

const colorScale = d3.scaleSequentialPow(d3.interpolateInferno).exponent(0.2);

然后再

.polygonCapColor(feat => colorScale(getVal(feat)))

其中feat是我要绘制的国家/地区的某种类型的特征(例如人口规模)

我正在使用R清理和转换数据,然后将其另存为.geojson文件以加载到d3.js中,发现如果我将值保留为空(丢失),则javascript代码根本无法正常工作(大概是因为d3.scaleSequentialPow(d3.interpolateInferno)转换不适用于缺失值。为解决此问题,我为所有缺失指定了值0,但这意味着它们成为色标的一部分,并且与非常低的值(例如1)没有区别。或2)。所以我的问题是如何更改colorScale(),以使其值0变成灰色(不属于d3.interpolateInferno颜色的一部分)而不是黑色。

非常感谢您

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。