我尝试了this sample code,但是无法读取csv文件。
我将csv文件放在确切的位置。 (与index.html目录相同)! 不适用于csv文件(具有数组数据),它可以完美工作。 语法规则是否已更改或代码中是否有错误? 如果有人可以检查此代码是否有效或可以帮助我,将非常感谢。
var chart = c3.generate({
data: {
url: '/data/c3_test.csv',
type: 'line'
}
});
setTimeout(function () {
chart.load({
url: '/data/c3_test2.csv'
});
}, 1000);
setTimeout(function () {
chart.load({
columns: [
['data1', 130, 120, 150, 140, 160, 150],
['data4', 30, 20, 50, 40, 60, 50],
],
unload: ['data2', 'data3'],
});
}, 2000);
setTimeout(function () {
chart.load({
rows: [
['data2', 'data3'],
[120, 300],
[160, 240],
[200, 290],
[160, 230],
[130, 300],
[220, 320],
],
unload: 'data4',
});
}, 3000);
答案 0 :(得分:0)
也许您正在使用file://
或C:/
加载模型,由于错误消息不是http://
,因此对错误消息保持正确。
您可以确认这是您在浏览器控制台上看到的错误消息。但是我按照您的要求做了,并且得到了“ Fetch API无法加载file:/// C:/data.csv。URL方案必须为“ http”或“ https”才能进行CORS请求。“ 并且csv文件也无法加载。
因此,您可以在本地PC上安装Web服务器,也可以将模型上传到其他地方,然后将网址更改为http://somehost/path/to/file
或者,如果您使用的是Chrome,则可以尝试使用--allow-file-access-from-files从终端启动它
浏览器不允许使用ajax调用的file:// URL(出于安全原因)。您需要通过Web服务器加载网页,并使用http://或https://而不是file://
通过该Web服务器发出ajax请求