Dường như tất cả các biểu đồ ví dụ D3 đều lấy tệp .csv hoặc .tsv bên ngoài làm dữ liệu đầu vào. Có cách nào để sửa đổi mã để lấy dữ liệu từ một biến trong Django. Giả sử {{data}} có định dạng JSON, làm cách nào bạn triển khai điều này trong biểu đồ như http://bl.ocks.org/3885304 hoặc http://bl.ocks.org/3887051? Tôi đang cố gắng tránh luôn viết một tệp .csv.Nhập dữ liệu trực tiếp từ Django cho biểu đồ D3
Trả lời
Bạn luôn có thể tạo chế độ xem sẽ phục vụ tệp csv động sẽ được D3 tiêu thụ. Cách này cũng sẽ cho phép người dùng tải xuống dữ liệu trong trường hợp họ cần dữ liệu thô thay vì biểu đồ.
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')
Nếu bạn đang làm điều này rất nhiều xem xét một api như ngon https://github.com/toastdriven/django-tastypie – PhoebeB
Ngoài ra, tôi đồng ý với csv Miki725 lại. Sau khi phục vụ cả csv và json để d3 từ django, tôi bây giờ gắn bó với csv vì có một số công cụ tốt như d3.nest và crossfilter để tinh chỉnh các lựa chọn và csv nhỏ hơn để chuyển hơn json. – PhoebeB
Thay vì dữ liệu tải không đồng bộ (ajax-style), bạn có thể sử dụng định dạng đúng JSON trong một chuỗi truyền cho tag biến mẫu của bạn và |safe
d.
Kiểm tra ví dụ làm việc http://bl.ocks.org/4040034 mà là dựa trên http://bl.ocks.org/3885304
Bạn cũng nên kiểm tra các câu hỏi liên quan về SO, có tấn về đề tài này.
Biểu đồ đó là thứ tôi đang tìm kiếm. {{Data}} của tôi chính xác là định dạng của dữ liệu var, là JSON. Tôi có thể thay thế dữ liệu của mình bằng var data = {{data}} không? Nó dường như không hoạt động. – ono
Đã sửa lỗi. {{data | safe}} – ono
Chìa khóa là 'an toàn' để bỏ qua việc thoát khỏi chuỗi mặc định của django. – hobs
- 1. Tự động cập nhật dữ liệu biểu đồ trong D3
- 2. Khuôn khổ tốt cho biểu đồ trực tiếp bằng Python?
- 3. Biểu đồ trực tiếp cho ứng dụng C
- 4. Lấy dữ liệu cho ô biểu đồ
- 5. Nhập dữ liệu từ .csv bằng d3.js
- 6. Android - Đọc dữ liệu HTML5 localStorage trực tiếp từ Java
- 7. R: Tạo biểu đồ từ dữ liệu tội danh
- 8. Tính xấp xỉ biểu đồ cho dữ liệu truyền trực tuyến
- 9. biểu đồ D3 phản hồi
- 10. Thêm nhãn trực tiếp đến ggplot2 geom_area biểu đồ
- 11. Nhập dữ liệu từ URL
- 12. jqPlot: cách cập nhật trực tiếp biểu đồ
- 13. Dữ liệu tải lại biểu mẫu Django
- 14. Cách tạo biểu đồ bằng cách sử dụng d3.js và dữ liệu crossfilter?
- 15. Biểu đồ đường D3 với nhiều dòng tùy ý (và định dạng dữ liệu cụ thể)
- 16. Sử dụng mảng kết hợp làm dữ liệu cho D3
- 17. Xuất/Nhập biểu đồ phân cấp từ cơ sở dữ liệu
- 18. Phát trực tiếp nguồn cấp dữ liệu video iPhone trực tiếp iPhone SDK
- 19. d3 cập nhật dữ liệu và cập nhật đồ thị
- 20. d3 biểu đồ thanh là lộn ngược
- 21. VBA để nhập dữ liệu trực tuyến và gửi mẫu
- 22. Biểu đồ kiểu dữ liệu biểu đồ Haskell
- 23. Chuyển tiếp D3.js
- 24. Cập nhật biểu đồ từ dữ liệu json
- 25. Công cụ để tạo biểu đồ từ dữ liệu Xml
- 26. Xuất mô hình dữ liệu MySQL Workbench trực tiếp sang lược đồ YML trong Propel/Symfony
- 27. Tránh null trong tập dữ liệu cho biểu đồ đường
- 28. Biểu đồ nhiều chuỗi (D3) có giá trị bị thiếu
- 29. cách tạo nhãn cho dữ liệu trong biểu đồ bánh rán bằng cách sử dụng d3.js
- 30. Biểu đồ phóng to ở D3
https://github.com/mbostock/d3/wiki/Requests#wiki-d3_json – Martin
Nếu tôi đang sử dụng d3.json, URL và gọi lại là gì? – ono
Tôi hiểu lầm câu hỏi của bạn, tôi nghĩ bạn muốn phục vụ nó như là json sử dụng http. Xem câu trả lời của tôi để biết chi tiết. – Martin