2017-12-21 102 views
7

Próbuję utworzyć niestandardową funkcję skrzynki narzędziowej w echarts 3.8.5, aby użytkownik mógł dodawać znaczniki lub komentarze do wykresu. Nie znalazłem żadnego demo z niestandardowymi funkcjami i brakuje dokumentacji dla Extension API.Echarts - niestandardowa cecha zestawu narzędzi znak/komentarz

Moje pytania:

  1. Jak ustawić niestandardową funkcję jako „aktywny”, gdy użytkownik kliknie na nim (na przykład, jak po wybraniu pędzel w predefiniowanych funkcji)
  2. Jak mogę uzyskać coords z obsługą kliknięcia na wykresie
  3. Jak dodać niestandardowy element wykresu

Odpowiedz

2
  1. Jak ustawić niestandardowe fea ture jako „aktywny”, gdy użytkownik kliknie na nim (na przykład, jak po wybraniu opcji pędzla w predefiniowanych funkcji)

    • Można dispatch an action,
    • Albo można ręcznie zmienić obiekt wykresu i zastąpienie/zastąpienia istniejący obiekt wykresu. Można użyć chart.setOption() wstawić zupełnie nowy obiekt wykresu **
  2. Jak mogę uzyskać coords z obsługą kliknięcia na wykresie

  3. Jak dodać element niestandardowy do wykresu


** Kiedy masz custom toolbox feature (Uwaga: należy zawsze zaczynać mój):

toolbox: { 
    feature: { 
     myFeature: { 
      show: true, 
      title: 'My custom feature', 
      icon: 'image:path/to/image-inactive.png' 
      onclick: function(){ 
       // do something 
      } 
     } 
    } 
}, 

można ręcznie zaktualizować ikonę na stan aktywny przez użycie:

chart.setOption({ 
    toolbox: { 
     feature: { 
      myFeature: { 
       icon: 'image:path/to/image-active.png' 
      } 
     } 
    } 
}) 

Echarts wil l wykryć zmiany i zaktualizować ikonę. Oczywiście można ustawić go ponownie na nieaktywny z tą samą logiką.

+0

Czy możesz być bardziej konkretny z 1), proszę? Czytałem dokumentację do wszystkich działań, ale nadal nie wiem, której użyć i jak. Kiedy klikam na funkcję niestandardową w przyborniku, chcę, aby ta funkcja była widocznie aktywna, więc nie jestem pewien, czy powinienem użyć akcji podświetlania lub skrzynki narzędziowej. – Boris

+0

Przepraszamy za opóźnioną odpowiedź. Próbowałem wymyślić rozwiązanie. Czy możesz tego spróbować? Myślę, że to powinno zadziałać. –