Tôi đã chuẩn bị một fiddle nhỏ để minh họa cho vấn đề hereD3 loại bỏ dữ liệu sử dụng lối
Tôi đang gặp một vấn đề sử dụng chức năng thoát d3 để loại bỏ các yếu tố từ các dom.
Nói rằng tôi có một mảng của 10 yếu tố:
var data = [1 ,4, 5, 6, 24, 8, 12, 1, 1, 20]
tôi sử dụng dữ liệu này để tạo ra một biểu đồ thanh ngang đơn giản sử dụng d3
d3.selectAll('rect')
.data(data)
.enter()
.attr("class", "rectangle")
.attr("stroke", "black")
.attr("stroke-width","1px")
.attr("fill","none")
.attr("x", 0)
.attr("y", function(d, i) { return 25 * i; })
.attr("width", function(d) { return 22 * d; })
.attr("height", "20");
Bây giờ sau khi một sự chậm trễ ngắn Tôi muốn prune tập dữ liệu của tôi vì vậy tất cả những gì tôi đã để lại là
var truncatedData = [4,5]
d3.selectAll('rect')
.data(truncatedData)
.exit()
.transition()
.delay(3000)
.remove();
Dữ liệu được xóa thành công nhưng vẫn hiển thị thông tin t hai phần tử 1,4 thay vì 4,5.
Làm cách nào tôi có thể xóa tất cả trừ [4,5] khỏi nhà thờ?
OP cũng đang tham gia dữ liệu để chia sẻ lần đầu tiên và sau đó đến nhóm lần thứ hai. –
@gumballhead - Có, tôi đã thay đổi nó một chút để đơn giản, nhưng vấn đề vẫn đứng trong cả hai trường hợp. – jon37
@Lars - Công trình này! Cảm ơn bạn rất nhiều – jon37