C3 缩放类似于 D3
c3 scaling similar to d3?
我用c3制作了一些图表,它的易用性给我留下了深刻的印象。但是,我不确定是否可以像在 d3 中那样进行 3 值缩放,如下所示:
var yScale= d3.scale.linear()
.domain([0,100,500])
.range([高度, 高度 - 20, 0]);
因此,我可以使我的图形主要针对低于 100 的值进行缩放,因为这是大多数值的位置,并且我不希望条形缩放因超过 100 的值而扭曲。
是否可以在 c3 中做这样的事情? 还是我需要使用 d3 来获得这种缩放?
谢谢
您可以使用比例来映射值,并使用 scale.invert 来获取所有标签。例如。。。
var myScale = d3.scale.linear().domain([0, 5, 50]).range([0, 40, 50]);
var chart = c3.generate({
data: {
columns: [
['A', 3, 2, 1, 4, 1.5, 42.5].map(function (value, index) {
return index ? myScale(value) : value;
})],
type: 'spline'
},
tooltip: {
format: {
value: function (value) {
return parseFloat(myScale.invert(value).toFixed(5));
}
}
},
axis: {
y: {
tick: {
format: function (d) {
return myScale.invert(d)
}
}
}
}
});
parseFloat 和 toFixed 是为了摆脱来回转换时的精度问题。
小提琴 - http://jsfiddle.net/rujx39fw/
在 https://github.com/masayuki0812/c3/issues/252 的c3 github上也有类似的问题。它以类似的解决方法关闭(也有一个链接的问题 - 通过引用此解决方法关闭)
如果您喜欢冒险,您可能在 https://github.com/masayuki0812/c3/issues/971 还有一个相关的问题,它提出了另一种选择。
相关文章:
- Javascript日期格式类似于ISO,但本地
- toBoolean方法类似于toString
- 州和城市选择框类似于国家细分页面
- 通过传递图像的URL通过javascript读取/处理图像-类似于PHP中的file_get_contents
- 在BootStrap菜单栏中为所选项目设置背景,类似于BootStrap中的父导航选项
- 检测演示者工具的事件,类似于onmousedown
- 类似于Prism的Knockout js框架
- 创建类似于Google analytics的分析地图
- 敲除js变量设置类似于调用函数
- 如何处理javascript中的循环引用,类似于Excel提供迭代限制的方式
- 用null填充稀疏数组(类似于压缩两个数组)
- jQuery模态弹出的行为类似于确认和警报对话框
- 如何垂直淡出文本,类似于Amazon'的产品说明
- 如何在JavaScript中创建类似于something.function()的函数
- 使Dockerfile VOLUME的行为类似于docker compose volumes
- TypeScript代码类似于揭示模块模式结构
- E4X中是否有一种方法可以将基元数据类型的XMLList转换为类似于Array.join()的Array
- D3:方向图类似于树形布局,但带有反向链接
- d3是否有类似于jQuery.closest(选择器)的api
- C3 缩放类似于 D3