09 Febbraio, 2012, 08:04:51 *
Benvenuto! Accedi o registrati.
Hai dimenticato l'e-mail di attivazione?

Accesso con nome utente, password e durata della sessione
Notizia: È uscito il numero 55 di Full Circle Magazine in italiano! Lo trovate a questo indirizzo.
 
   Indice   FAQ Aiuto Regolamento Ricerca Accedi Registrati  

Wiki
Programmazione   •   Editor di Testo   •   Linguaggio Bash
Pagine: [1] 2 3 ... 5   Vai giù
  Stampa  
Autore Discussione: [c]utilizzare gnuplot [RISOLTO]  (Letto 4746 volte)
0 Utenti e 1 Utente non registrato stanno visualizzando questa discussione.
cristian_c
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Messaggi: 11.619

Media messaggi


Questo utente non usa Facebook e ne va fiero!


Mostra profilo
« inserita: 30 Novembre, 2008, 12:04:15 »

ciao,
volevo utilizzare gnuplot in un programma che ho scritto per poter disegnare il grafico della radice con indice intero.
ho installato il programma con synaptic.
Ma ora non so come andare avanti.
Mi potete aiutare?
« Ultima modifica: 24 Aprile, 2010, 21:48:00 da cristian_c » Registrato

UP! Unreal Project(la resurrezione), il futuro inizia qui | Post dell'anno!
Se vuoi usare Windows usalo. Hai bisogno della benedizione? Se ne fai una questione economica c'è la pirateria, non prendiamoci in giro. Se sei per il software libero, c'è un bug e si aiuta la comunità a risolverlo. (by taxidriver)
faustomr
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 724

Media messaggi



Mostra profilo
« Risposta #1 inserita: 30 Novembre, 2008, 22:13:35 »

Ciao.
Dunque, la mia situazione è la seguente: uso gnuplot per un programma non scritto da me, uso xmgrace per programmi scritti da me. Cosa ti serve sapere di preciso?
Registrato

2 cose sono infinite: l'Universo e la stupidità umana, ma riguardo l'Universo ho ancora qualche dubbio (Albert Einstein).
cristian_c
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Messaggi: 11619

Media messaggi


Questo utente non usa Facebook e ne va fiero!


Mostra profilo
« Risposta #2 inserita: 30 Novembre, 2008, 23:06:27 »

vorrei chiamare in causa gnuplot nel mio programma per chiamarlo e disegnare il grafico della radice.
Se vuoi posto il codice del programma se puo essere utile.
Registrato

UP! Unreal Project(la resurrezione), il futuro inizia qui | Post dell'anno!
Se vuoi usare Windows usalo. Hai bisogno della benedizione? Se ne fai una questione economica c'è la pirateria, non prendiamoci in giro. Se sei per il software libero, c'è un bug e si aiuta la comunità a risolverlo. (by taxidriver)
faustomr
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 724

Media messaggi



Mostra profilo
« Risposta #3 inserita: 01 Dicembre, 2008, 16:13:13 »

Se è in fortran ok, posso dargli un'occhiata. Se è in C invece, purtroppo non conosco questo linguaggio.
Registrato

2 cose sono infinite: l'Universo e la stupidità umana, ma riguardo l'Universo ho ancora qualche dubbio (Albert Einstein).
cristian_c
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Messaggi: 11619

Media messaggi


Questo utente non usa Facebook e ne va fiero!


Mostra profilo
« Risposta #4 inserita: 01 Dicembre, 2008, 16:16:32 »

purtroppo è in c. Ti ringrazio comunque, ciao!  Cheesy
Registrato

UP! Unreal Project(la resurrezione), il futuro inizia qui | Post dell'anno!
Se vuoi usare Windows usalo. Hai bisogno della benedizione? Se ne fai una questione economica c'è la pirateria, non prendiamoci in giro. Se sei per il software libero, c'è un bug e si aiuta la comunità a risolverlo. (by taxidriver)
faustomr
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 724

Media messaggi



Mostra profilo
« Risposta #5 inserita: 01 Dicembre, 2008, 16:30:52 »

purtroppo è in c. Ti ringrazio comunque, ciao!  Cheesy

Mi dispiace.. Si programma troppo poco in fortran   Shocked
Comunque, credo che tu possa far scrivere i tuoi valori in un file, e dire e gnuplot di leggere il file. In ogni caso, in rete puoi trovare la guida di gnuplot. Per farti un'idea, invece, un "man gnuplot" è più che sufficiente.
Ciao
Registrato

2 cose sono infinite: l'Universo e la stupidità umana, ma riguardo l'Universo ho ancora qualche dubbio (Albert Einstein).
cristian_c
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Messaggi: 11619

Media messaggi


