2013-03-21 2 views
0

하이 차트의 형식을 고치려고합니다.하이 차트 형식

통화가 이루어진다
$.getJSON('http://www.highcharts.com/samples/data/jsonp.php?filename=range.json&callback=?', function(data) {code to build the chart 

, 데이터 반환 다음과 같은 :

callback([ 

/* 2009-01-

데모 중 하나

다음 통화가 01 */ [1,230771600000, -5.8, 0.1, [1,230858000000, -4.1, 1.4, [1,230944400000, -0.5, 4.1, [1,231,030,800,000, -8.9, -0.7, [1,231,117,200,000, -9.7 , -3.7],,691,363,210 [1,231,203,600,000, -3.4, 3.2, [1,231,290,000,000, -3.9, -0.2, [1,231,376,400,000, -2.4, 6.7, [1,231,462,800,000, 3.8, 6.9, [1,231,549,200,000, 3.1, 6.8] ]);

내가 겪고있는 문제는 그래프 데이터와 다른 것들이 포함될 결과를 내 자신의 AJAX 호출을 통해 전달하려는 것입니다. 그러나 HC가 읽을 수 있도록 올바른 형식을 얻지 못하는 것 같습니다. 형식에 대한 자신의 페이지를 읽었지만 운이 없었습니다.

문제는 '콜백 ([]);이라고 생각합니다. 컨테이너를 제거해야하지만, 그렇게하면 데이터가 차트에 표시되지 않습니다.

lee

답변

0

나는 한 번 같은 문제에 부딪 혔습니다. 당신의 JSON은
높은 차트 시리즈 highcharts 시리즈로를주기 전에
을 구문 분석하는이 형식의 배열을 받아

[[float,float],[float,float]] 

당신의 구문 분석되지 않은 JSON은 제거한 후

[[String,String],[String,String]] 

를 제공하기 위해 노력할 것이라고 반면, 귀하의 '콜백 ([]); 컨테이너는 점 (JS로)을 수행하는 일련의 객체

한 방향으로 공급하기 전에 '[Y, X,] 개별 파싱해야

  1. 문자열 [] jsonComponents을 = jsonWithoutContainer.split (",");
  2. 각 jsonComponents 배열을 반복합니다.
  3. 각 jsonComponent에 대해 - 문자열 [] xyComps = jsonComponent.split (",");
  4. x = parseFloat (xyComp [0]); y1 = parseFloat (xyComp [1]); y2 = parseFloat (xyXomp [2]);

  5. 는 (X, Y1) 및 chart.series의 공급이이 콜백 JSONP 사용된다
+0

감사합니다. Austin. 나는 네가하는 말을 볼 수있다. 그러나 나는 100 % 확신하지 못했습니다. 게시물에 넣은 호출에서 JSON 형식으로 결과가 반환됩니다. 그렇다면 JSON 형식의 데이터를 내 일부로 전달하는 것과는 다른 방식으로 반환되는 방식은 무엇입니까? –

0

(배열 1)를 사용 array1.push, 이러한 배열을 넣어.당신은 단순히를 달성하기 위해 표준 JSON을 사용할 수 있습니다 의견없이

[[1230771600000, -5.8, 0.1], [1230858000000, -4.1, 1.4], [1230944400000, -0.5, 4.1] ... ] 

등 기능 데이터가이 방법을 보일 것이다 경우 작동합니다.

0

좋아, 알아 냈어.

jQuery가 모든 데이터를로드하면이를 문자열로 변환합니다. Highcharts에서 사용하려면 먼저 $.parseJSON(data)을 사용하여 개체로 다시 변환해야합니다.

도와 주신 Pawel과 Austin에게 감사드립니다.