Wykres wielu serii (D3) z brakującymi wartościami

Na tej podstawie chcę stworzyć wykres liniowy dla wielu serii z D3przykład. Mój problem polega na tym, że brakuje niektórych wartości:

y    x1   x2   x3
1   0.8       0.7
2   0.9       0.7
3   0.9  1.2  0.7
4        1.1  0.7
5   0.8  1.1  2.7
6   0.9  1.2  2.6
7        1.3  0.8

Chcę uzyskać następujący wykres:

Brakujące punkty na początku lub na końcu należy pominąć. Mógłbym to osiągnąć

d3.svg.line().defined(function (d) { return d.value; }

Ale jeśli w linii brakuje pewnych punktów, linia nie powinna być przerywana. Z kodem powyżej zielona linia (x1) zatrzymuje się przy y = 3 i kontynuuje przy y = 5. Ale chcę połączyć te punkty.

Bez użycialine().defined(), wszystkie brakujące punkty były traktowane tak, jakby ich wartość była0.

Oto kod, którego użyłem, aby znaleźć sposób na wdrożenie tej funkcji:

http://jsfiddle.net/G5z4N/2/

Myślę, że nie jest rozwiązaniem dla mnie zastąpienie brakujących punktów w tablicy danych przed przekazaniem ich do funkcji wykresów, ponieważ muszę pokazywać wartości w legendzie iw podpowiedziach i nie mogę tutaj pokazywać obliczonych wartości. Na przykład, jeśli poruszę myszą nad y = 4, powinien pojawić sięx1:-- x2:1.1 x3:0.8 w legendzie (x1 nie ma tutaj żadnej wartości). Również (rzeczywiste) punkty powinny być wyświetlane jako okręgi. Nie chcę też mieć dwóch tabel danych w pamięci (jednej z rzeczywistymi danymi pomiarowymi, a drugiej z rozszerzonymi danymi dla linii wykresu).

questionAnswers(1)

yourAnswerToTheQuestion