ggplotly returns group_by_ error for ggplot with undefined dataframe
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
The following ggplot2 command fails when executed in ggplotly:
ggplot()+geom_line(aes(x = c(1,2,3,4), y = c(1,2,3,4), group = c(1,1,2,2))) #works
ggplotly(ggplot()+geom_line(aes(x = c(1,2,3,4), y = c(1,2,3,4), group = c(1,1,2,2)))) #fails
#>Error in UseMethod("group_by_") :
#> no applicable method for 'group_by_' applied to an object of class "waiver"
This error can be addressed by assigning the data to a data frame and explicitly mapping the variables to the data frame within the ggplot call:
df <- data.frame(x = c(1,2,3,4), y = c(1,2,3,4), group = c(1,1,2,2))
ggplotly(ggplot()+geom_line(data = df, aes(x = x, y = y, group = group))) #works
ggplotly(ggplot()+geom_line(aes(x = df$x, y = df$y, group = df$group))) #fails
#>Error in UseMethod("group_by_") :
#> no applicable method for 'group_by_' applied to an object of class "waiver"
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par exécuter les deux exemples ggplotly de l’issue et comparez les cas qui réussissent et ceux qui échouent. Suivez la gestion par ggplotly des mappings aes inline et de la valeur de group représentée par waiver. Le travail est terminé lorsque les deux exemples se rendent sans l’erreur group_by_ tout en conservant le comportement des lignes groupées.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- r
- Domaine
- data-visualization
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 48/100