[英]Converting Poloniex API Callback JSON into format suitable for Highcharts.Stockchart
我正在嘗試從Poloniex的公共API方法(特別是returnChartData方法)獲取JSON,以將加密貨幣的圖表歷史記錄彼此相對顯示為Highchart Stockchart圖(看起來像此處的演示 )。
這是我的JavaScript代碼的一部分,該代碼使用Poloniex returnChartData回調,從中獲取JSON並將其實現到圖表的“數據”部分中。 到目前為止,這是行不通的,我無法終生弄清楚需要改變的地方。
var poloniexUrl = "https://poloniex.com/public?command=returnChartData¤cyPair=BTC_XMR&start=1405699200&end=9999999999&period=14400";
$.getJSON(poloniexUrl, function(data){
results = data;
});
// Creates Chart
var chart = new Highcharts.StockChart({
chart: {
renderTo: 'cryptoChart',
backgroundColor: 'white'
},
title: {
text: currentTitle
},
series: [{
data: results,
turboThreshold: 1000
}],
xAxis: {
original: false
},
rangeSelector: {
selected: 1
},
plotOptions: {
line: {
gapSize: 2
}
}
});
希望有幫助!
請參閱此現場演示: http : //jsfiddle.net/kkulig/0f4odg5q/
如果使用turboThreshold
則點的選項需要以整數或數組形式給出( 說明: https : turboThreshold
)。 在您的情況下,格式為JSON,因此我禁用了turboThreshold
以防止Higcharts錯誤12 ( https://www.highcharts.com/errors/12 ):
turboThreshold: 0
$.getJSON
是異步的-確保data
變量已初始化的最佳方法是在回調函數( getJSON
第二個參數)中使用它:
$.getJSON(poloniexUrl, function(data) {
// Creates Chart
var chart = new Highcharts.StockChart({
chart: {
(...)
您獲取的數據看起來像燭台系列-我更改了系列的類型:
type: 'candlestick'
如果將日期保留在JSON對象的x
屬性中(而不是date
),Highcharts將正確理解date
:
data: data.map((p) => {
p.x = p.date;
return p
}),
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.