gpt4 book ai didi

javascript - 在 Highstock 中加载 JSON 时出现问题

转载 作者:行者123 更新时间:2023-12-03 10:42:11 26 4
gpt4 key购买 nike

我已获取 Highstock 盘中 Apple 股票价格示例 htm 文件并将其上传到我的服务器:http://54.175.177.142/ef.html

效果很好。这与 Highstock 示例下载中的内容相同,只是我已将 .js 路径更改为托管在 code.highcharts.com 域(而不是示例文件夹中)的路径。

现在我想做的是更改 highcharts.com 上托管的 .json 路径:

$.getJSON('http://www.highcharts.com/samples/data/jsonp.php?filename=new-    intraday.json&callback=?', function (data) { 

到我自己的服务器:$.getJSON('http://54.175.177.142/appleData.json', function (data) {

从这里我将把 JSON 更改为我自己的数据,但作为第一步,我只想重做 highstock 示例。

问题是,当我对 $.getJSON 调用进行此更改时,我得到一个空白的白页,我什至没有得到任何 javascript 错误。此实现可以在以下位置查看: http://54.175.177.142/intradayTest.htm

我尝试加载的 JSON 几乎与 the original 相同,除了我最近尝试让它工作之外,我已经将最顶部的“回调”删除为“?”因为这就是将 JSONP 参数添加到示例中的链接(&callback=?)时加载的方式。我认为我不需要 JSONP 方法,因为我在自己的服务器上托管 JSON,与 html 文件相同的域。我还尝试使用前导“回调”和 JSONP 参数在不同的服务器上精确复制 JSON,但无济于事。

我的 JSON 在这里: http://54.175.177.142/appledata.json

我认为 JSON 本身有问题。为了做到这一点,我只是在浏览器中对原始文件进行了“全选”,将其粘贴到 Notepad++ 中并将其另存为 .json。然后我将其复制到我的 EC2 上。

对这里发生的事情有什么想法吗?

如果您不想访问链接,这里是 html 代码:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Highstock Example</title>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<style type="text/css">
${demo.css}
</style>
<script type="text/javascript">
$(function () {
//'http://www.highcharts.com/samples/data/jsonp.php?filename=new-intraday.json&callback=?'
//'http://52.0.68.76/appleData.json'
$.getJSON('http://54.175.177.142/appleData.json', function (data) {

// create the chart
$('#container').highcharts('StockChart', {


title: {
text: 'AAPL stock price by minute'
},

xAxis: {
gapGridLineWidth: 0
},

rangeSelector : {
buttons : [{
type : 'hour',
count : 1,
text : '1h'
}, {
type : 'day',
count : 1,
text : '1D'
}, {
type : 'all',
count : 1,
text : 'All'
}],
selected : 1,
inputEnabled : false
},

series : [{
name : 'AAPL',
type: 'area',
data : data,
gapSize: 5,
tooltip: {
valueDecimals: 2
},
fillColor : {
linearGradient : {
x1: 0,
y1: 0,
x2: 0,
y2: 1
},
stops : [
[0, Highcharts.getOptions().colors[0]],
[1, Highcharts.Color(Highcharts.getOptions().colors[0]).setOpacity(0).get('rgba')]
]
},
threshold: null
}]
});
});
});

</script>
</head>
<body>
<div id="container" style="height: 400px; min-width: 310px"></div>

<script src="http://code.highcharts.com/stock/highstock.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>
</body>
</html>

最佳答案

好的。我认为这个问题是删除的候选者。我已经解决了我的问题......我正在打开 appleData.json...但我正在将文件上传为 appledata.json,即带有小写“d”。

这两个json文件之间的区别是我没有意识到callback();包裹在 JSON 中的是一个函数。我所需要做的就是删除这个函数并将其保留为:

[
[1317888000000,372.5101,375,372.2,372.52],
.
.
.
[1318607940000,421.94,422,421.8241,422]
]

多么愚蠢的错误!但这就是菜鸟的做事方式。

关于javascript - 在 Highstock 中加载 JSON 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28724813/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com