graphiques

Librairie C++ de calcul formel/ C++ symbolic computation library

Modérateur : xcasadmin

Alek
Messages : 111
Inscription : jeu. oct. 28, 2010 1:20 pm

graphiques

Message par Alek » lun. déc. 26, 2011 8:17 pm

Bonjour,

J'ai écrit un petit programme en python qui imite pgiac (à savoir, "compile" une session giac en latex ; voici un premier test qui reprend les exemples de la page de pgiac)

Mais comment peut-on récupérer (automatiquement) un graphe produit par giac? Sous windows giac ouvre une fenêtre graphique (ce qui peut être intéressant dans d'autres circonstances). Y a-t-il peut-être une option pour que les graphes soient sauvegardés dans un fichier (ps ou png)?

parisse
Messages : 5743
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: graphiques

Message par parisse » mar. déc. 27, 2011 8:38 am

je suppose qu'il faut faire comme pgiac qui semble utiliser la sortie PS generee (par FLTK) depuis icas --texmacs et sans doute des conversions PDF/PNG (generees par Imagemagick sous linux). Sous windows, il faut sans doute installer toute la chaine de conversion si on veut avoir autre chose que la sortie PS.
Cote giac donc, la seule chose a retenir c'est l'utilisation de l'option --texmacs qui permet de rediriger les sorties graphiques directement vers l'impression postscript (utilise par texmacs pour inserer le graphique). On peut bien sur decider de faire des adaptations sur ce modele.

Alek
Messages : 111
Inscription : jeu. oct. 28, 2010 1:20 pm

Re: graphiques

Message par Alek » mer. janv. 04, 2012 4:27 pm

Bonjour et bonne année a tous !

Merci pour les indications. Voici quelques remarques-réponses-questions :

1) Je voudrais intégrer dans l'iterface pygiac une communication avec giac --texmacs.
Le balisage de données et l'exportation de graphiques sont trop intéressants (puis c'est logique d'intégrer les options existantes avant demander de modifs). J'essaye donc de mieux comprendre le protocole d'échanges... et ça va pas très vite...
Pourquoi en mode texmacs giac envoie sans attendre une suite infinie de "prompts"? Que doit faire son "interlocuteur" pour en extraire une réponse?

2) Pour le moment il m'était plus facile de générer des graphiques en python à partir de données fournies par giac.
C'est encore assez rudimentaire, mais il me semble intéressant de réunir la puissance de calcul de giac et le module de graphisme matplotlib de python. Pour l'instant j'extrais les données graphiques en envoyant par exemple p:=plot(sin(x))[1].
Ce format est-il documenté quelque part? Peut-on accéder à ces données avec une commande "officielle"?

3) Voici une version alpha de castex, une traduction python de pgiac annoncée ci-dessus. Castex reconnait quelques commandes de graphisme basique : plot, listplot, paramplot et scatterplot (cf. l'exemple dans sa page web).

4) Conversions graphiques sous windows. En fait, il existe ImageMagick version windows. Serait-il donc possible de l'appeler pour exporter une image en png à partir du menu graphique xcas (tout comme sous linux) ?

Alek
Messages : 111
Inscription : jeu. oct. 28, 2010 1:20 pm

Re: graphiques

Message par Alek » sam. janv. 07, 2012 7:15 pm

Mes questions-remarques n'était pas très très claires, je tiens à les reformuler un peu (tenant compte d'un petit progrès).

1. Ca y est, enfin je vois comment communiquer avec "--texmacs"; une mise à jour pour l'inclure dans pygiac.py (et en profiter dans castex) suivra.
En fait ça se passe au niveau système où je ne comprend pas grand chose : dans la source icas s'attend apparemment à EOF or c'est EOF qui posait le problème; curieusement, ça marche avec EOL... :shock: Mais parce que sur la surface ça marche je n'ai plus de questions...

2. Le module matplotlib propose des options graphiques intéressantes (style matlab). Je voudrais écrire une interface entre avec giac.
Dans ce but ce serait commode de pouvoir extraire des données numériques utilisées par les commandes graphiques de giac.
On peut le faire comme dans mon message précédent ou bien en tapant
giac "plot(sin(x))"
en ligne de commande (ce qui active une autre section de icas.cc).
Serait-il envisageable de pouvoir obtenir dans une session giac (--texmacs ou sans arguments) soit un graphique ps soit ses données numériques selon un "switch" que l'on pourrait manipuler depuis un programme python ? Ca pourrait être, par exemple, une option de lancement --nograph, mais dans l'idéal (pour plus de flexibilité) on pourra concevoir un switch modifiable dynamiquement pendant des calculs.

3. Le numéro 3, c'est du spam... mais je ne pouvais pas résister. :wink:

4. Cette question n'appartient pas vraiment à cette discussion, cela concerne plutôt l'utilisation de xcas sous windows. Je vais la reposter donc ailleurs.

A+.

parisse
Messages : 5743
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: graphiques

Message par parisse » sam. janv. 07, 2012 7:31 pm

Desole, j'avais zappe les questions... j'espere avoir un peu de temps pour y repondre plus en details la semaine prochaine. Sur le 2/ on peut toujours obtenir les donnees numeriques d'un objet graphique, il suffit de le mettre dans une ligne de commande en ajoutant un ,0 pour creer une liste ne se terminant pas par un objet graphique (car xcas et icas decident de generer un graphique en affichage pour une liste si elle se termine par un objet graphique).

Alek
Messages : 111
Inscription : jeu. oct. 28, 2010 1:20 pm

Re: graphiques

Message par Alek » sam. janv. 07, 2012 7:58 pm

,0, ca marche a merveille (et ca renvoie tout), merci !

Répondre