Wygląda na to, że wszystkie wykresy przykładowe D3 pobierają zewnętrzny plik .csv lub .tsv jako dane wejściowe. Czy istnieje sposób modyfikowania kodu w celu pobrania danych ze zmiennej w Django. Załóżmy, że {{data}} jest w formacie JSON, jak to zaimplementować na wykresie, takim jak http://bl.ocks.org/3885304 lub http://bl.ocks.org/3887051? Próbuję uniknąć zawsze zapisywania pliku .csv.Bezpośrednie wprowadzanie danych z Django dla wykresu D3
Odpowiedz
Zawsze można utworzyć widok, który będzie wyświetlał dynamiczny plik CSV, który zostanie wykorzystany przez D3. W ten sposób użytkownicy będą mogli pobierać dane na wypadek, gdyby potrzebowali nieprzetworzonych danych zamiast wykresu.
def foo(request, ...):
model = get_object_or_404(Foo, ...)
data = model.get_data() # should return csv formatted string
return HttpResponse(data, content_type='text/csv')
Jeśli robisz to dużo, pomyśl o api jak tastypie https://github.com/toastdriven/django-tastypie – PhoebeB
Również zgadzam się z Miki725 re csv. Po dostarczeniu zarówno csv jak i json do d3 z django, teraz trzymam csv, ponieważ jest kilka dobrych narzędzi, takich jak d3.nest i filtr crossowy do korygowania selekcji, a csv jest mniejszy do przeniesienia niż json. – PhoebeB
Zamiast ładowania danych asynchronicznie (ajax-style), można użyć prawidłowo sformatowany JSON w ciąg przekazany do szablonu tag zmiennej i |safe
d.
Zapoznaj się z pracy przykład http://bl.ocks.org/4040034 który jest oparty na http://bl.ocks.org/3885304
Należy również zapoznać się z powiązanych pytania na SO, istnieje mnóstwo na ten temat.
Ten wykres jest tym, czego szukam. Moje {{dane}} są dokładnie w formacie ich danych var, którymi jest JSON. Czy mogę po prostu zamienić ich dane na var data = {{data}}? To nie działa. – ono
Naprawiono. {{data | safe}} – ono
Kluczem jest '| safe', aby ominąć domyślne django, uciekające z łańcuchów. – hobs
- 1. Bezpośrednie wprowadzanie głosu/mowy w przeglądarce mobilnej
- 2. d3 aktualizacja danych i aktualizacja wykresu
- 3. Przekazywanie danych z Django do D3
- 4. Używanie metody przejścia D3 z danymi dla wykresu punktowego
- 5. Dodawanie legendy wykresu w D3
- 6. Wprowadzanie próbek dla różnych algorytmów
- 7. Kolejność segmentów wykresu pączków (pączków) w D3
- 8. Wprowadzanie danych użytkownika do tworzenia użytkowników w Django
- 9. Generowanie wykresu "na żywo" za pomocą D3
- 10. Różne symbole węzłów dla kierowanego siłą d3.js wykresu
- 11. Django uwierzytelniania LDAP - Bezpośrednie Bind użyciu sAMAccountName
- 12. wypełnianie obszaru wykresu d3.js różnymi kolorami
- 13. Dynamicznie aktualizuj dane wykresu w D3
- 14. D3.js łączenie paska i wykresu liniowego
- 15. Sortowanie danych dla ścieżki d3.js
- 16. Aktualizacja wykresu d3 z nowo wstawionych danych w kolekcji Meteor po przedłożeniu formularza
- 17. Wprowadzanie danych wprowadzanych przez użytkownika jako bezpiecznych dla XML
- 18. d3.js Jak dodać linie do wykresu słupkowego
- 19. Wartości danych wykresu wewnątrz plasterka wykresu kołowego
- 20. Filtrowanie danych JS D3
- 21. Wprowadzanie danych wejściowych w strukturze Play
- 22. ładowanie danych csv d3
- 23. zezwalanie na wprowadzanie tylko dla liczby zmiennoprzecinkowej
- 24. D3 Scatterplot z tysiącami punktów danych
- 25. Uzyskiwanie koloru serii danych z wykresu flotowego
- 26. Wprowadzanie danych Unicode w Visual Studio, C#
- 27. Jakie algorytmy używa D3.js do wykresu ukierunkowanego na siłę?
- 28. Wprowadzanie danych z wiersza polecenia powoduje, że syntaxError
- 29. Dynamiczne ładowanie danych zewnętrznych z bazy danych do d3.js
- 30. d3 dodawanie atrybutu danych warunkowo
https://github.com/mbostock/d3/wiki/Requests#wiki-d3_json – Martin
Jeśli używam d3.json, co jest adres URL i zwrotna? – ono
Źle zrozumiałem twoje pytanie, myślałem, że chcesz służyć jako json przy użyciu http. Zobacz moją odpowiedź dla szczegółów. – Martin