Interfaces utilisateur et rapports statistiques avec R et Sas
Introduction
Chapitre 1. Environnement de travail
Chapitre 2. Le langage R
Chapitre 3. Rapports statistiques
3.1. La librairie R2HTML
3.2. La librairie odfWeave
3.2.1. Introduction
3.2.2. Exemples d'utilisation
3.3. Exercices
Chapitre 4. Interfaces utilisateur
Chapitre 5. Bases de données et langage Sql
Annexe A : une applette Java
Annexe B : le logiciel Sas
Page d'accueil Table des matières Niveau supérieur Page précédente Bas de la page Page suivante Démarrage du logiciel Webographie du module Glossaire du module

3.2.1. Introduction

Lorsque vous rédigez un rapport de statistique avec un traitement de texte (Word, Writer...), vous le faites généralement de façon artisanale avec des copier-coller de graphiques ou de statistiques obtenus sous R. Si ce rapport doit être répété dans le temps (avec des données actualisées), il vaut mieux recourir à une approche plus systématique. C'est ce que permet la librairie odfWeave avec le traitement de texte Writer de la suite OpenOffice ([OO]), que vous pouvez télécharger gratuitement s'il n'est pas installé sur votre machine.

Cette approche consiste à insérer directement dans le document Writer des instructions R générant des statistiques ou des graphiques (voir exemple au format writer ou pdf). Ensuite, vous n'avez plus qu'à exécuter une commande (odfWeave) permettant de remplacer chaque morceau de code R par son résultat (voir résultat au format writer ou pdf) :

# lisez la suite avant d'exécuter ce code sous Windows !
library(odfWeave)
setwd("C:/Documents and Settings/raffinat") 	# dossier à adapter 
odfWeave("exemple1.odt", "resultat1.odt")	# à adapter

Ce code ne fonctionne que si votre installation a l'utilitaire adéquat pour compresser ou décompresser des documents (zip et unzip). Avec le système d'exploitation Linux, c'est en principe le cas contrairement à Windows (mais vérifiez quand même !).

J. Barnier ([ALEA]) propose comme remède de placer deux fichiers nommés zip.exe et unzip.exe (télécharger) dans votre répertoire système, c’est à dire en général soit c:\windows, soit c:\winnt.

Une autre solution est d'installer l'utilitaire de compression 7-zip ([7z]), puis de redéfinir la fonction odfWeave :

# redéfinition de la fonction odfWeave (compression avec 7z)
odfWeave = function (file, dest) {
	require(odfWeave)
	zip = '"c:/Program Files/7-Zip/7z.exe"'	
		# vérifier l'installation du logiciel de compression 7z
	cmd = c( paste(zip,"a -tzip $$file$$ .") , paste(zip,"e -tzip $$file$$") )
	odfWeave:::odfWeave(file, dest, control=odfWeaveControl(zipCmd=cmd))
}
# utilisation inchangee
setwd("C:/Documents and Settings/raffinat") 	# dossier à adapter
odfWeave("exemple1.odt", "resultat1.odt")	# à adapter

Avec cette deuxième solution, un message apparemment inquiétant apparaît lorsque vous cherchez à ouvrir le fichier writer final (fichier corrompu), mais heureusement tout se passe bien si vous demandez la réparation de ce fichier. Ce message étant souvent caché par d'autres fenêtres, j'ai plusieurs fois attendu en vain en me demandant pourquoi le fichier ne s'ouvrait pas. Espérons que ce bug sera résolu...

Page d'accueil Table des matières Niveau supérieur Page précédente Haut de la page Page suivante Démarrage du logiciel Webographie du module Glossaire du module