{"id":3137,"date":"2017-03-30T10:16:34","date_gmt":"2017-03-30T14:16:34","guid":{"rendered":"http:\/\/bioinfo.iric.ca\/?p=3137\/"},"modified":"2017-09-12T11:40:54","modified_gmt":"2017-09-12T15:40:54","slug":"creer-un-beau-tableau-graphique-avec-r","status":"publish","type":"post","link":"https:\/\/bioinfo.iric.ca\/fr\/creer-un-beau-tableau-graphique-avec-r\/","title":{"rendered":"Cr\u00e9er un beau tableau graphique avec R"},"content":{"rendered":"<p>Bonjour \u00e0 tous,<\/p>\n<p>Aujourd&rsquo;hui, je vais vous parler de <a href=\"https:\/\/cran.r-project.org\/web\/packages\/formattable\/index.html\">formattable<\/a>.<\/p>\n<blockquote><p>This package is designed for applying formatting on vectors and data frames to make data presentation easier, richer, more flexible and hopefully convey more information.<\/p><\/blockquote>\n<p>Nous allons voir comment utiliser cette librairie pour interpr\u00e9ter nos donn\u00e9es en un coup d&rsquo;oeil, \u00e0 l&rsquo;aide de quelques lignes de code (vous pouvez suivre les indications ci-dessous ou aller regarder tout le code disponible sur <a href=\"https:\/\/bitbucket.org\/eaudemard\/blog_script\/src\/11a268cbab6d46c8277b59e0613789bf3e52e058\/formattable\/?at=master\">git<\/a>). Avant d&rsquo;aller plus loin, j&rsquo;aimerais pr\u00e9ciser que cette librairie est g\u00e9n\u00e9ralement utilis\u00e9e pour afficher des tableaux dans un document dynamique (comme un rapport) g\u00e9n\u00e9r\u00e9 par une autre librairie, comme <a href=\"http:\/\/rmarkdown.rstudio.com\/index.html\">R markdown<\/a>. Mais ici, j&rsquo;ai choisi de restreindre le sujet de cet article \u00e0 l&rsquo;utilisation de la premi\u00e8re librairie seulement. La seconde fera peut-\u00eatre l&rsquo;objet d&rsquo;un second article. En attendant, vous pouvez trouver de l&rsquo;aide sur la page web de R markdown ou sur le web (comme sur <a href=\"http:\/\/stackoverflow.com\/questions\/34955424\/generate-formattable-widgets-in-a-loop-in-an-r-markdown-document\"> stackoverflow<\/a>).<\/p>\n<h3><u>Donn\u00e9es de travail:<\/u><\/h3>\n<p>Je vous propose de travailler sur des donn\u00e9es publi\u00e9es par C\u00e9line M. Laumont and et<em> al.<\/em>\u00a0dans l&rsquo;article <a href=\"http:\/\/www.nature.com\/articles\/ncomms10238#supplementary-information\"> Global proteogenomic analysis of human MHC class I-associated peptides derived from non-canonical reading frames<\/a>, avec le tableau trouv\u00e9 dans \u00ab\u00a0Supplementary Data 2\u00a0\u00bb. Ce tableau contient des donn\u00e9es sur des peptides cryptiques au niveau g\u00e9nomique et pro\u00e9omique.<\/p>\n<p><center><br \/>\n<a href=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/excel-1.png\"><img decoding=\"async\" class=\"alignnone wp-image-3111\" src=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/excel-1-300x74.png\" alt=\"\" width=\"1215\" height=\"300\" srcset=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/excel-1-200x50.png 200w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/excel-1-300x74.png 300w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/excel-1-400x99.png 400w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/excel-1-600x149.png 600w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/excel-1-768x191.png 768w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/excel-1-800x199.png 800w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/excel-1-1024x254.png 1024w\" sizes=\"(max-width: 1215px) 100vw, 1215px\" \/><\/a><br \/>\n<strong>Figure 1.<\/strong> Une version Excel des premi\u00e8res lignes du tableau.<\/center>&nbsp;<\/p>\n<h3><u>Cr\u00e9er votre premier tableau\u00a0<em>formattable<\/em> :<\/u><\/h3>\n<p>Tout d&rsquo;abord, il faut commencer par:<\/p>\n<ol>\n<li>installer la librairie dans votre R (ou Rstudio):<\/li>\n<pre class=\"r\"><code> install.packages(\"formattable\") <\/code><\/pre>\n<li>charger la librairie et les donn\u00e9es:<\/li>\n<pre class=\"r\"><code># Charger la librarie avant de l'utiliser \r\nlibrary(formattable) \r\n# Charger les donn\u00e9es\r\ntab = read.table(\".\/Supplementary_table_2_CrypticMAPs.txt\", header=T, sep='\\t', stringsAsFactors=F) \r\n# S\u00e9lectionner quelques colonnes comme dans le tableau Excel \r\ntab_reduce = tab[, c(1, 2, 3, 4, 6, 5, 7, 9, 11, 18, 15, 19, 22, 23, 24, 25)] \r\n# Changer le nom de certaines colonnes pour diminuer leur taille\r\ncolnames(tab_reduce) = c(\"peptide_sequence\", \"chr\", \"start\", \"stop\", \"strand\", \r\n       \"length\", \"spliced\", \"frame\", \"best_IC50\", \"gene_id\", \"gene_FPKM\", \r\n       \"mascot_score\", \"intensity_1\", \"intensity_2\", \"intensity_3\", \"intensity_4\"\r\n)\r\n<\/code><\/pre>\n<\/ol>\n<p>Nous pouvons maintenant cr\u00e9er notre premier tableau <em>formattable<\/em> en appelant directement la fonction <em>formattable<\/em>:<\/p>\n<pre class=\"r\"><code># Cr\u00e9er un tableau formattable \r\nwidget_formattable = formattable(tab_reduce) \r\n# Afficher dans un navigateur web ou dans RStudio (si vous l'utilisez) \r\nwidget_formattable \r\n<\/code>\r\n<\/pre>\n<p><a href=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable1.png\"><img decoding=\"async\" class=\"alignnone wp-image-3122 aligncenter\" src=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable1-300x91.png\" alt=\"\" width=\"1009\" height=\"306\" srcset=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable1-200x61.png 200w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable1-300x91.png 300w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable1-400x122.png 400w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable1-600x183.png 600w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable1-768x234.png 768w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable1-800x244.png 800w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable1-1024x312.png 1024w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable1-1200x365.png 1200w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable1.png 1911w\" sizes=\"(max-width: 1009px) 100vw, 1009px\" \/><\/a><\/p>\n<p style=\"text-align: center;\"><strong>Figure 2.<\/strong> R\u00e9sultat visuel apr\u00e8s l&rsquo;ex\u00e9cution de <em>formattable<\/em>. Toutes les donn\u00e9es sont disponibles en les faisant d\u00e9filer dans la page web!<\/p>\n<h3><u>Corriger le format de la colonne &lsquo;gene_FPKM&rsquo;:<\/u><\/h3>\n<p>Dans la librairie <em>formattable<\/em>,\u00a0il existe plusieurs fonctions pour formater les vecteurs num\u00e9riques, comme: <em>percent<\/em>, <em>comma<\/em>, <em>currency<\/em>, <em>accounting<\/em> and <em>scientific<\/em>. Ces fonctions cr\u00e9ent des vecteurs num\u00e9riques format\u00e9s \u00e0 l&rsquo;aide de quelques param\u00e8tres et de r\u00e8gles pr\u00e9-d\u00e9finies. Pour plus de d\u00e9tails, je vous invite \u00e0 regarder <a href=\"https:\/\/cran.r-project.org\/web\/packages\/formattable\/vignettes\/introduction.html\"> cette page<\/a>.<\/p>\n<p>Dans notre cas, la colonne &lsquo;gene_FPKM&rsquo; est automatiquement charg\u00e9e comme un vecteur de &lsquo;chr&rsquo; par <em>read.table<\/em> \u00e0 cause des quelques valeurs manquantes (&lsquo;none&rsquo;). Il est n\u00e9cessaire de modifier la colonne en un vecteur num\u00e9rique avant d&rsquo;aller plus loin.<\/p>\n<pre class=\"r\"><code># Un message d'erreur nous avertit qu'il y a des valeurs 'None' et qu'elles seront remplac\u00e9es par des NA. -&gt; C'est correct.\r\ntab_reduce$gene_FPKM = as.numeric(tab_reduce$gene_FPKM) \r\n# Utiliser 'accounting' pour formater les valeurs num\u00e9riques  \r\ntab_reduce$gene_FPKM = accounting(tab_reduce$gene_FPKM) \r\n<\/code>\r\n<\/pre>\n<h3><u>Afficher des \u00e9l\u00e9ment graphiques en fonction des donn\u00e9es de chaque colonne:<\/u><\/h3>\n<p>Commen\u00e7ons par utiliser les fonctions d\u00e9j\u00e0 pr\u00e9sentes dans la librairie, <em>color_tile()<\/em>, <em>color_bar()<\/em>, <em>area()<\/em> and <em>normalize_bar()<\/em>, pour mettre en valeur les donn\u00e9es et ainsi faciliter la comparaison de leur magnitude (voir Figure 3).<\/p>\n<p><center><a href=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable2.png\"><img decoding=\"async\" class=\"alignnone wp-image-3123\" src=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable2-300x83.png\" alt=\"\" width=\"1146\" height=\"317\" srcset=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable2-200x56.png 200w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable2-300x83.png 300w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable2-400x111.png 400w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable2-600x167.png 600w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable2-768x213.png 768w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable2-800x222.png 800w\" sizes=\"(max-width: 1146px) 100vw, 1146px\" \/><\/a><br \/>\n<strong>Figure 3.<\/strong> Ajout d&rsquo;\u00e9l\u00e9ments graphiques pour faciliter la comparaison des diff\u00e9rentes valeurs.<\/center>&nbsp;<\/p>\n<p>Dans la Figure 3, il faut noter que nous souhaitons mettre en valeur les faibles scores de la colonne IC50, contrairement aux autres colonnes: gene FPKM, mascot_score and intensity. C&rsquo;est aussi important de savoir que les intensit\u00e9s doivent \u00eatre compar\u00e9es par peptide. En cons\u00e9quence, l&rsquo;\u00e9l\u00e9ment graphique doit partager la m\u00eame \u00e9chelle pour toutes les colonnes d&rsquo;intensit\u00e9, cette fonctionnalit\u00e9 sera r\u00e9alis\u00e9e par la fonction <em>area<\/em>.<\/p>\n<p>Toute ces contraintes peuvent \u00eatre appliqu\u00e9es en quelques lignes en ajoutant une liste d&rsquo;\u00e9l\u00e9ments graphiques identifi\u00e9s par le m\u00eame nom que la colonne o\u00f9 l&rsquo;on veut les afficher: &lsquo;best_IC50&rsquo;, &lsquo;gene_FPKM&rsquo;, &lsquo;mascot_score&rsquo; et les quatre &lsquo;intensity_<em>x<\/em>&lsquo;.<\/p>\n<pre class=\"r\"><code># Utilisation de fonctions 'built-in' pour afficher des \u00e9lements graphiques. \r\nwidget_formattable = formattable(tab_reduce, list(\r\n\tbest_IC50 = color_tile('lightblue', 'white'),\r\n        # Nous avons besoin de mettre na.rm=TRUE pour g\u00e9rer les valeurs NA pr\u00e9sentes dans les donn\u00e9es\r\n\tgene_FPKM = color_bar('red', na.rm = TRUE),\r\n\tmascot_score = color_tile('white', 'orange'),\r\n        area(col=c(intensity_1, intensity_2, intensity_3, intensity_4)) ~ normalize_bar(\"pink\")\r\n))\r\nwidget_formattable\r\n<\/code>\r\n<\/pre>\n<h3><u>Pour aller plus loin:<\/u><\/h3>\n<p>La librairie <em>formattable<\/em> permet d&rsquo;ajouter des \u00e9l\u00e9ments graphiques en ajoutant des \u00e9l\u00e9ments HTML, principalement \u00e0 l&rsquo;aide des balises &lt;span&gt;, en utilisant une fonction g\u00e9n\u00e9rique &lsquo;<em>formatter<\/em>&lsquo;. Un exemple simple de l&rsquo;utilisation de cette fonction peut \u00eatre fait pour afficher <strong>en gras<\/strong> le sens du peptide (strand) en ajoutant dans la liste:<\/p>\n<pre class=\"r\"><code>strand = formatter('span', style=style(font.weight = \"bold\"))<\/code><\/pre>\n<p>Il est aussi possible d&rsquo;en faire une utilisation plus complexe en utilisant, <em><a href=\"https:\/\/stat.ethz.ch\/R-manual\/R-devel\/library\/base\/html\/ifelse.html\">ifelse<\/a><\/em> pour cr\u00e9er vos propres fonctions:<\/p>\n<ul>\n<li>pour changer le visuel d&rsquo;une colonne en fonction d&rsquo;une autre colonne:<\/li>\n<\/ul>\n<pre class=\"r\"><code>none_formatter <- function() {\r\n    formatter(\"span\", \r\n        style = ~ style(color = ifelse(gene_id == \"none\", \"blue\", \"black\"))\r\n    )\r\n}\r\n<\/code><\/pre>\n<ul>\n<li> pour afficher des ic\u00f4nes de diff\u00e9rentes couleurs repr\u00e9sentant des valeurs bool\u00e9ennes:<\/li>\n<\/ul>\n<pre class=\"r\"><code>icon_formatter <- function() {\r\n    formatter(\"span\",\r\n        style = x ~ style(color = ifelse(x, \"green\", \"red\")), x ~ icontext(ifelse(x, \"ok\", \"remove\"), \"\")\r\n    )\r\n}\r\n<\/code><\/pre>\n<ul>\n<li>modifier les fonctions existantes pour supprimer un effet de bord sur les valeurs 'NA' (voir Figure 3):<\/li>\n<\/ul>\n<pre class=\"r\"><code>color_bar_NA <- function(color = \"lightgray\", fun = \"proportion\", ...) {\r\n    fun <- match.fun(fun)\r\n    replace_na <- function(fun, x, ...) {\r\n        x[which(is.na(x))] = 0\r\n        return(fun(as.numeric(x), ...))\r\n    }\r\n    formatter(\"span\",\r\n        style = function(x) style(\r\n            display = \"inline-block\",\r\n            direction = \"rtl\",\r\n            \"border-radius\" = \"4px\",\r\n            \"padding-right\" = \"2px\",\r\n            \"background-color\" = csscolor(color),\r\n            width = percent(replace_na(fun, x, ...))\r\n        )\r\n    )\r\n}\r\n<\/code><\/pre>\n<p>Toutes ces modifications appliqu\u00e9es \u00e0 nos donn\u00e9es, avec le code ci-dessous, nous donne la Figure 4.<\/p>\n<pre class=\"r\"><code># Nous pouvons aussi ajouter un alignement pour chaque colonne avec un vecteur de 'char'\r\nalign_column=c(\"l\",\"r\",\"r\",\"r\",\"c\",\"r\",\"c\",\"l\",\"r\",\"r\",\"r\",\"r\",\"r\",\"r\",\"r\",\"r\")\r\nwidget_formattable = formattable(tab_reduce, align=align_column, list(\r\n\tpeptide_sequence = none_formatter(),\r\n\tstrand = formatter('span', style=style(font.weight = \"bold\")),\r\n\tspliced = icon_formatter(),\r\n\tbest_IC50 = color_tile('lightblue', 'white'),\r\n\tgene_id = none_formatter(),\r\n\tgene_FPKM = color_bar_NA('red'),\r\n\tmascot_score = color_tile('white', 'orange'),\r\n\tarea(col=c(intensity_1, intensity_2, intensity_3, intensity_4)) ~ normalize_bar(\"pink\")\r\n))\r\nwidget_formattable\r\n<\/code><\/pre>\n<p><center><a href=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable3.png\"><img decoding=\"async\" class=\"alignnone wp-image-3124\" src=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable3-300x83.png\" alt=\"\" width=\"1139\" height=\"315\" srcset=\"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable3-200x56.png 200w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable3-300x83.png 300w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable3-400x111.png 400w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable3-600x167.png 600w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable3-768x213.png 768w, https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/formattable3-800x222.png 800w\" sizes=\"(max-width: 1139px) 100vw, 1139px\" \/><\/a><br \/>\n<strong>Figure 4.<\/strong> Whaou!!!<\/center>&nbsp;<\/p>\n<h3><u>Sauvegarder en fichiers HTML, JPEG, PNG ou PDF:<\/u><\/h3>\n<p>La librairie <em>formattable<\/em> permet d'exporter le tableau seulement dans un fichier au format HTML. Cependant, il existe une <a href=\"https:\/\/github.com\/renkun-ken\/formattable\/issues\/26\">solution<\/a> qui permet de convertir le tableau au format JPEG, PNG or PDF. Cette solution est un peu plus complexe et nous allons commencer par la version HTML.<\/p>\n<p>Encore une fois, on nous simplifie la t\u00e2che. Il suffit de remplacer la fonction 'formattable' par 'format_table' pour obtenir le texte HTML de notre tableau. \u00c0 ce texte, il faut ajouter un '<em>html_header<\/em>' pour pr\u00e9ciser le <a href=\"https:\/\/www.w3schools.com\/css\/css_intro.asp\">style css<\/a>, c'est-\u00e0-dire le style visuel que nous voulons appliquer \u00e0 notre tableau. <\/p>\n<pre class=\"r\"><code>html_header=\"\r\n&lthead&gt\r\n  &ltmeta charset=\\\"utf-8\\\"&gt\r\n  &ltmeta name=\\\"viewport\\\" content=\\\"width=device-width, initial-scale=1\\\"&gt\r\n  &ltlink rel=\\\"stylesheet\\\" href=\\\"https:\/\/maxcdn.bootstrapcdn.com\/bootstrap\/3.3.7\/css\/bootstrap.min.css\\\"&gt\r\n&lt\/head&gt\r\n&ltbody&gt\r\n\"\r\n\r\nhtml_table = format_table(tab_reduce, align=align_column, list(\r\n\tpeptide_sequence = none_formatter,\r\n\tstrand = formatter('span', style=style(font.weight = \"bold\")),\r\n\tspliced = icon_formatter,\r\n\tbest_IC50 = color_tile('lightblue', 'white'),\r\n\tgene_id = none_formatter,\r\n\tgene_FPKM = color_bar_NA('red'),\r\n\tmascot_score = color_tile('white', 'orange'),\r\n\tarea(col=c(intensity_1, intensity_2, intensity_3, intensity_4)) ~ normalize_bar(\"pink\")\r\n))\r\n\r\nwrite(paste(html_header, html_table, sep=\"\"), \".\/Supplementary_table_2_CrypticMAPSs.html\")\r\n<\/code>\r\n<\/pre>\n<p>Cela fonctionnne sans le '<em>html_header<\/em>', mais dans ce cas, nous aurions perdu les ic\u00f4nes et le tableau aurait \u00e9t\u00e9 affich\u00e9 dans un format plus 'spartiate'.<\/p>\n<p>Il ne nous reste plus qu'\u00e0 finir, avec l'exportation au format JPEG, PNG et PDF. Pour ajouter cette fonctionnalit\u00e9, nous avons besoin de la fonction 'export_table' et de deux librairies. Commen\u00e7ons par les installer:<\/p>\n<pre class=\"r\"><code>install.packages('htmltools')\r\ninstall.packages('webshot')\r\nlibrary(htmltools)\r\nlibrary(webshot)\r\nwebshot::install_phantomjs()\r\n\r\n# Exporter le tableau en PNG, PDF ou JPEG\r\n# Voir: https:\/\/github.com\/renkun-ken\/formattable\/issues\/26\r\nexport_formattable <- function(f, file, width = \"100%\", height = NULL, \r\n                               background = \"white\", delay = 0.2)\r\n{\r\n  w <- as.htmlwidget(f, width = width, height = height)\r\n  path <- html_print(w, background = background, viewer = NULL)\r\n  url <- paste0(\"file:\/\/\/\", gsub(\"\\\\\\\\\", \"\/\", normalizePath(path)))\r\n  webshot(url,\r\n          file = file,\r\n          selector = \".formattable_widget\",\r\n          delay = delay)\r\n}\r\n<\/code>\r\n<\/pre>\n<p>Maintenant nous pouvons exporter le tableau dans le format voulu avec l'objet '<em>widget_formattable<\/em>', comme ceci:<\/p>\n<pre class=\"r\"><code>\r\nexport_formattable(widget_formattable, \".\/Supplementary_table_2_CrypticMAPSs.png\")\r\n# Pour le PDF, les couleurs ne sont pas disponibles.  C'est un probl\u00e8me connu. \r\n# Voir: https:\/\/github.com\/renkun-ken\/formattable\/issues\/53\r\nexport_formattable(widget_formattable, \".\/Supplementary_table_2_CrypticMAPSs.pdf\")\r\nexport_formattable(widget_formattable, \".\/Supplementary_table_2_CrypticMAPSs.jpeg\")\r\n<\/code>\r\n<\/pre>\n<h3><u>Pour conclure:<\/u><\/h3>\n<p>Cette librairie est tr\u00e8s efficace pour afficher un <em>data.frame<\/em> dans un format pratique et ce, dans notre navigateur web pr\u00e9f\u00e9r\u00e9 (compar\u00e9 View() et head()). De plus, les fonctions d\u00e9j\u00e0 fournies: <em>color_tile()<\/em>, <em>color_bar()<\/em>, <em>area()<\/em> and <em>normalize_bar()<\/em> devrait vous permettre d'analyser vos donn\u00e9es en un coup d'oeil. Si ce n'est pas suffisant, on peut facilement personnaliser les \u00e9l\u00e9ments graphiques. C'est un peu plus compliqu\u00e9 \u00e0 r\u00e9aliser mais avec les exemples pr\u00e9sents dans cet article, vous devriez arriver \u00e0 vos fins. Pour les lecteurs de l'IRIC, il est aussi possible de demander l'aide de votre plate-forme favorite ;). \u00c0 travers cet article, nous avons aussi identifi\u00e9 qu'il \u00e9tait impossible d'exporter en couleurs au format PDF. En attendant un correctif, il est possible d'exporter au format PNG et d'utiliser un autre logiciel pour transformer le fichier en PDF ou d'utiliser le format HTML.<\/p>\n<p>J'esp\u00e8re que vous avez appr\u00e9ci\u00e9 cet article et je vous souhaite beaucoup de plaisir avec <em>formattable<\/em>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bonjour \u00e0 tous, Aujourd&rsquo;hui, je vais vous parler de formattable. This package is designed for applying formatting on vectors and data frames to make data presentation easier, richer, more flexible and hopefully convey more information. Nous allons voir comment utiliser cette librairie pour interpr\u00e9ter nos donn\u00e9es en un coup d&rsquo;oeil, \u00e0 l&rsquo;aide de quelques lignes de code (vous pouvez suivre les indications ci-dessous ou aller regarder tout le code disponible sur git). Avant d&rsquo;aller plus loin, j&rsquo;aimerais pr\u00e9ciser que cette <a href=\"https:\/\/bioinfo.iric.ca\/fr\/creer-un-beau-tableau-graphique-avec-r\/\"> [&#8230;]<\/a><\/p>\n","protected":false},"author":9,"featured_media":3158,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[24,44],"tags":[129,128],"class_list":["post-3137","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-langage-r","category-visualisation-de-donnees","tag-analyse-de-donnees","tag-programmation-web"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/bioinfo.iric.ca\/wpbioinfo\/wp-content\/uploads\/2017\/03\/featured_formattable.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bioinfo.iric.ca\/fr\/wp-json\/wp\/v2\/posts\/3137","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bioinfo.iric.ca\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bioinfo.iric.ca\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bioinfo.iric.ca\/fr\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/bioinfo.iric.ca\/fr\/wp-json\/wp\/v2\/comments?post=3137"}],"version-history":[{"count":10,"href":"https:\/\/bioinfo.iric.ca\/fr\/wp-json\/wp\/v2\/posts\/3137\/revisions"}],"predecessor-version":[{"id":3699,"href":"https:\/\/bioinfo.iric.ca\/fr\/wp-json\/wp\/v2\/posts\/3137\/revisions\/3699"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bioinfo.iric.ca\/fr\/wp-json\/wp\/v2\/media\/3158"}],"wp:attachment":[{"href":"https:\/\/bioinfo.iric.ca\/fr\/wp-json\/wp\/v2\/media?parent=3137"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bioinfo.iric.ca\/fr\/wp-json\/wp\/v2\/categories?post=3137"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bioinfo.iric.ca\/fr\/wp-json\/wp\/v2\/tags?post=3137"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}