plotly / plotly/plotly.R

ggplot2 point fill doesn't translate correctly

Offen
#1,234 8 Kommentare 3 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug ggplotly
Vorherrschende Sprache
R
Sterne
2.7k
Forks
641
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Summary

aes(color = z) works as expected.

aes(fill = z) does not, and it produces a warning.

Expected behavior

aes(color = z) works as expected.

library(ggplot2)
library(plotly)

set.seed(42)
d <- data.frame(
  x = rnorm(1000),
  y = rnorm(1000),
  z = rnorm(1000)
)

p <- ggplot(d, aes(x, y, color = z)) +
  geom_point(size = 3)

ggplotly(p)

image

Observed behavior

On the other hand, aes(fill = z) does not work as expected.

There are two issues:

  • All of the points are the same color
  • There is a warning message suggesting there's a bug somewhere
p <- ggplot(d, aes(x, y, fill = z)) +
  geom_point(shape = 21, size = 3)

ggplotly(p)
Warning message:
In L$marker$color[idx] <- aes2plotly(data, params, "fill")[idx] :
  number of items to replace is not a multiple of replacement length

image

R version 3.4.4 (2018-03-15)
Platform: x86_64-apple-darwin17.4.0 (64-bit)
Running under: macOS High Sierra 10.13.3

Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /usr/local/Cellar/openblas/0.2.20_1/lib/libopenblasp-r0.2.20.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats graphics grDevices utils datasets methods base

other attached packages:
[1] plotly_4.7.1 ggplot2_2.2.1.9000 devtools_1.13.5 colorout_1.2-0

loaded via a namespace (and not attached):
[1] Rcpp_0.12.16 pillar_1.2.1 compiler_3.4.4 plyr_1.8.4 bindr_0.1.1
[6] tools_3.4.4 digest_0.6.15 jsonlite_1.5 memoise_1.1.0 tibble_1.4.2
[11] gtable_0.2.0 viridisLite_0.3.0 pkgconfig_2.0.1 rlang_0.2.0.9001 rstudioapi_0.7
[16] shiny_1.0.5 crosstalk_1.0.0 yaml_2.1.18 bindrcpp_0.2.2 withr_2.1.2
[21] dplyr_0.7.4 httr_1.3.1 htmlwidgets_1.0 grid_3.4.4 glue_1.2.0
[26] data.table_1.10.4-3 R6_2.2.2 purrr_0.2.4 tidyr_0.8.0 magrittr_1.5
[31] scales_0.5.0.9000 htmltools_0.3.6 assertthat_0.2.0 xtable_1.8-2 mime_0.5
[36] colorspace_1.3-2 httpuv_1.3.6.2 labeling_0.3 lazyeval_0.2.1 munsell_0.4.3

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, die bereitgestellte R-Reproduktion mit ggplotly auszuführen und die funktionierende Farbzuordnung mit der fehlschlagenden Füllzuordnung zu vergleichen. Verfolge die mit der Warnung über das Ersetzen von Markierungsfarben verbundene fill-Übersetzung; abgeschlossen ist es, wenn Punkte mit shape-21 unterschiedliche Füllungen aus z erhalten, ohne die Warnung.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
r
Bereich
data-visualization
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.