dc.js - 箱线图数据点异常值的对齐方式和颜色
解决方案
您可以使用
.dataWidthPortion(0)
根本不分散要点。文档。
如果没有访问器,则有关更改任何内容的颜色或样式的一般建议:
- 在图表选择器 wiki中查找图表,或者如果它不存在,请在开发人员工具中检查您要更改的项目并找出该项目具有的 SVG 标记和 CSS 类。在这种情况下,它是
circle.data
添加一个
pretransition
处理程序,它选择您想要的项目并更改它们:var cc = d3.scaleOrdinal().range(d3.schemeDark2); bp02.on('pretransition', chart => { chart.selectAll('circle.data').attr('fill', function(d) { const boxDatum = d3.select(this.parentNode).datum(); return cc(boxDatum.value[d]); }) });
在这种情况下,我们正在创建一个序数比例以将可用数据映射到配色方案中的颜色。
有趣的问题是,哪些数据要绑定到点的颜色,以及如何获取这些数据。
箱线图的数据由一组键/值对组成,其中每个值都是一个 Y 值。当绘制箱线图时,它将每个circle.dot
元素绑定到数组中数据的索引。
所以我们需要得到绑定到盒子的数组。幸运的是d3.select(this.parentNode).datum()
会给我们盒子的键/值对。
对于这个例子,我们根据 Y 值对颜色进行编码,我们通过查看内部来获得boxDatum.value
。您没有指定您希望点如何着色,但这会显示可用的数据。
推荐阅读
- php - 如何在 HTML 中显示在从 php 执行的 BASH 脚本中创建的 txt?
- javascript - 在 Firebase 云函数中复制存储文件
- c++ - 使用“->”运算符时保留访问权限
- python - 将“m”添加到 pandas 字符串列会产生错误“ufunc 'isnat' is only defined for datetime and timedelta”。
- postgresql - Aggregating distinct values from JSONB arrays combined with SQL group by
- ef-core-5.0 - 如何从 EF Core 5 DBContext 事务对象获取 SqlTransaction 对象,因为我需要将其传递给 SqlBulkCopy 操作
- c# - 在 .NET 5 C# 中等待所有方法调用完成的异步非轮询处理机制
- cloudflare - Cloudflare - 将 DomainA 重定向到 DomainB SSL 问题
- javascript - 错误:Node Sass 版本 5.0.0 与 ^4.0.0 不兼容(使用此命令后:“npm install node-sass@4.14.1”仍然抛出相同的错误
- javascript - 如何自定义传单标签?当我改变不透明度时,它也会改变字体的不透明度