Quelques graphiques interactifs avec R

October 1, 2009
By

This post was kindly contributed by Alea - R - go there to comment and to read the full post.

Aperçu de quelques fonctions et extensions permettant de produire des graphiques interactifs pour l'exploration ou l'analyse de données.

Fonctions graphiques interactives de R

R propose de base quelques fonctions pour interagir avec les graphiques qu'il produit.

Identification d'outliers

plot(d$t1 ~ d$t2)    
outliers <- identify(d$t2, d$t1) 
dput(outliers, "")

Interaction entre R et Ggobi

Le package rggobi permet quelques fonctions d'interaction entre R et le logiciel de visualisation de données multidimensionnelles Ggobi.

Exemple : visulisation d'une ACM

load("intro/donnees.Rda")

library(rggobi)
library(MASS)

## On fait l'ACM
acm <- mca(d[,c("sexe", "csp", "diplo", "matri", "region", "lunettes")], nf=5)

## On concatène à la fois les résultats des lignes et des colonnes
dr <- as.data.frame(acm$rs)
dr$type <- 'r'
dc <- as.data.frame(acm$cs)
dc$type <- 'c'
df <- rbind(dc,dr)

## On visualise le tout avec Ggobi en modifiant couleur et glyphe pour
## différencier lignes et colonnes.
g <- ggobi(df)
glyph_colour(g[1]) <- ifelse(df$type == 'r', 1, 2)
glyph_size(g[1]) <- ifelse(df$type == 'r', 1, 3)
glyph_type(g[1]) <- ifelse(df$type == 'r', 1, 6)
shadowed(g[1]) <- FALSE
labelled(g[1]) <- TRUE

ade4TkGUI

Le package ade4TkGUI permet d'obtenir des représentations interactives de résultats obtenus avec la bibliothèque ade4. Il y a notamment une fonctionnalité de visualisation de classifications très intéressante.

Pour l'utiliser il suffit de charger le package et de lancer l'interface :

library(ade4TkGUI)
ade4TkGUI()

iplots

iplots est un package nécessitant rJava et permettant également des graphiques interactifs. Une fois chargé, on peut utiliser les fonctions imosaic, ibar, iplot, ihist, etc.

Voir :

http://www.rosuda.org/iplots/

playwith

Ce paquet permet de wrapper un grpahique dans une fenêtre GTK permettant des fonctionnalités de zoom, de labellisation, etc. A noter que du coup le rendu des graphiques est effectué par cairo, ce qui donne des résultats plus jolis mais un rendu plus lent.

library(playwith)
playwith(plot(acm))
playwith(plot(d$age))

Tags:

Comments are closed.