J'ai besoin de tracer des milliers de points, peut-être près de 50 000 avec la bibliothèque de cartographie dojo. Cela fonctionne, mais c'est certainement très lent et retarde le navigateur. Y a-t-il un moyen d'obtenir de meilleures performances?Tracer des milliers de points avec le dojo
EDIT:
I résolu en appliquant un filtre à rendre les données. Essentiellement, j'ai un nouveau paramètre d'élément appelé "render" qui est mis à false par ma source json si le point est censé chevaucher d'autres. Ma DataSeries interroge ensuite tous les points où render: true. De cette façon, toutes les données sont toujours là pour les sources non visuelles qui veulent tous les points, alors que mes graphiques fonctionnent maintenant correctement.
psuedocode:
def is_overlapped(x, y, x_round, y_round)
rounded_x = round(x, x_round)
rounded_y = round(y, y_round)
hash = hash_xy(rounded_x, rounded_y)
if(@overlap_filter[hash].nil?)
@overlap_filter[hash] = true
return false
end
return true
end
x_round et y_round peuvent être déterminées par x et y est comprise, disons par exemple la gamme/100
Probablement pas avec javascript. 50 000 éléments DOM seront lents. Tous les points sont-ils visibles? Voulez-vous que les utilisateurs cliquent, interagissent ou animent les points? – Spacedman
50 000 articles semble être une mauvaise idée - évitez de faire des trucs stupides! – marko
Tous les points ne sont pas visibles, mais je ne sais pas comment supprimer les points qui se chevauchent complètement. Je suppose que si c'était parfaitement efficace, tous les points cachés étaient supprimés alors il ne resterait plus que quelques milliers de points. – WhatAWorld