2017-09-16 5 views
1

Comment créer un nuage de points en utilisant (number, value) où nombre est sur une ligne numérique; il n'y a pas de valeurs négatives sur les deux variables. pseudocode:Comment faire un nuage de points en python 3 en utilisant la coordonnée (nombre, valeur)

first_point = (1, secrets.randbit(4)) 
second_point = (2, secrets.randbit(4)) 
... 
plot = create_plot((first_point, second_point, ...)) 
display_plot(plot) 

Cela me aider grandement car cela rendrait beaucoup plus facile de représenter graphiquement faire comme tout ce que je pouvais trouver est de faire des graphiques à barres et même alors, il est encore relativement complexe. Si possible, pourriez-vous simplifier le code/la fonction tellement que tout ce que vous avez à entrer est les points en tant que tuple ou liste. En faisant en sorte que le graphique s'ajuste automatiquement pour la gamme d'entrées. Expliquer comment et pourquoi le code fonctionne serait génial pour que je puisse créer un nuage de points de la conjecture de Collatz. S'il y a une solution facile avec pygame, je suis tout à fait à l'écoute, mais l'utilisation de la bibliothèque de tortues est très bien. Merci d'avance.

+0

Que diriez-vous de ['pyplot.scatter'] (https://matplotlib.org/devdocs/api/_as_gen/matplotlib.pyplot.scatter.html)? – Michael

+0

Eh bien Michael, pour utiliser 'pyplot.scatter', je devrais le lancer dans une boucle for et diviser le tuple/list, j'espérais juste qu'il y aurait une meilleure solution. Merci pour le commentaire! – Lasagnenator

Répondre

0

Ma solution:

def create_graph(list): 
    for item in list: 
     x = item[0] 
     y = item[1] 
     pyplot.scatter(x, y) 

first_point = (rand, rand) 
second_point = (rand, rand) 
... 
create_graph((first_point, second_point, ...)) 
pyplot.show() 

Ceci est ma solution au problème et je pense qu'il est grand. Merci à Michael qui m'a parlé de pyplot.scatter.