2012-10-01 1 views
0

레이블 여러 데이터를 정의하고, 나의 다른 어떻게 알아낼 수 없습니다 : 나는 함수 LoadGraph.check_data를 추가FLOT 동적으로 내가이 일에 대해 적어도 대여섯 다른 질문을 읽었습니다

http://jsfiddle.net/jshado1/Z5UFg/1/하는 I 콘솔에서 실행하십시오. load_data(1,"199 Water St",7);를 실행 한 후 그 출력은 데이터 : the example in the doc로 나에게 정확히 같은 모양

#mine 
[ { label:"coffee", data:[ [1659] ] }, 
    { label:"cocoa", data:[ [717] ] }, 
    { label:"tea", data:[ [206] ] } 
] 

(단지 플롯 옵션 이상) : 나는 또한 SO answer 5661134 후 내 구조를 모델링 시도

#doc example 
[ { label: "Foo", data: [ [10, 1], [17, -14], [30, 5] ] }, 
    { label: "Bar", data: [ [11, 13], [19, 11], [30, -7] ] } 
] 

, 그러나 그것도 비행하지 않았다 (똑같은 결과는 바이올린에서 보았다).

바이올린의 두 번째 그래프는 서로 옆에 3 개의 막대가 있거나 (더 좋지만) 3 개의 막대가 서로 쌓여 있어야합니다.

UPDATE : 나는 다음과 같은 (하지만 여전히 작동하지 않습니다 바이올린)를 얻을 수있는 x 값 추가 : 나는 객체 다움을 가지고가는 경우에

#http://jsfiddle.net/jshado1/Z5UFg/3/ 
[ { label:"coffee", data:[ [7, 1659] ] }, 
    { label:"cocoa", data:[ [7, 717] ] }, 
    { label:"tea", data:[ [7, 206] ] } 
] 
#http://jsfiddle.net/jshado1/Z5UFg/2/ 
[ { label:"coffee", data:[ [0, 1659] ] }, 
    { label:"cocoa", data:[ [1, 717] ] }, 
    { label:"tea", data:[ [2, 206] ] } 
] 

(예, 라벨), 그것을 작동합니다 (그러나 f_opts.series.stack=true 작동-I는하지 않는 이유를 생각, 3 개 막대가 파란색이기 때문에, 그것은) 같은 시리즈로 세 가지를 모두 치료의 I 알아낼해야합니다 : 2가 있습니까 v4

UPDATE를 이것들은 2 개의 다른 장소에 있어야한다? 그 말은 그 라벨 + 데이터 배열 개체가 옵션 개체에 있어야하고 데이터도 데이터 배열에 있어야한다는 말입니까? 문서는 부모 객체가 무엇인지를 결코 말하지 않기 때문에 파악하기가 어렵습니다.

답변

1

나는 this version of the fiddle이 당신이하려는 일이라고 생각합니다.

f_data을 개체 배열, 특히 시리즈 개체 대신 단일 개체 {}로 처리하는 데 문제가있었습니다. (당신은 [f_data]와 함께 플롯 전화의 배열에 강제로이 문제를 해결했지만 단일 시리즈로 제한됩니다.) 대신 대신 data 배열로 tmpf_data에 전체 일련의 객체를 밀어됩니다 f_data = tmp을 설정하는 수행 할 작업 :

f_data.push({label:cat, stack:true, data:tmp}); 

각 시리즈 개체 (당신의 f_data 배열의 각 요소) 데이터 및 레이블 자체를 가지고, 내 예제에서 볼 수 있듯이.당신은 기능을 스태킹 얻기 위해 jquery.flot.stack.js 파일을 포함 할 필요가

  1. :

    두 어떤 적재 작업을보고하지 않은 이유가 있었다. (나는 바이올린에 링크 된 리소스를 추가했습니다.)
  2. 스태킹은 여러 시리즈에서만 의미가 있습니다. "깊이"보기는 각각 1 개의 데이터 포인트가있는 3 개의 개별 시리즈를 만드는 대신 3 개의 중복 데이터 포인트를 단일 시리즈에 추가하는 것이 었습니다.

나는 나의 예가 당신이 목표로했던 결과를 얻는다고 믿습니다. 내가 틀렸다면 알려줘. 변경 사항을 강조 표시하기 위해 // NEW로 추가 한 새 줄에 태그를 추가했습니다.

+0

예! OMG 당신은 놀라워요. 고마워요. 나는 # 2가 일어나고 있고 문제라고 생각했지만, 그것을 고칠 방법을 찾지 못했습니다 ^^, – jacob

1

Flot은 [x, y] 쌍을 필요로하지만 데이터 포인트는 단 하나의 값으로 구성된다는 차이점이 있습니다. 자세한 내용은 문서의 Data Format 섹션을 확인하십시오.

편집 : f_data가 이미 계열 배열인데도 $ .plot에 대한 호출이 [f_data] 인 것처럼 보입니다. 그게 당신 문제의 현재 원인 인 것 같습니다.

더 많은 문제가 발생하면 코드를 더 간단한 예제로 줄이고 거기에서부터 작업해야합니다. 이것은 질문에서부터 디버깅 세션으로 바뀌 었습니다.

+0

두 번째 데이터 포인트를 제공하려고 시도했지만 3 쌍이 동일한 x 값을 공유합니다. 플롯도 좋아 보이지 않습니다. 두 번째 그래프에 추가하려고했으나 작동하지 않고 여전히 작동하지 않았습니다. 첫 번째 그래프와 동일한 방식으로 레이블을 추가하려고 시도했을 때 파손되었습니다. – jacob

+0

스택을 사용하려면 예제 페이지의 스태킹 예제를 살펴보십시오. – DNS

+0

나중에 스태킹에 대해 걱정할 수 있습니다. – jacob

관련 문제