javascript - 如何根据d3中的第三列给出颜色?
问题描述
我是 D3 的新手,并且遵循了一些教程,并在下面看到了分组散点图。 https://www.d3-graph-gallery.com/graph/scatter_grouped.html
在这一点上,我看到他们给予
// Color scale: give me a specie name, I return a color
var color = d3.scaleOrdinal()
.domain(["setosa", "versicolor", "virginica" ])
.range([ "#440154ff", "#21908dff", "#fde725ff"])
他们根据物种分配颜色。而不是这个,我将年份作为一个从 1982 年到 2019 年的类别。
一种方法是给出从 1982 年到 2019 年的整个域和范围作为每种颜色。但我不认为这是一个好方法。有没有什么方法可以为每年分配一种独特的颜色,而无需域中的整个范围。感谢任何帮助。
解决方案
var color = function(d) { return d.year;},
color =d3.scaleOrdinal(d3.schemeCategory10);
对于 d3 v4,这可以解决问题。
推荐阅读
- ios - 后台状态下的 URLSession '网络连接丢失'
- web - p2p文件共享软件如何在NAT后面连接互联网中的两个对等点
- python - 如何矢量化熊猫数据框前向列值搜索
- java - 使用 @Autowired 的构造函数调用如何工作?
- php - 如何首先使用 scandir 和使用 usort 对文件夹进行排序
- java - 如何从 Java 中的 BufferedImage 列表创建真彩色动画 GIF?
- laravel - 如何在结果需要另一个查询()的情况下进行查询()?
- java - Json解析listview自定义适配器
- java - 为什么tomcat无法运行应用程序
- html - 嵌入式视频播放器隐藏网站菜单