【发布时间】:2019-07-29 23:40:38
【问题描述】:
我有 1000 个值,没有特定的顺序,但我想将它们格式化为正态分布,以便使用 google-charts 在直方图上绘制。
我已经尝试使用 d3.js,并且仅根据一些示例就可以使用它,但是它看起来非常丑陋,而且我没有足够的时间来学习 d3 以获得我想要的结果。谷歌图表视觉格式很棒。
问题是 google-charts 需要一种格式的数据,其中每个值都有一个名称和标题。所以当我把它整理成这样:
'dsSample1': [
['price', 'number'],
['price', 11386.057139142767],
['price', 27659.397260273952],
['price', 44159.39726027395],
...
来自
'dsSample2': [
11386.057139142767,
27659.397260273952,
44159.39726027395,
28026.04112639835,
...
谷歌图表有效,但我得到以下信息:
这与我在 d3:https://jsfiddle.net/0jtrq17x/1/ 中的工作非常接近。它有效,但非常丑陋。
我已经设法使用一些 d3 代码将数组数据排列到 bin 中,但它与 google-charts 不兼容,我不知道如何使其兼容,也不知道如何格式化数据所以它与谷歌图表直方图配合得很好
这段代码
var values = this.hypo.dsSample2.map(x => {
return x + 128608.42487322348
})
var max = d3.max(values)
var min = d3.min(values)
var x = d3.scale.linear()
.domain([min, max])
.range([0, 800]);
var histGenerator = d3.layout.histogram()
.bins(x.ticks(100))
(values)
this.data1 = histGenerator
返回此数组转换
我的问题是我不知道如何处理我的数据数组,所以我可以在 google-charts 中得到类似的东西:
【问题讨论】:
标签: javascript d3.js charts google-visualization histogram