Configuration de (xm)grace

Grace et plus précisément sa version graphique xmgrace (anciennement xmgr) est un outil permettant de concevoir des graphiques en deux dimensions (XY, polaire, logarithmique, boxplot …) ainsi que faire un peu d’analyse numérique (regression, interpolation, intégration …) et réaliser quelques traitements sur les données. Les graphiques obtenus sont de haute qualité et peuvent être exportés sous divers formats vectoriels (eps, ps, svg) ou non (png, jpg …). Le paquet est disponible sous ubuntu (apt://grace), fedora et la plupart des distributions linux.

site web : plasma-gate.weizmann.ac.il/Grace.

Accents et séparateur des décimaux

Par défaut, les accents ne sont pas pris en charge. Il faut passer un paramètre de langue au lancement de xmgrace pour pouvoir les utiliser. Sur la ligne de commande, lancer xmgrace de la façon suivante :

[user@machine] > LANG=C xmgrace

ou

[user@machine] > LANG=fr_FR xmgrace

Suivant votre distribution, le paramètre LANG=fr_Fr activera les accents et conservera un séparateur des décimaux avec une virgule, tandis que LANG=C activera les accents et changera le séparateur de décimaux en un point. Il est possible d’enregistrer ces paramètres dans un alias pour simplifier l’utilisation. Pour cela, ajouter la ligne suivante dans votre fichier .bashrc ou .profile :

alias xm="LANG=fr_FR xmgrace -geometry 1150x900"

L’option geometry permet quand à elle de faire en sorte que la fenêtre de xmgrace soit suffisamment grande pour voir la totalité du graphique.

Template

Pour éviter d’avoir à saisir systématiquement les mêmes paramètres (épaisseur des bordures, taille du texte …) il est possible de créer un template qui sera chargé automatiquement à l’ouverture du programme. Pour ce faire, créer un graphique vide avec toutes les options qui vous intéressent et sauvegarder le sous le nom Default.agr. Placer ensuite ce fichier dans :

~/.grace/templates/

Si les dossiers n’existent pas, il faut les créer.

Ce fichier Default.agr permet également de définir de nouvelles couleurs pour étoffer un peu la palette proposée par défaut qui est un peu pauvre. Voici, par exemple, les lignes à insérer pour disposer d’une partie des couleurs de bases plus celles de la palette tango. Ces lignes sont à placer à la place de celles définissant les couleurs dans le fichier Default.agr (commençant par @map. Pour ce faire utiliser un éditeur de texte quelconque tel que vim, gedit, emacs …

@map color  0 to (255, 255, 255), "white"
@map color  1 to (  0,   0,   0), "black"
@map color  2 to (255,   0,   0), "red"
@map color  3 to (  0, 255,   0), "green"
@map color  4 to (  0,   0, 255), "blue"
@map color  5 to (148,   0, 211), "violet"
@map color  6 to (255, 165,   0), "orange"
@map color  7 to (  0, 255, 255), "cyan"
@map color  8 to (255,   0, 255), "magenta"
@map color  9 to (114,  33, 188), "indigo"
@map color 10 to (103,   7,  72), "maroon"
@map color 11 to ( 64, 224, 208), "turquoise"
@map color 12 to (  0, 139,   0), "green4"
@map color 13 to (252, 233,  79), "Butter 1"
@map color 14 to (237, 212,   0), "Butter 2"
@map color 15 to (196, 160,   0), "Butter 3"
@map color 16 to (138, 226,  52), "Chameleon 1"
@map color 17 to (115, 210,  22), "Chameleon 2"
@map color 18 to ( 78, 154,   6), "Chameleon 3"
@map color 19 to (252, 175,  62), "Orange 1"
@map color 20 to (245, 121,   0), "Orange 2"
@map color 21 to (206,  92,   0), "Orange 3"
@map color 22 to (114, 159, 207), "Sky Blue 1"
@map color 23 to ( 52, 101, 164), "Sky Blue 2"
@map color 24 to ( 32,  74, 135), "Sky Blue 3"
@map color 25 to (173, 127, 168), "Plum 1"
@map color 26 to (117,  80, 123), "Plum 2"
@map color 27 to ( 92,  53, 102), "Plum 3"
@map color 28 to (233, 185, 110), "Chocolate 1"
@map color 29 to (193, 125,  17), "Chocolate 2"
@map color 30 to (143,  89,   2), "Chocolate 3"
@map color 31 to (239,  41,  41), "Scarlet Red 1"
@map color 32 to (204,   0,   0), "Scarlet Red 2"
@map color 33 to (164,   0,   0), "Scarlet Red 3"
@map color 34 to (238, 238, 236), "Aluminium 1"
@map color 35 to (211, 215, 207), "Aluminium 2"
@map color 36 to (186, 189, 182), "Aluminium 3"
@map color 37 to (136, 138, 133), "Aluminium 4"
@map color 38 to ( 85,  87,  83), "Aluminium 5"
@map color 39 to ( 46,  52,  54), "Aluminium 6"

Lorsque vous choisissez une couleur, vous avez maintenant une palette plus importante :

grace_color

Exportation par défaut

Dans le dossier :

~/.grace/

Créer un fichier gracerc.user contenant les lignes suivantes pour que le format de sortie par défaut soit .eps :

# 
HARDCOPY DEVICE "EPS"

Il sera alors inutile de passer par le menu « print setup » avant d’exporter un graphique. Changer le paramètre "EPS" par le format de sortie qui vous convient.

Script de post-installation pour ubuntu

Voici un script bash dont je me sers lorsque je dois installer une série de paquets après une installation ou réinstallation toute fraiche d’Ubuntu. Ce script est assez simpliste, il installe simplement des paquets les uns après les autres préalablement enregistrés dans une liste. Pour l’écrire je me suis inspiré des nombreux autres scripts du même genre existant sur le web.

Comme tous ces scripts, il est bien entendu adapté à mon utilisation d’ubuntu. La première chose à faire pour l’adapter à vous est de supprimer les paquets qui ne vous intéressent pas et de rajouter les votre. Je ne prétend pas donner ici la liste des paquets indispensable.

Je vous met également en garde, étant donné que ce script doit être lancé avec les droits administrateur il est préférable de le comprendre avant de l’exécuter car il pourrait endommager votre machine.

#!/bin/bash
 
# Germain Vallverdu
# 15 Avril 2011
# <germain.vallverdu@univ-pau.fr>
 
# ----------------------------------------------------------------------------------------
# paquets disponnibles dans les dépots ubuntu
# ----------------------------------------------------------------------------------------
compilateur="build-essential gcc gfortran"
 
python="idle python-qt4 python-numpy python-scipy python-matplotlib pymol bpython python-profiler"
 
editeur="vim-gnome jabref poedit"
 
sciences="grace gnuplot gperiodic gchempaint mpich2"
 
video="vlc mozilla-plugin-vlc libdvdread4 ubuntu-restricted-extras cheese" 
 
son="audacity banshee-extension-alarm banshee-extension-jamendo tuxguitar"
 
graphisme="gimp inkscape povray"
 
latex="texlive texlive-lang-french texlive-latex-extra aspell-fr lyx"
 
divers="filezilla compizconfig-settings-manager acroread pdfsam conky"
 
# paquets à installer
paquets="$compilateur $python $editeur $sciences $video $son $graphisme $latex $divers"
 
# ----------------------------------------------------------------------------------------
# Options de apt-get pour l'installation des paquets
# ----------------------------------------------------------------------------------------
options="--auto-remove --yes -q"
 
# ----------------------------------------------------------------------------------------
# Test des droits administrateur
# ----------------------------------------------------------------------------------------
if [ $USER != "root" -o $UID != 0 ]
then
  echo "Ce script doit être exécuté en tant qu'administrateur (root)."
  echo "Placez sudo devant votre commande :"
  echo "sudo $0"
  echo "Abandon"
  exit 1
fi
 
echo "Assurez-vous d'avoir lu et compris le script avant de l'exécuter."
echo -n "Êtes-vous sûr de savoir ce que vous faites ? (o/n) "
read rep
if [ $rep != "o" ] && [ $rep != "oui" ] && 
   [ $rep != "y" ] && [ $rep != "yes" ]
then
  echo "Pour lire le script, entrez la commande suivante :"
  echo "gedit $0 &"
  exit 1
fi
 
# version d'ubuntu
version=`lsb_release -cs`
echo "* Ajout des dépots pour Ubuntu $version"
 
# ----------------------------------------------------------------------------------------
# ajouts de dépots
# ----------------------------------------------------------------------------------------
 
# partenaires
echo -e "\n* Canonical partners"
cp -v /etc/apt/sources.list /etc/apt/sources.list.bak
echo "sed \"s/# deb http\:\/\/archive.canonical.com/deb http\:\/\/archive.canonical.com/\" /etc/apt/sources.list > sources.list.new"
sed "s/# deb http\:\/\/archive.canonical.com/deb http\:\/\/archive.canonical.com/" /etc/apt/sources.list > sources.list.new
cp -v sources.list.new /etc/apt/sources.list
 
# medibuntu
echo -e "\n* Medibuntu"
wget http://www.medibuntu.org/sources.list.d/${version}.list --output-document=/etc/apt/sources.list.d/medibuntu.list
wget -q http://packages.medibuntu.org/medibuntu-key.gpg -O- | sudo apt-key add -
apt-get -q update
apt-get --yes -q --allow-unauthenticated install medibuntu-keyring
 
codecs="non-free-codecs libdvdcss2"
 
# virtual box
echo "deb http://download.virtualbox.org/virtualbox/debian $version contrib" | sudo tee -a /etc/apt/sources.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 98AB5139 
virtualbox=" virtualbox"
 
# wine
add-apt-repository ppa:ubuntu-wine/ppa
wine=" wine1.3"
 
paquets="$codecs $paquets $virtualbox $wine"
 
# ----------------------------------------------------------------------------------------
# mise à jour des sources de logiciels
# ----------------------------------------------------------------------------------------
echo -e "\napt-get -q clean"
apt-get -q clean
echo -e "\napt-get -q update"
apt-get -q update
echo -e "\napt-get -q --yes upgrade"
apt-get -q --yes upgrade
 
# ----------------------------------------------------------------------------------------
# installation des paquets
# ----------------------------------------------------------------------------------------
for paquet in $paquets
do
    echo -e "\n----------------------------------------------------------------"
    echo " INSTALLATION DE : $paquet"
    echo -e "----------------------------------------------------------------\n"
    apt-get $options install $paquet
done
 
# ----------------------------------------------------------------------------------------
# parametrage de libdvdread4
# ----------------------------------------------------------------------------------------
echo -e "\n----------------------------------------------------------------"
echo " parametrage de libdvdread4"
echo -e "----------------------------------------------------------------\n"
echo -e "/usr/share/doc/libdvdread4/install-css.sh\n"
/usr/share/doc/libdvdread4/install-css.sh
 
# ----------------------------------------------------------------------------------------
# nettoyage
# ----------------------------------------------------------------------------------------
echo -e "\n----------------------------------------------------------------"
echo " PURGE : apt-get -q --yes autoremove"
echo -e "----------------------------------------------------------------\n"
apt-get -q --yes autoremove