Ceci est une ancienne révision du document !



QtiPlot

QtiPlot est un logiciel de traitement et de visualisation de données.

La volonté affichée est de fournir une alternative libre (licence GNU General Public License) à des logiciels similaires mais propriétaires et payants tels que: Origin, SigmaPlot ou encore Regressi.

Prérequis

Installation depuis les dépôts

Depuis Ubuntu 7.10 (Gutsy Gibbon), QtiPlot est disponible dans les dépôts Universe.

Il suffit alors d'installer le paquetqtiplot.

La version de QtiPlot disponible dans les dépôts n'est généralement pas la dernière version disponible.

Installation de la dernière version depuis le site officiel (Payant)

Il est possible de télécharger la dernière version de QtiPlot (sous la forme de paquets) depuis le site officiel.

Bien que QtiPlot soit libre (licence GNU General Public License), les paquets disponibles sur le site officiel sont payants. Les tarifs sont disponibles à l'adresse : http://soft.proindependent.com/pricing.html.

Se référer au site officiel pour l'installation des paquets officiels : http://soft.proindependent.com/qtiplot.html.

Préparation

S'il existe une compilation/installation qui n'est pas triviale, c'est bien celle de QtiPlot. Mais ce grapheur est tellement adapté à la production de documents scientifiques qu'il me semble important de s'y pencher. Précisons que la compilation s'est effectuée correctement avec Jaunty (9.04), Lucid (10.04) et Maverick (10.10). C'est parti :

Installation des dépendances

- QtiPlot peut se compiler sans le support des scripts Python mais il lui faut absolument muParser !

- Il se peut que vous ayez besoin d'autres packages que ceux indiqués ci-dessus.

- Les traductions ne sont pas mises à jour.

- Il se peut qu'un lien soit cassé si une version ultérieure est sortie. Récupérez alors le fichier directement en visitant la page Web.

Commençons par installer les bibliothèques manquantes mais disponibles dans Jaunty, Lucid et Maverick : libboost-all-dev,libgsl0-dev,libqt4-dev,docbook-utils,dblatex,libpng12-dev,libtool,zlib1g-dev,qt4-dev-tools,python-all-dev,libxext-dev,libqtassistant-dev.

  • zlib permet de compresser les fichiers projets de QtiPlot,
  • gsl est une librairie de manipulation de données scientifiques (nombres complexes, FFT, intégration, interpolation, etc.),
  • libpng est utilisé pour l'export des graphes au format png. Nécessite zlib.

Installation de la librairie libEMF

> cd /tmp/
> wget http://downloads.sourceforge.net/project/libemf/libemf/1.0.4/libEMF-1.0.4.tar.gz
> tar xvzf libEMF-1.0.4.tar.gz
> cd libEMF-1.0.4
> ./configure; make; sudo make install

Installation de muParser (>=1.32)

> cd /tmp/
> wget http://downloads.sourceforge.net/project/muparser/muparser/Version%201.34/muparser_v134.tar.gz
> tar xvzf muparser_v134.tar.gz
> cd muparser_v134
> ./configure; make; sudo make install

Installation de la dernière version de sip (>=4.11)

> cd /tmp/
> wget http://www.riverbankcomputing.co.uk/static/Downloads/sip4/sip-4.12.1.tar.gz
> tar xvzf sip-4.12.1.tar.gz
> cd sip-4.11.1/
> python configure.py; make; sudo make install

Installation de la dernière version de PyQt (>=4.7)

Attention : ce logiciel nécessite sip-4.12 et sa compilation est assez longue

> cd /tmp/
> wget http://www.riverbankcomputing.co.uk/static/Downloads/PyQt4/PyQt-x11-gpl-4.8.3.tar.gz
> tar xvzf PyQt-x11-gpl-4.8.3.tar.gz
> cd PyQt-x11-gpl-4.8.3
> python configure.py; make; sudo make install

Installation des dépendances tierces

Créez un répertoire QtiPlot :

> mkdir QtiPlot
> cd QtiPlot

Ce répertoire est important. Nous décompresserons les autres logiciels dedans !!!

Nous allons maintenant compiler toutes ces bibliothèques