Questo utente non usa Facebook e ne va fiero!


Mostra profilo
« Risposta #6 inserita: 01 Dicembre, 2008, 18:34:52 »

ciao, ho letto la pagina del man fino in fondo, ma ancora non ho capito come usare il programma in un sorgente c  Roll Eyes

Purtroppo non sono mai stato alle prese con una cosa di questo genere. Spero che mi scusi.  Smiley
Registrato

UP! Unreal Project(la resurrezione), il futuro inizia qui | Post dell'anno!
Se vuoi usare Windows usalo. Hai bisogno della benedizione? Se ne fai una questione economica c'è la pirateria, non prendiamoci in giro. Se sei per il software libero, c'è un bug e si aiuta la comunità a risolverlo. (by taxidriver)
faustomr
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 724

Media messaggi



Mostra profilo
« Risposta #7 inserita: 01 Dicembre, 2008, 19:44:08 »

Scherzi? Scusami tu se non ti sono di aiuto! Mi sono appena accorto che il man di gnuplot non è proprio utile e il --help non funziona.. In ufficio uso opensuse e il man di gnuplot è esaustivo. Se conosci qualcuno che usa opensuse puoi chiedere di installare gnuplot e..non so..stampare il man..
Registrato

2 cose sono infinite: l'Universo e la stupidità umana, ma riguardo l'Universo ho ancora qualche dubbio (Albert Einstein).
cristian_c
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Messaggi: 11619

Media messaggi


Questo utente non usa Facebook e ne va fiero!


Mostra profilo
« Risposta #8 inserita: 06 Dicembre, 2008, 09:10:47 »

nelle faq di gnuplot si fa riferimento a questo:
Citazione
5.2 Can I use gnuplot routines for my own programs?

