javascript - 无法使用ajax加载c3图形数据

标签 javascript jquery ajax graph c3.js

嗨,我想使用 c3 图表加载具有日期时间范围的动态数据 这是我的代码:

$.ajax({
    [...]
    success: function(data) {
        chart.load({
            columns: data,
            unload: chart.columns,
        });
    }
});

Ajax 响应是:

[['Friday', 1],['Friday', 3],['Sunday', 1],['Saturday', 2],['Friday', 3],['Friday', 3],['Friday', 5],['Friday', 3],['Monday', 1],['Friday', 1],['Tuesday', 1]]

成功后,我的图表上没有看到任何内容。甚至我也评论过“卸载” 但还是一样。如果我静态放置,该功能可以正常工作。请帮助我

最佳答案

你用错了。它不是导出 chart 函数,而是导出 c3 函数。下面将生成一个图表(看起来不太好,但我不知道你在期待什么)。

您还错过了定义输出 div,因此我添加了 #chart

var data = [['Friday', 1],['Friday', 3],['Sunday', 1],['Saturday', 2],['Friday', 3],['Friday', 3],['Friday', 5],['Friday', 3],['Monday', 1],['Friday', 1],['Tuesday', 1]];

var data2 = [['Friday', 3],['Friday', 10],['Sunday', 50],['Saturday', 20],['Friday', 15],['Friday', 10],['Friday', 6],['Friday', 8],['Monday', 5],['Friday', 20],['Tuesday', 13]];

var chart = c3.generate({
    bindto: '#chart',
    data: {
      columns: data
    }
});

setTimeout(function() {
    chart.load({
        columns: data2 
    });
}, 2000)
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.17/d3.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/c3/0.4.11/c3.js"></script>

<div id="chart"></div>

关于javascript - 无法使用ajax加载c3图形数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37548594/

相关文章:

javascript - 将字符串格式化为特定格式

javascript - 使用外部数据输入更新数组中的对象时提高性能

javascript - jQuery 自定义内容滚动器不适用于 Bootstrap 表响应

javascript - jqplot 完全重绘图形

javascript - click 事件不适用于超链接 ajax 数据

javascript - 使用 Tablesorter/jquery 表格行悬停突出显示?

javascript - 使用 jQuery 设置隐藏输入的值

javascript - 如何从 HTML 表单获取数据发布进度

javascript - 通过 AJAX 单击按钮更新表单值

javascript - 请求的资源上不存在 Access-Control-Allow-Origin header