Compilation de tamu_anova

     
> wget http://www.stat.tamu.edu/~aredd/tamuanova/tamu_anova-0.2.tar.gz
> tar xvzf tamu_anova-0.2.tar.gz
> cd tamu_anova-0.2
> ./configure 
> make

Compilation de QTexEngine

QTexEngine permet d'utiliser LaTeX dans QtiPlot.

> cd ..
> wget http://download.berlios.de/qtiplot/QTeXEngine-0.3-opensource.zip
> unzip QTeXEngine-0.3-opensource.zip
> cd QTeXEngine
> qmake
> make
  

Compilation de AlGlib

> cd ..
> wget http://www.alglib.net/translator/re/alglib-2.6.0.cpp.zip
> unzip alglib-2.6.0.cpp.zip
> cd cpp
> chmod +x build
> ./build gcc

Vous devez avoir l'arborescence suivante :

QtiPlot
     |-- tamu_anova-0.2
     |-- QTexEngine
     |-- cpp

Compilation de QtiPlot

Téléchargez QtiPlot sur le site de proindependant. La dernière version est la 0.9.8.5. Décompressez l'archive dans ce répertoire QtiPlot. Ce répertoire (qtiplot-0.9.8.5) est appelé QTI_ROOT dans le fichier de configuration ci-dessous. Désormais, vous devez avoir une arborescence du genre :

QtiPlot
     |-- tamu_anova-0.2
     |-- QTexEngine
     |-- cpp
     |-- qtiplot-0.9.8.5
     

Si vous avez déjà compilé d'anciennes version de QtiPlot (par exemple la 0.9.8.4), elles doivent aussi apparaitre dans ce répertoire QtiPlot.

Modification du fichier qwtplot3d.pro

Éditez le fichier 3rdparty/qwtplot3d/qwtplot3d.pro et rajouter la ligne suivante à la ligne 17 :

unix:CONFIG  += staticlib

Modification du fichier qtiplot/qtiplot.pro

Commentez les lignes 233 à 242 :

233 #LIBS        += src/plugins/libQtiPlotdBasePlugin.a
234 #LIBS        += src/plugins/libQtiPlotDatabasePlugin.a                                                                                                   
235 #LIBS        += src/plugins/libQtiPlotCsvPlugin.a
236 #LIBS        += src/plugins/libQtiPlotTexPlugin.a
237 #LIBS        += src/plugins/libQtiPlotOdsPlugin.a
238 #LIBS        += src/plugins/libQtiPlotExcelPlugin.a
239 #LIBS        += src/plugins/libQtiPlotOriginPlugin.a
240 #LIBS        += src/plugins/libQtiPlotEmfExportPlugin.a
241 #LIBS        += ../3rdparty/quazip/lib/libquazip.a
242 #LIBS        += ../3rdparty/EmfEngine/libEmfEngine.a

Configuration du fichier build.conf

Il faut ensuite créer un fichier build.conf dans QTI_ROOT à partir d'un fichier exemple fourni build.conf.example. Voici le mien :

isEmpty( QTI_ROOT ) {
  message( "each file including this config needs to set QTI_ROOT to the dir containing this file!" )
}

##########################################################
##     System specific configuration
##########################################################

SYS_INCLUDEPATH = -I/$$QTI_ROOT/tmp/qtiplot
SYS_LIBS = -L/opt/local/lib

MUPARSER_INCLUDEPATH = /usr/local/include
MUPARSER_LIBS = -lmuparser
GSL_LIBS = -lgsl -lgslcblas

QWT_INCLUDEPATH = $$QTI_ROOT/3rdparty/qwt/src
QWT_LIBS = $$QTI_ROOT/3rdparty/qwt/lib/libqwt.a

QWT3D_INCLUDEPATH = $$QTI_ROOT/3rdparty/qwtplot3d/include
QWT3D_LIBS = $$QTI_ROOT/3rdparty/qwtplot3d/lib/libqwtplot3d.a

ZLIB_INCLUDEPATH = $$QTI_ROOT/3rdparty/zlib/

QUAZIP_INCLUDEPATH = /usr/local/include/quazip
QUAZIP_LIBS = -lquazip

TEX_ENGINE_LIBS = ../../../QtiPlot/QTeXEngine/libQTeXEngine.a
TEX_ENGINE_INCLUDEPATH = ../../../QtiPlot/QTeXEngine/src

TAMUANOVA_INCLUDEPATH = ../../tamu_anova-0.2/
TAMUANOVA_LIBS = ../../tamu_anova-0.2/libtamuanova.a

LIBPNG_LIBS = -lpng

ALGLIB_INCLUDEPATH = ../../../../QtiPlot/cpp/src
ALGLIB_LIBS = ../../../QtiPlot/cpp/out/libalglib.a

##########################################################
## python - only used if python is needed
##########################################################

# the python interpreter to use
# (unix only, windows will use what ever is configured to execute .py files!)
PYTHON = python

##########################################################
## Qt tools - allows to use specific versions
##########################################################

LUPDATE = lupdate
LRELEASE = lrelease

############################################################
##  Target specific configuration: configure Qtiplot itself
############################################################

contains( TARGET, qtiplot ) {
  # building without muParser doesn't work yet
  SCRIPTING_LANGS += muParser
  SCRIPTING_LANGS += Python

  # a console displaying output of scripts; particularly useful on Windows
  # where running QtiPlot from a terminal is inconvenient
#  DEFINES         += SCRIPTING_CONSOLE
#  DEFINES		  += XLS_IMPORT

 #DEFINES         += QTIPLOT_PRO

  # Uncomment the following line if you want to perform a custom installation using the *.path variables defined in ./qtiplot.pro.
 # CONFIG          += CustomInstall

  # Uncomment the following line if you want to build QtiPlot as a browser plugin (not working on Internet Explorer).
 #CONFIG          += BrowserPlugin
  
  CONFIG          += release
#  CONFIG          += debug
}

Compilation

Voilà, a priori, vous êtes parés pour la compilation de QtiPlot. Se mettre dans QTI_ROOT puis :

> qmake qtiplot.pro
> make

La compilation vous crée un fichier exécutable nommé qtiplot qui se trouve dans QTI_ROOT/qtiplot. Vous pouvez installer ce binaire plus les docs, traductions et pages de manuel avec la commande :

> sudo make install

Bon courage…

Ce qui ne fonctionne toujours pas :

1. Le plugin pour firefox

2. La mise à jour des traductions

Soucis

  • QtiPlot pose plein de soucis lorsque l'on n'a pas bien installé les parties tierces. Attention donc à être bien rigoureux.
  • Un make clean provoque l'erreur suivante :

make[1]: entrant dans le répertoire « /home/raoul/QtiPlot/qtiplot-0.9.8.4/manual »

  make[1]: *** Pas de règle pour fabriquer la cible « clean ». Arrêt.
  make[1]: quittant le répertoire « /home/raoul/QtiPlot/qtiplot-0.9.8.4/manual »
  make: *** [sub-manual-clean] Erreur 2

Pour la contourner, modifier le fichier QTI_ROOT/qtiplot.pro en commentant (avec un #), la ligne N°4 qui débute par manual

  • Au démarrage, QtiPlot vous propose d'aider le développeur en faisant une donation puis vous dirige vers le site WEB. Après avoir fait un don, vous pouvez supprimer ces deux fonctionnalités : commentez la ligne N°15958 du fichier ApplicationWindow.cpp avec deux shlashes ainsi que la ligne N°61 du fichier QtiPlotApplication.cpp qui se trouvent dans QTI_ROOT/qtiplot/src/core/.

Un excellent manuel se trouve ici. Il est aussi fourni sous forme PDF avec les sources.

Version installée via un paquet

Pour supprimer cette application, il suffit de supprimer son paquet. La configuration de l'application sera conservée ou supprimée selon la méthode de désinstallation que vous choisirez.

Version installée depuis les sources

Se placer dans le répertoire où vous avez décompressé QtiPlot (appelé QTI_ROOT plus haut) puis :

> sudo make uninstall

Contributeurs : Volfoni54

  • qtiplot.1300644807.txt.gz
  • Dernière modification: Le 20/03/2011, 19:13
  • par volfoni54