• [^] # Re: R

    Posté par . En réponse au journal Faire des graphiques à partir de données : comparaison. Évalué à 2.

    Bonjour,
    Concernant Gnuplot, je ne pourrais répondre, quelqu'un d'autre connaissant à la fois R et Gnuplot pourrait t'éclairer.
    Quant à Tikz, on configure les dépendances système de façon adéquate (distribution LaTeX) et après, Tikz sera considéré comme un périphérique de graphique au même titre que les autres (PDF, PNG, JPG, X11, ...). Cela est valable quel que soit le système graphique qu'on souhaite utiliser et peu importe les fonctions graphiques qu'on manipule, notamment mettre plusieurs graphiques sur une même zone de rendu. Je reprends le même exemple :

    invisible(sapply(c("ggplot2", "tikzDevice", "grid", "gridExtra"), function(xxx) {
     library(xxx, character.only = TRUE)
    }))
    humPop <- read.csv("./hum-pop.csv")
    names(humPop) <- c("Year", "Population")
    humLin <- qplot(x = Year, y = Population, data = humPop, geom = c("point", "smooth"), main = "Linear")
    humLog <- qplot(x = Year, y = Population, data = humPop, geom = c("point", "smooth"), log = "y", main = "Logarithmic")
    #Les sorties vont dans le périphérique par défaut
    grid.arrange(humLin, humLog, ncol = 2, main = "Earth Population Over Time")
    #Nous indiquons le périphérique de destination des sorties
    tikz("plotting_outputs.tex")
    grid.arrange(humLin, humLog, ncol = 2, main = "Earth Population Over Time")
    dev.off()

    La sortie ressemblera à ça :

    Human Population

    Dans le fichier TEX généré, ne pas oublier d'inclure le préambule et l'environnement document, quelque chose du genre :

    \documentclass[10pt]{article}
    \usepackage{tikz}
    \usepackage[active,tightpage,psfixbb]{preview}
    \PreviewEnvironment{pgfpicture}
    \setlength\PreviewBorder{0pt}
    \usepackage[T1]{fontenc}
    \usetikzlibrary{calc}
    \batchmode
    \begin{document}
    %contenu du fichier généré en R
    \end{document}

    Le mainteneur du binding de Tikz en R est Yihui Xie ; il a écrit d'autres bibliothèques spécialisées dans le traitement de LaTeX, Markdown, HTML et compagnies : voir sa page sur GitHub. En particulier, knitr est un authentique couteau suisse.