Supermongo

Messaggioda MaGosTranO93 » 23/11/2010, 13:03

Ciao,
sono alle prime armi con questo strumento di programmazione...c'è qualcuno piu esperto che puo darmi una mano?
- E' la Pura Probabilità che governa l'Universo;
e per questo motivo, solo per questo motivo, la vita é buona. -
A. Crowley
MaGosTranO93
Junior Member
Junior Member
 
Messaggio: 113 di 367
Iscritto il: 14/06/2007, 01:50

Messaggioda wedge » 23/11/2010, 13:48

provaci, cosa ti serve? non e' il programma piu funzionale del pianeta in ogni caso.
(ma dall'altro lato, come bellezza dell'output grafico standard non ha paragoni al mondo)
"Tre quarks per mister Murray!" (James Joyce, Finnegan's Wake)

Parco Sempione, verde e marrone, dentro la mia città.
Avatar utente
wedge
Cannot live without
Cannot live without
 
Messaggio: 3428 di 3831
Iscritto il: 12/10/2004, 19:14
Località: Leiden, NL

Messaggioda MaGosTranO93 » 23/11/2010, 14:14

Lo uso perchè mi è stato suggerito, altrimenti non ne conoscevo nemmeno l'esistenza...
In pratica ho una tabella in un file e devo selezionare solo alcune righe di quella tabella, contraddistinte da una variabile che assume valori 1,2,3. Come faccio ad esempio, a selezionare solo le righe che hanno questa variabile =1?
Spero di essermi spiegato... :roll:
- E' la Pura Probabilità che governa l'Universo;
e per questo motivo, solo per questo motivo, la vita é buona. -
A. Crowley
MaGosTranO93
Junior Member
Junior Member
 
Messaggio: 114 di 367
Iscritto il: 14/06/2007, 01:50

Messaggioda wedge » 23/11/2010, 23:37

si, ho capito. purtroppo SM, che io sappia, non ha una funzione come il WHERE() di idl, che seleziona gli indici di un vettore o struttura che corrispondono ad una certa condizione. se il tuo scopo è solo plottare, quello che ti conviene fare è semplicemente mettere un if entro il plot, tipo
points x y if (z = 1)
se hai da fare cose più complicate... credo SM non sia l'ideale. va bene credo solo per veloce esplorazione dei dati. in ogni caso, prova anche a chiedere al tuo prof, magari ha una soluzione più elegante della mia.
"Tre quarks per mister Murray!" (James Joyce, Finnegan's Wake)

Parco Sempione, verde e marrone, dentro la mia città.
Avatar utente
wedge
Cannot live without
Cannot live without
 
Messaggio: 3429 di 3831
Iscritto il: 12/10/2004, 19:14
Località: Leiden, NL

Messaggioda MaGosTranO93 » 24/11/2010, 16:35

Purtroppo non funziona, o meglio funziona solo con una condizione della variabile, mentre con le altre non plotta niente, come se non leggesse le altre righe...
Purtroppo mi rendo conto che questo non è il posto piu funzionale per discuterne, però qualche altro suggerimento lo accetto volentieri :)
- E' la Pura Probabilità che governa l'Universo;
e per questo motivo, solo per questo motivo, la vita é buona. -
A. Crowley
MaGosTranO93
Junior Member
Junior Member
 
Messaggio: 115 di 367
Iscritto il: 14/06/2007, 01:50

Messaggioda wedge » 24/11/2010, 17:01

non ricordo la sintassi giusta, ma sono sicuro che se hai tre vettori in un file tabella.dat
#x y z
1 1 0
2 2 0
3 3 1

e fai una macro

data tabella.dat
read {x 1 y 2 z 3}
box
limits eccetera
points x y (if z == 0)

ti plotta solo i punti dove z e' 0. ti ripeto, non ricordo la sintassi esatta (specie come si scrive la conditio dentro la parentesi - o magari non c'e' la parentesi), ma lo schema e' quello.
comunque, non puoi chiedere anche al tuo professore?
"Tre quarks per mister Murray!" (James Joyce, Finnegan's Wake)

Parco Sempione, verde e marrone, dentro la mia città.
Avatar utente
wedge
Cannot live without
Cannot live without
 
Messaggio: 3432 di 3831
Iscritto il: 12/10/2004, 19:14
Località: Leiden, NL

Messaggioda MaGosTranO93 » 24/11/2010, 17:45

Esatto, anche se io ho fatto il ciclo if all'inizio e non alla fine in modo che
if z=1 plotta gli altri punti, Il problema è proprio che funziona solo nel primo caso e non nel secondo. Ti riporto la macro:

data Tabella_MIRO.txt

read {oid 1.s flag 3 z 4 fxs 5 fx 6 lxs 7 lx 8 nhf 13 nhfd 14 nhfu 15 g 16 gd 17 gu 18 oiii 19}
if (flag==1) {
ctype black
define color 2

set q = -2,10,1

set h=histogram(g:q)

limits q h
box
histogram q h
}

flag è una delle colonne della tabella, ed è quella che dovrebbe discriminare le righe, ma se cambio il valore di flag nell'IF non esegue piu nessun plot (non disegna neanche gli assi di BOX per intenderci).
Ci sarà qualche problema di sintassi...??
- E' la Pura Probabilità che governa l'Universo;
e per questo motivo, solo per questo motivo, la vita é buona. -
A. Crowley
MaGosTranO93
Junior Member
Junior Member
 
Messaggio: 116 di 367
Iscritto il: 14/06/2007, 01:50

Messaggioda wedge » 24/11/2010, 18:14

mi sembra di ricordare che in questi casi smongo voglia l'if dove hai histogram, perche' e' un linguaggio costruito strano.
succede che se metti un if in plot x y (if z == 0) questo vuole un vettore, perche anche x e y lo sono... mentre se fai if (z==0) di per se, vorrebbe uno scalare, mentre tu gli stai dando una colonna.
ma ti ripeto, sono tutti ricordi molto vaghi di 2 anni fa.
non saprei veramente come aiutarti se non consigliarti nuovamente di andare dal tuo prof, che non e' una cosa deplorevole.
"Tre quarks per mister Murray!" (James Joyce, Finnegan's Wake)

Parco Sempione, verde e marrone, dentro la mia città.
Avatar utente
wedge
Cannot live without
Cannot live without
 
Messaggio: 3434 di 3831
Iscritto il: 12/10/2004, 19:14
Località: Leiden, NL

Messaggioda MaGosTranO93 » 24/11/2010, 18:23

Avevo gia fatto un paio di tentativi nel modo in cui dici, ma rimaneva lo stesso problema.
Il fatto è che il prof è un po lontano e non sempre reperibile.
Provo a smanettarci un altro po, grazie comunque :)
- E' la Pura Probabilità che governa l'Universo;
e per questo motivo, solo per questo motivo, la vita é buona. -
A. Crowley
MaGosTranO93
Junior Member
Junior Member
 
Messaggio: 117 di 367
Iscritto il: 14/06/2007, 01:50

Messaggioda david_e » 24/11/2010, 18:27

La mia esperienza è che si fa molto prima a creare un nuovo file (eventualmente tramite un qualche script Python o altro), piuttosto che perdere tempo a litigare con i 300'000 quirks di supermongo (che personalmente odio sia come software che come qualità dei grafici prodotti, ma che uso per facilitare i miei collaboratori).
david_e
Advanced Member
Advanced Member
 
Messaggio: 2266 di 2443
Iscritto il: 23/03/2005, 15:05

Prossimo

Torna a Fisica, Fisica Matematica, Fisica applicata, Astronomia

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite