2009-09-22 7 views
2

Je cherche à créer un programme avec Processing (processing.org) en Java. Le programme impliquera de représenter une grande quantité de données 2D. Je voudrais que les points soient affichés pour remplir la fenêtre. J'ai regardé leurs bibliothèques et je ne vois rien pour la visualisation de données. Est-ce que je manque quelque chose?Données graphiques avec traitement Java

+0

Qu'est-ce que 'les points à afficher pour remplir la fenêtre'? Si vous voulez dessiner un point, il y a une fonction appelée point() - http://processing.org/reference/point_.html Si vous voulez remplir la fenêtre, vous pouvez spécifier l'arrière-plan avec background() - http: //processing.org/reference/background_.html – jbasko

+1

Je pense que l'idée avec Processing est pour vous d'utiliser les outils dont ils disposent déjà pour visualiser vos données. Vous utilisez donc les propriétés des données que vous utilisez pour définir l'emplacement, la taille, la forme, la couleur, etc. des éléments de votre esquisse. Si je comprends bien, il s'agit d'un processus plutôt créatif, plutôt que de simplement lancer vos données lors d'un appel API ... ou est-ce que je ne comprends pas votre question? – Zannjaminderson

Répondre

1

J'ai toujours utilisé JFreechart ou, pour une exportation graphique plus complexe vers un fichier texte, puis gnuplot.

0

un autre vote pour JFreeChart. Bien que pour les graphiques plus complexes, j'ai écrit le mien (AWT).

0

Le traitement est vraiment puissant et peut être considéré comme un langage «brut», étant donné que vous pouvez vous rapprocher de la programmation graphique réelle. J'ai moi-même créé de nombreux graphiques et je peux vous dire que vous devez être très prudent lorsque vous utilisez cette bibliothèque. C'est génial mais il faut tout faire à partir de zéro. Cela signifie créer des lignes pour les axes x et y, créer vos étiquettes, créer l'espace, etc.

Ma suggestion est de définir le nombre de points que vous aurez probablement, disons 1000, et toujours afficher avec autant Les données. Si vous avez trop peu ou trop, ajustez-le avant de l'envoyer au graphique. De cette façon, vous aurez toujours un numéro fixe. De là, ce que vous faites est la suivante:

pushMatrix(); 
scale(widthOfGraph/1000, heightOfGraph/numberOfPointsUp); 
beginShape(LINES); 
for (int i = 0; i < 1000; i++) { 
    vertex(x0,y0); 
    vertex(x1,y1); 
endShape(); 
popMatrix(); 

Cela va créer toutes vos lignes dans une opération de dessin unique qui signifie que vous allez économiser beaucoup d'ouverture et de clôture des formes. Vous utilisez également une matrice de pile pour utiliser l'opération d'échelle pour ajuster la taille d'affichage de votre toile. Tout le reste dépend de toi. J'espère que cela pourra aider.

Questions connexes