Forum
>>
Programmazione Python
>>
Calcolo scientifico
>>
Dati e grafico
Pagina: Indietro 1 2 3 4 5 Avanti
Esegui il login per scrivere una risposta.
Pagina: Indietro 1 2 3 4 5 Avanti
Scritto da stix77 |
2018-01-01 20:54:01 - Re: Dati e grafico
|
ma intendi qualcosa tipo questo?
import matplotlib.pyplot as plt x=[] y=[] for i in range(1,11): x.append(i) y.append(i**2) plt.plot(x, y) plt.show() |
|
Scritto da Andrdne |
2018-01-01 21:44:13 - Re: Dati e grafico
|
Uscivano come il file che ho allegato e ora riallego perché sulle ordinate non ci stanno i quadrati perfetti ma valori a caso attorno a quelli (Es: 3-10, 4-17, 5-23 etc)
|
|
Scritto da stix77 |
2018-01-02 10:38:26 - Re: Dati e grafico
|
Da quello che ho capito il tuo è solo un problema che nella lista i numeri non sono ordinati in numero crescente.
In teoria basta aggiungere il sort() prima del plottaggio e dovrebbe andare tutto a posto x.sort() y.sort() |
|
Scritto da Andrdne |
2018-01-02 13:32:36 - Re: Dati e grafico
|
No no nella lista sono in ordine. Il problema è che nel grafico che restituisce, i valori negli assi sia x che y sono disordinati (non 1 2 3 4 5 ma 2 1 3 4 9 5 etc) e di conseguenza i punti sono a casaccio e non hanno (come nel mio caso) un andamento parabolico
|
|
Scritto da stix77 |
2018-01-02 14:46:59 - Re: Dati e grafico
|
ah ok, nel grafico te li ordina per il numero che è davanti, quindi 1,5, 13 diventa 1,13,5 perchè l'1 del 13 è più piccolo di 5.
mi sa che ti vede i numeri come stringhe prova a convertire i numeri in int(), dovrebbe tornare a posto |
|
Scritto da Andrdne |
2018-01-02 19:31:58 - Re: Dati e grafico
|
Scusa se te lo chiedo ma come si fa? Non ne so quasi niente
|
|
Scritto da stix77 |
2018-01-02 20:21:08 - Re: Dati e grafico
|
puoi usare la funzione map()
List = ['1','2'] #creo una lista di stringhe, notare gli apici print(type(List[ 0 ])) #infatti se chiedo di che tipo è il primo oggetto in lista, mi dice che è str List = list(map(int, List)) #la funzione map mi converte tutti gli oggetti da str a int print(List) #notare che non ci sono più i pedici print(type(List[ 0 ])) #e infatti se richiedo il tipo, mi dice che è int |
|
Scritto da Andrdne |
2018-01-02 22:41:51 - Re: Dati e grafico
|
Niente.. non cambia niente.. la disposizione rimane uguale a prima
|
|
Scritto da stix77 |
2018-01-02 23:14:12 - Re: Dati e grafico
|
prova a postare il codice che stai usando ed eventualmente il file txt se i numeri li hai caricati li
|
|
Scritto da Andrdne |
2018-01-03 12:12:31 - Re: Dati e grafico
|
import matplotlib.pyplot as plt
List = open("PrimTabDati.txt").readlines() x = [x.split("\t",1)0 for x in List] del x0 y = [y.split("\t",1)1 for y in List] del y0 y = [s.replace('\t', '') for s in y] y = [s.replace('\n', '') for s in y] plt.plot(x, y, "k.") plt.legend() plt.xlabel("Spazio") plt.ylabel("Periodo") plt.title("Dipendenza") plt.show() Fin ora è questo, più l'ultima parte che mi hai inviato che ho provato a mettere ovunque |
Pagina: Indietro 1 2 3 4 5 Avanti
Esegui il login per scrivere una risposta.