On systems supporting pipes, you can pipe commands to gnuplot from other programs. Many applications with gnuplot as the graphics engine, like Octave (http://www.octave.org), uses this method. This also works from a cgi script to drive gnuplot from a forms-based web page.

John Campbell (jdc@nauvax.ucc.nau.edu) modified a much earlier version of gnuplot (3.5) to be a library of C subroutines callable from a C program. Gnuplot itself has changed radically since then, and we are not aware of any plans to create a similar library based on the current version.

come si fa ad attuare quello che è scritto qui sopra?  Huh?
Registrato

UP! Unreal Project(la resurrezione), il futuro inizia qui | Post dell'anno!
Se vuoi usare Windows usalo. Hai bisogno della benedizione? Se ne fai una questione economica c'è la pirateria, non prendiamoci in giro. Se sei per il software libero, c'è un bug e si aiuta la comunità a risolverlo. (by taxidriver)
moretto11
Novello Novizio

Non Connesso Non Connesso

Messaggi: 217

Media messaggi



Mostra profilo WWW
« Risposta #9 inserita: 06 Dicembre, 2008, 21:15:26 »

per chiamare gnuplot dal tuo programma devi usare la funzione system("gnuplot //cio che devi fare con gnuplot//");
Registrato
cristian_c
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Messaggi: 11619

Media messaggi


Questo utente non usa Facebook e ne va fiero!


Mostra profilo
« Risposta #10 inserita: 06 Dicembre, 2008, 22:25:44 »

Grazie molte moretto,  Cheesy
la funzione "system" è inclusa in stdio.h oppure occorre includere qualche altro file header?

E poi volevo chiedere se al posto di "//cio che devi fare con gnuplot//" devo digitare i comandi del programma gnuplot

Intanto ti ringrazio ancora. È stato fatto un bel passo avanti  Good
Registrato

UP! Unreal Project(la resurrezione), il futuro inizia qui | Post dell'anno!
Se vuoi usare Windows usalo. Hai bisogno della benedizione? Se ne fai una questione economica c'è la pirateria, non prendiamoci in giro. Se sei per il software libero, c'è un bug e si aiuta la comunità a risolverlo. (by taxidriver)
cristian_c
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Messaggi: 11619

Media messaggi


Questo utente non usa Facebook e ne va fiero!


Mostra profilo
« Risposta #11 inserita: 05 Gennaio, 2009, 22:47:06 »

ciao,
ho realizzato l'implementazione, ma non funziona  Sad
Ecco il sorgente:
Codice:
#include <stdio.h>
#include <math.h>

#define ERR 0.00001

main()
{
 char *indice[]={"quadrata","cubica","quarta","quinta","sesta","settima","ottava","nona","decima"};
 float a,b,m,x;
 float fm,pot;
 int n,i,res;
 printf("\n// il programma calcola la radice\n// di un qualunque numero reale scelto dall'utente\n// con indice intero immesso da tastiera\n\n");
 do {
     printf("Inserire un indice valido per la radice(un numero intero da 1 a 10): ");
     res=scanf("%d",&n);
     while(getc(stdin)!='\n');
 } while((n<1 || n>10) && (res==0));
 do {
     printf("Inserire un valore reale di cui calcolare la radice: ");
     res=scanf("%f",&x);
     while(getc(stdin)!='\n');
 } while(res==0);
 if (n%2==0 && x<0) printf("\nil valore inserito non è valido poichè non fa parte dell'insieme di definizione della radice\n"); 
 else if (n==1) printf("\nla radice prima di %g è %g\n",x,x);
      else if (x==1) printf("\nla radice %s di 1 è 1\n\n",indice[n-2]);
           else {
                 if (x>1) {
                     a=1; b=x;
                 }
                 else if (x<-1) {
                          a=x; b=-1;
                      }
                      else {
                            a=-1; b=1;
                      }
                 do {
                     m=(a+b)/2;
                     pot=m;
                     for(i=1;i<n;i++) pot*=m;
                     fm=pot-x;
                     if (fm!=0) {
                         if (fm>0) b=m;
                         else a=m;
                     }
                 } while (fabs(fm)>ERR);   
                 printf("\nla radice %s di %g è %g\n\n",indice[n-2],x,m);                     
           }
 if (1 <= n < 11)
     system("gnuplot plot x**(1/n)");
}


ed ecco l'output:
Codice:
cristiancozzolino@cristiancozzolino-laptop:~/programmazione$ ./radice
// il programma calcola la radice
// di un qualunque numero reale scelto dall'utente
// con indice intero immesso da tastiera

Inserire un indice valido per la radice(un numero intero da 1 a 10): 3
Inserire un valore reale di cui calcolare la radice: 45

la radice cubica di 45 è 3.55689

sh: Syntax error: "(" unexpected
cristiancozzolino@cristiancozzolino-laptop:~/programmazione$

mi sapete spiegare come mai non funziona?
 Roll Eyes Huh? Undecided
Registrato

UP! Unreal Project(la resurrezione), il futuro inizia qui | Post dell'anno!
Se vuoi usare Windows usalo. Hai bisogno della benedizione? Se ne fai una questione economica c'è la pirateria, non prendiamoci in giro. Se sei per il software libero, c'è un bug e si aiuta la comunità a risolverlo. (by taxidriver)
cristian_c
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Messaggi: 11619

Media messaggi


Questo utente non usa Facebook e ne va fiero!


Mostra profilo
« Risposta #12 inserita: 15 Gennaio, 2009, 21:43:26 »

se modifico l'ultima istruzione così:
Codice:
system("gnuplot plot 'x**(1/n)'")
ricevo in output:
Codice:
Cannot open load file 'plot'
line 0: util.c: No such file or directory

Avete un suggerimento perchè funzioni?

E poi sarebbe bello sapere come integrare gnuplot nel programma. Cioè se io voglio che appaia e rimanga fissa la finestra di gnuplot come posso fare?
 Roll Eyes
Registrato

UP! Unreal Project(la resurrezione), il futuro inizia qui | Post dell'anno!
Se vuoi usare Windows usalo. Hai bisogno della benedizione? Se ne fai una questione economica c'è la pirateria, non prendiamoci in giro. Se sei per il software libero, c'è un bug e si aiuta la comunità a risolverlo. (by taxidriver)
Zoff
Moderatore Globale
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 23.256

Media messaggi


Ubuntu user #24913 :D :D :D Linux user #471539


Mostra profilo
« Risposta #13 inserita: 16 Gennaio, 2009, 10:18:20 »

se modifico l'ultima istruzione così:
Codice:
system("gnuplot plot 'x**(1/n)'")
ricevo in output:
Codice:
Cannot open load file 'plot'
line 0: util.c: No such file or directory

Avete un suggerimento perchè funzioni?

E poi sarebbe bello sapere come integrare gnuplot nel programma. Cioè se io voglio che appaia e rimanga fissa la finestra di gnuplot come posso fare?
 Roll Eyes
controlla bene nel manuale... Quel comando in realtà non funziona neanche nel terminale...
Registrato

Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
cristian_c
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Messaggi: 11619

Media messaggi


Questo utente non usa Facebook e ne va fiero!


Mostra profilo
« Risposta #14 inserita: 17 Gennaio, 2009, 15:33:46 »

ciao, zoff, hai fatto un grosso errore a rispondere al topic. Adesso ti perseguiterà per il resto dei tuoi giorni!  Tongue (scherzo  Cheesy )

Citazione
controlla bene nel manuale... Quel comando in realtà non funziona neanche nel terminale...
è vero!  Yes Ho provato. Chissà come mai...  Roll Eyes

Eppure nel manuale è scritto:
Citazione
plot f(x)
Citazione
Notiamo per inciso che per tracciare il grafico di una funzione, gnuplot ci sonsente di utilizzare
una sintassi pi` semplificata, ` infatti possibile evitare di definire preventivamente una funzione
e di scriverne la formula dopo il comando splot.
Registrato

UP! Unreal Project(la resurrezione), il futuro inizia qui | Post dell'anno!
Se vuoi usare Windows usalo. Hai bisogno della benedizione? Se ne fai una questione economica c'è la pirateria, non prendiamoci in giro. Se sei per il software libero, c'è un bug e si aiuta la comunità a risolverlo. (by taxidriver)
Zoff
Moderatore Globale
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 23256

Media messaggi


Ubuntu user #24913 :D :D :D Linux user #471539


Mostra profilo
« Risposta #15 inserita: 17 Gennaio, 2009, 18:17:19 »

ciao, zoff, hai fatto un grosso errore a rispondere al topic. Adesso ti perseguiterà per il resto dei tuoi giorni!  Tongue (scherzo  Cheesy )

Citazione
controlla bene nel manuale... Quel comando in realtà non funziona neanche nel terminale...
è vero!  Yes Ho provato. Chissà come mai...  Roll Eyes

Eppure nel manuale è scritto:
Citazione
plot f(x)
Citazione
Notiamo per inciso che per tracciare il grafico di una funzione, gnuplot ci sonsente di utilizzare
una sintassi pi` semplificata, ` infatti possibile evitare di definire preventivamente una funzione
e di scriverne la formula dopo il comando splot.
Infatit il manuale è corretto...
Devi prima avviare una sessione gnuplot e poi dare quel comando:
Codice:
root@root# gnuplot
gnuplot> plot x**2
Registrato

Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
cristian_c
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Messaggi: 11619

Media messaggi


Questo utente non usa Facebook e ne va fiero!


Mostra profilo
« Risposta #16 inserita: 17 Gennaio, 2009, 18:31:15 »

Infatit il manuale è corretto...
Devi prima avviare una sessione gnuplot e poi dare quel comando:
Codice:
root@root# gnuplot
gnuplot> plot x**2
e come faccio allora con la funzione system?  Roll Eyes
Registrato

UP! Unreal Project(la resurrezione), il futuro inizia qui | Post dell'anno!
Se vuoi usare Windows usalo. Hai bisogno della benedizione? Se ne fai una questione economica c'è la pirateria, non prendiamoci in giro. Se sei per il software libero, c'è un bug e si aiuta la comunità a risolverlo. (by taxidriver)
Zoff
Moderatore Globale
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 23256

Media messaggi


Ubuntu user #24913 :D :D :D Linux user #471539


Mostra profilo
« Risposta #17 inserita: 17 Gennaio, 2009, 18:37:05 »

Infatit il manuale è corretto...
Devi prima avviare una sessione gnuplot e poi dare quel comando:
Codice:
root@root# gnuplot
gnuplot> plot x**2
e come faccio allora con la funzione system?  Roll Eyes
eh bella domanda...
Dicevo di leggere il manuale proprio per quello...
Registrato

Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
cristian_c
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Messaggi: 11619

Media messaggi


Questo utente non usa Facebook e ne va fiero!


Mostra profilo
« Risposta #18 inserita: 17 Gennaio, 2009, 19:17:09 »

Citazione
Dicevo di leggere il manuale proprio per quello...
ma stai parlando del manuale di gnuplot?  Roll Eyes
Perche se è così, non si trova chiaramente nulla su system, in quanto essa è una funzione del c  Wink
Registrato

UP! Unreal Project(la resurrezione), il futuro inizia qui | Post dell'anno!
Se vuoi usare Windows usalo. Hai bisogno della benedizione? Se ne fai una questione economica c'è la pirateria, non prendiamoci in giro. Se sei per il software libero, c'è un bug e si aiuta la comunità a risolverlo. (by taxidriver)
Zoff
Moderatore Globale
Illuminato Imbonitore
*****
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 23256

Media messaggi


Ubuntu user #24913 :D :D :D Linux user #471539


Mostra profilo
« Risposta #19 inserita: 17 Gennaio, 2009, 19:19:33 »

Citazione
Dicevo di leggere il manuale proprio per quello...
ma stai parlando del manuale di gnuplot?  Roll Eyes
Perche se è così, non si trova chiaramente nulla su system, in quanto essa è una funzione del c  Wink
sto parlando di quello perché "in teoria" dovrebbe spiegare anche come usarlo inline senza aprire una sessione...
Registrato

Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Pagine: [1] 2 3 ... 5   Vai su
  Stampa  
 
Vai a: