2016-02-24 2 views
0

J'utilise rCharts pour créer un graphique à bulles Highcharts et j'ai du mal à changer l'étiquette de la bulle. Dans cet exemple, je souhaite que le nom de la branche apparaisse dans la bulle au lieu du y par défaut. Exemple de données et le code que j'utilise:rCharts - Étiquette de données pour diagramme à bulles Highcharts

branch <- c('A', 'B', 'C', 'D', 'E', 'F') 
cases <- c('100', '200', '300', '400', '500', '600') 
prop <- c('600', '500', '400', '300', '200', '100') 
units <- c('6', '5', '4', '3', '2', '1') 
size <- c('large', 'large', 'large', 'medium', 'small', 'small') 
df <- data.frame(branch, cases, prop, units, size) 

library(rCharts) 

h1 <- hPlot(x = "prop", y = "units", data = df, type = "bubble", group = "size", size = "cases", name = "branch") 

h1$plotOptions(bubble =list(dataLabels = list(enabled = TRUE, x = 0, 
              formatter = "#! function() { 
              return this.point.name;} !#" 
             ))) 

Toute aide est appréciée! Je vous remercie!

+0

Avez-vous essayé 'format:" {point.name} "' à la place de 'formatter'? –

+0

@ PawełFus Merci pour votre commentaire. Identique à 'formatter', le format: "{point.name}" ne fonctionne que pour X et Y mais ne fonctionne pas pour la branche. – dz1

Répondre

0

Dans hPlot, il n'est pas possible d'utiliser une colonne inutilisée dans votre info-bulle ou dans les commandes plotOptions.

Essayez le code suivant, où au lieu du nom Y est utilisé:

branch <- c('A', 'B', 'C', 'D', 'E', 'F') 
cases <- c(100, 200, 300, 400, 500, 600) 
prop <- c(600, 500, 400, 300, 200, 100) 
units <- c(6, 5,4, 3, 2, 1) 
size <- c('large', 'large', 'large', 'medium', 'small', 'small') 
df <- data.frame(branch, cases, prop, units, size) 

library(rCharts) 

h1 <- hPlot(x = "prop", y = "units", type = "bubble", group = "size", size = "cases", name = "branch", data = df) 

h1$plotOptions(series=list(dataLabels=list(enabled=TRUE, format = '{y}'))) 

h1 

Comme vous le verrez cela montrera la valeur y dans les bulles. Vous pouvez également afficher les valeurs x. Mais c'est tout. Cela est dû à la structure du graphique à bulles. Cependant, il existe une solution de contournement pour cela. Voir https://github.com/ramnathv/rCharts/issues/289 pour plus d'informations à ce sujet.

+0

Merci pour votre réponse. Je n'ai aucun problème avec l'affichage de X et Y comme étiquette de bulle, le problème réside dans l'utilisation d'une colonne non utilisée dans le diagramme (comme la branche dans cet exemple). J'ai essayé de réorganiser le dataframe, mais cela ne fonctionne pas non plus. La solution de contournement nécessiterait que les données soient saisies manuellement, ce qui n'est pas idéal pour un grand ensemble de données. – dz1

+0

C'est vrai, mais malheureusement, il ne semble pas y avoir d'autre moyen. Peut-être essayer une bibliothèque différente? Je suis sûr que Highcharts n'est pas le seul capable de produire des graphiques à bulles. – PvGelder