2013-07-19 2 views
0

나는 플롯 할 날짜 간격 데이터를 15 분 간격으로 갖습니다. 내 경우 날짜가 일치하지 않을 수 있습니다.하이 차트에서 날짜 시간 플롯

샘플 형식 : VAR 행 = "2012-02-29", "0시 15분", "0"]

나는 음모를 꾸미고 자바 클래스의 배열을 얻고있다. Highcharts에서

var tempVal = new Array(); 

    for(var i=0;i<row.length;i++){ 

     var record = row[i].split(","); 
     tempVal[i]=Date.UTC(record[0].substring(0,4), record[0].substring(5,7), record[0].substring(8,10), record[1].substring(1,3), record[1].substring(4,7)), record[2]; 

} 

: 시리즈 : 내가 Highcharts에이 음모 드릴 수 없습니다

그러나 : [{ 데이터 tempVal }]

내가 좋아하는 몇 가지 옵션을 시도 .

모든 안내가 도움이 될 것입니다.

답변

1

HighCharts에서 날짜 시간을 그리려면 날짜 시간 값과 y 값이 필요합니다. 그것은 다음과 같이 보일 것입니다 :

data: [ 
       [Date.UTC(2010, 0, 1), 29.9], 
       [Date.UTC(2010, 2, 1), 71.5], 
       [Date.UTC(2010, 3, 1), 106.4] 
      ] 

을 아니면 해당하는 자바 스크립트 시간 값 Date.UTC(2010, 0, 1)을 대체 할 수있다.

Date.UTC()은 여러 가지 형식을 허용 할 수 있습니다. here을 참조하십시오.

그래서해야 할 일은 날짜 값과 시간 값을 하나의 단일 시간 값으로 결합하는 것입니다.

예제 코드를 살펴본 후에 편집하십시오. 몇 가지 문제가 있습니다. 하나의 데이터 배열 tempVal이 잘못 선언되었습니다. 그것은해야한다 : 당신은 또한 tempVal 배열에 데이터를 얻을 수 array.push를 사용한다

var tempVal = []; 

.

다른 문제는 시계열이 연대순으로 보이지 않는다는 것입니다. 시리즈를 올바르게 설정했는데 앞뒤로 "선"이 생기게됩니다.

내가 말한 것은 데이터 배열 선언을 수정해야하고 데이터를 해당 배열에 할당하는 방법입니다. 이것은 매우 간단한 방법이며 물론 빠르게 할 수 있지만 내가 자세한 원하는 :

for (var i = 0; i < row.length; i++) { 
    var record = row[i].split(","); 
    var xVal = Date.UTC(parseInt(record[0].substring(0, 4)), parseInt(record[0].substring(5, 7)), parseInt(record[0].substring(8, 10)), parseInt(record[1].substring(1, 3)), parseInt(record[1].substring(4, 7))); 
    var yVal = Math.random() * 10; 
    var x = [xVal, yVal]; 
    tempVal.push(x); 
} 

업데이트 예를 here를 참조하십시오. 선들은 앞뒤로 움직입니다. 제가 말했듯이 이것은 당신의 시계열이 연대순이 아닌 것과 관련이 있습니다. 월수는 0 기준이므로 Jan = 0, Dec = 11입니다.

+0

감사하지만 난 날짜의 날짜와 시간에 퍼팅 시도했다 : record[2] 예를 들어, 이전 구문 분석해야합니다. UTC()하지만 여전히 아무것도 그려지지 않습니다. 데이터는 15 분 간격 데이터이지만 날짜가 일치하지 않을 수 있습니다. – user2599730

+0

에 "날짜가 일치하지 않을 수도 있습니다"라는 사실이 중요하지 않다는 사실을 알려주십시오. 우리는 좀 더 많은 코드를 보게 될 것입니다. 아니면 당신이 직면하고있는 문제와 예제 데이터를 보여주는 대표적인 jsFiddle도 있습니다. – wergeld

+0

http://jsfiddle.net/QcFW7/2/에서 샘플을 만들었습니다 – user2599730

0

콘솔에 오류가 있습니까? 게시 한 코드가있는 경우 코드가 있어야합니다.Highcharts에 관한

- 예를 들어 숫자, 문자열이 아니라, SOE해야 값으로 필요합니다 parseFloat(record[2])

+0

내 [질문은 여기를 보시기 바랍니다 (http://stackoverflow.com/questions/27983248/need-help-in-plotting-a-chart-using-highcharts) -in-angularjs) – abi1964

관련 문제