plotly / plotly/plotly.R

No way to make legend order exactly match bar order in relative stacked bar plot

Ouverte
#1,694 2 commentaires 1 réaction 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
R
Étoiles
2.7k
Forks
641
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Sometimes we want to plot negative values below x axis in a stacked bar plot. This can be done with barmode as "relative".

Further, I want to make the legend order exactly match the bar order in plot. However the positive bars stack from middle to top, negative bars stack from middle to down, thus no matter how I arrange the variable levels, there is no way to make the legend order exactly match bar order.

library(plotly)
library(data.table)

set.seed(42)
dt_test <- data.table(x = rep(1:5, each = 6), variable = rep(letters[1:6], 5), value = sample(10:40, 30))
dt_test[variable %in% letters[3:5], value := -value]

dt_test[, variable := factor(variable, levels = c("c", "d", "e", "a", "b", "f"))]

plot_ly(dt_test) %>% 
  add_bars(x = ~x, y = ~value, color = ~variable) %>%
  layout(barmode = 'relative', legend = list(traceorder = "reversed"))

image

I'm not sure how this can be done, unless we

  • change the stack order in negative part as bottom up
  • or can arrange legend order freely without changing bar stack order

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par reproduire l’exemple R fourni avec plot_ly(), add_bars(), barmode = "relative" et le paramètre actuel de la légende. Déterminez si le comportement demandé peut être pris en charge pour les empilements négatifs et positifs ; le travail est terminé lorsque l’ordre de la légende correspond exactement à l’ordre visible des barres, ou lorsque la limitation et le comportement d’ordre choisi sont documentés.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
r
Domaine
data-visualization
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.