首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带数据的Chartist.js阵列

带数据的Chartist.js阵列
EN

Stack Overflow用户
提问于 2017-11-18 20:53:30
回答 1查看 1.7K关注 0票数 2

我正在用Chartist.js创建一个图表。我正在使用获取json数据。我对这个有意见。数组与我给出的值一起工作。但它不适用于来自json的数据。

我的代码:

代码语言:javascript
复制
var TotalBrowser = [];
var BrowserSeries = [];

var oxyn = {
    queryAnalytics: function() {
        var id = '164690638';
        var expressions = [{
            expression: 'ga:hits'
        }];
        var dimension = [{
            name: 'ga:browser'
        }];

        oxyn.getReportQuery(id, '7daysago', 'today', expressions, dimension).then(function(response) {
            var formattedJson = JSON.stringify(response.result, null, 2);
            var data = JSON.parse(formattedJson);
            var i = 0;
            BrowserTotal = data.reports[0].data.totals[0].values[0];
            jQuery(data.reports[0].data.rows).each(function() {
                if (i <= 3) {
                    jQuery('#Browsers').append(browsericon[i] + this.dimensions[0]);
                    var percent = (parseInt(this.metrics[0].values[0]) / parseInt(BrowserTotal)) * 100;
                    BrowserSeries.push(Math.round(percent));
                    TotalBrowser.push(Math.round(percent) + '%');
                    i++;
                }
            });
            demo.initChartist();

        });
    }
}

var demo = {
    initChartist: function() {

        var dataPreferences = {
            series: [
                [BrowserSeries.join()]
            ]
        };

        var optionsPreferences = {
            donut: true,
            donutWidth: 40,
            startAngle: 0,
            total: 100,
            showLabel: false,
            axisX: {
                showGrid: false
            }
        };

        Chartist.Pie('#chartPreferences', dataPreferences, optionsPreferences);


        Chartist.Pie('#chartPreferences', {
            labels: [TotalBrowser.join()],
            series: [BrowserSeries.join()]
        });

        console.log(BrowserSeries.join());
    }
};

它不是那样工作的。但是如果我像这样写代码,它就能工作了。

代码语言:javascript
复制
Chartist.Pie('#chartPreferences', {
   labels: [TotalBrowser.join()],
   series: [30, 70]
 });

而且这起作用了。

代码语言:javascript
复制
Chartist.Pie('#chartPreferences', {
   labels: [TotalBrowser[0], TotalBrowser[1]],
   series: [BrowserSeries[0], BrowserSeries[1]]
});

控制台输出

console.log(BrowserSeries.join()); 30,70

JSON源

这是个很愚蠢的问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-19 00:13:14

是的,我终于解决了。我给那些有同样问题的人写信。

代码语言:javascript
复制
Chartist.Pie('#chartPreferences', {
   labels: TotalBrowser,
   series: BrowserSeries
});

我们需要删除 字符。我们还必须将数据直接发送到数组。

还有:https://github.com/gionkunz/chartist-js/issues/738

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47370933

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档