[Linux] Plot & Compilazione

hamming_burst
Salve,
chiedo un piccolo parere.
Devo plottare una serie di coordinate, ma non ho a disposizone gnuplot, e non posso installaro per motivi di permessi.
Esiste un'alternativa con permessi di user di eseguire un plotting con qualche app precompilata, oppure si puo' fare un plotting con Gimp (anche se e' un software di fotoritocco, ha parecchi tool extra);

Ringrazio;

Risposte
claudio862
Ho avuto quasi lo stesso problema qualche tempo fa (GnuPlot era installato, ma era una versione vecchissima e non andava bene).
Compilare ed installare GnuPlot nella tua home sarebbe una soluzione, però servono un po' di librerie che probabilmente non sono installate (almeno non le versioni per sviluppare). Io ho risolto semplicemente stampando file dati e script a parte, poi i grafici li genero su un altro computer. Così ho anche il vantaggio di poter usare i file dati con altri sistemi (pgfplots per esempio).

Raptorista1
La soluzione di compilare gnuplot non è male; magari puoi trovare anche i binari già compilati: se sei su ubuntu puoi cercare di scaricare il deb e vedere se si riesce a scompattarlo (non sono sicuro sia possibile, ma è una possibilità!).

Alternativamente, c'è la libreria matplotlib per python 2.x, che fa grafici anche più belli di gnuplot, però se non è installata sei punto a capo..

Raptorista1
La soluzione di compilare gnuplot non è male; magari puoi trovare anche i binari già compilati: se sei su ubuntu puoi cercare di scaricare il deb e vedere se si riesce a scompattarlo (non sono sicuro sia possibile, ma è una possibilità!).

Alternativamente, c'è la libreria matplotlib per python 2.x, che fa grafici anche più belli di gnuplot, però se non è installata sei punto a capo..

hamming_burst
Grazie mille dei pareri!!

"claudio86":

Compilare ed installare GnuPlot nella tua home sarebbe una soluzione, però servono un po' di librerie che probabilmente non sono installate (almeno non le versioni per sviluppare).

La soluzione di compilare gnuplot non è male; magari puoi trovare anche i binari già compilati: se sei su ubuntu puoi cercare di scaricare il deb e vedere se si riesce a scompattarlo (non sono sicuro sia possibile, ma è una possibilità!).

Per i precompilati, utilizzo RedHat, e non ho trovato un .rpm scaricabile, neanche se indirizzato a Fedora... non capisco il motivo, ma cmq non potrei installarlo.

per la compilazione, avrei una domanda: se mi scarico ogni dipendenza, è possibile fare una compilazione locale e vietare assolutamente che vadi ad installare librerie o link condivisi nei vari /lib /share /bin?
Forse cambiando i PATH nelll'ambiene della shell o il configure di gnuplot? Che ne dite?


Io ho risolto semplicemente stampando file dati e script a parte, poi i grafici li genero su un altro computer. Così ho anche il vantaggio di poter usare i file dati con altri sistemi (pgfplots per esempio).

E' la soluzione che ho adottato, ma devo fare troppi step, cambi shell, aspettare che si scaricano. Troppo lavoro, e il plotting visuale devo averlo in real-time, cioè devo avere modo lavorarci ed avere risultati immediati.

Alternativamente, c'è la libreria matplotlib per python 2.x, che fa grafici anche più belli di gnuplot, però se non è installata sei punto a capo..

In effetti quelli di gnuplot sono una schifezzuola ( :D ) ma danno l'idea di ciò che accade

claudio862
"hamming_burst":
per la compilazione, avrei una domanda: se mi scarico ogni dipendenza, è possibile fare una compilazione locale e vietare assolutamente che vadi ad installare librerie o link condivisi nei vari /lib /share /bin?
Forse cambiando i PATH nelll'ambiene della shell o il configure di gnuplot? Che ne dite?

Sì, basta semplicemente passare il prefisso allo script di configurazione:

./configure --prefix=/home/hamming_burst/local && make && make install

Il problema è che per la compilazione sono necessarie tutte le librerie usate: libpng, libjpeg, libgd… E non bastano le librerie normali (.so), ma servono quelle di sviluppo (.h e .a), che spesso non sono installate. Quindi dovrai compilare ed installare localmente anche quelle librerie. Io ci avevo rinunciato, però magari a te va meglio.
Qua c'è uno che è riuscito, magari vedi se riesci a seguire il suo procedimento.

hamming_burst
"claudio86":
Sì, basta semplicemente passare il prefisso allo script di configurazione:

./configure --prefix=/home/hamming_burst/local && make && make install

Il problema è che per la compilazione sono necessarie tutte le librerie usate: libpng, libjpeg, libgd… E non bastano le librerie normali (.so), ma servono quelle di sviluppo (.h e .a), che spesso non sono installate. Quindi dovrai compilare ed installare localmente anche quelle librerie. Io ci avevo rinunciato, però magari a te va meglio.
Qua c'è uno che è riuscito, magari vedi se riesci a seguire il suo procedimento.

fantastico, grazie. Domandi vedo se un modo o l'altro, che hai proposta, funziona.

Però che du ball...questa è una delle questioni che più non sopporto del mondo Linux, anche se sono motivi di sicurezza.

vict85
Programmi/linguaggi come R o Octave possono fare grafici e anche permetterti di lavorarci sopra. Per quanto riguardo R ho trovato questa versione sul web http://www.math.montana.edu/Rweb/ l'unico problema forse è l'inserimento di dati.

hamming_burst
"vict85":
Programmi/linguaggi come R o Octave possono fare grafici e anche permetterti di lavorarci sopra. Per quanto riguardo R ho trovato questa versione sul web http://www.math.montana.edu/Rweb/

uh interessante, un plotter online non ci avevo pensato di cercarlo, davvero utile.
Però non conosco nulla di R e questo:
l'unico problema forse è l'inserimento di dati.

non è il massimo. Ma è un'idea non male e un po' più veloce del metodo di esportare su altro computer e fare il plotting.

@vict: forse conosci R e sai darmi già una risposta veloce così da tenere come alternativa. Il plot che devo fare è una superficie, i file data li sintetizzo in matrici: http://t16web.lanl.gov/Kawano/gnuplot/d ... tml#matrix
in gnuplot si riduce tutto ad un'istruzione:

splot "file.dat" matrix with lines

così al volo conosci l'equivalente in codice R?

Raptorista1
@hamming_burst: per quanto riguarda quello che chiami !compilazione locale", spendo due parole: ogni compilazione è una compilazione locale, e svolge tutto il lavoro [comandi ./configure e make] nella cartella in cui è aperto il terminale, punto.
Dati questi due comandi, ottieni già un binario utilizzabile, che puoi lanciare con, ad esempio, ./gnuplot nella cartella in cui hai compilato [o ./bin/gnuplot o simili].

Il comando make install non fa altro che copiare i file già compilati nelle cartelle PATH eccetera, in modo che siano universalmente visibili [aka lanciabili da terminale senza dover essere nella cartella giusta].
In altre parole, puoi anche dare i comandi ./configure [senza opzione --prefix] e make e poi usare gnuplot direttamente.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.