Inconsistent behavior with numeric/non-numeric z values in heatmap
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- R
- Sterne
- 2.7k
- Forks
- 641
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Hi,
I have a problem with a plotly heatmap in a shiny app, it is ok in Chrome but wrong in Firefox (Windows 10). And it happens until you click the heatmap. Here is the built app where I got the problem: https://violetr.shinyapps.io/tidytuesdaytweets/. Any idea?
Code to generate an app with only the heatmap:
library(shiny)
library(plotly)
#> Loading required package: ggplot2
#>
#> Attaching package: 'plotly'
#> The following object is masked from 'package:ggplot2':
#>
#> last_plot
#> The following object is masked from 'package:stats':
#>
#> filter
#> The following object is masked from 'package:graphics':
#>
#> layout
library(tidyverse)
library(lubridate)
#>
#> Attaching package: 'lubridate'
#> The following object is masked from 'package:base':
#>
#> date
# Define UI for application that draws a histogram
ui <- shinyUI(fluidPage(
# Application title
title = "example_firefox",
h2("The graph:"),
plotlyOutput("distPlot", height = "160px", width = "550px"),
hr()
))
server <- shinyServer(function(input, output) {
all_dates_period <-
tibble(gen_date = as_date(as_date("2018-04-01"):as_date("2018-12-22"))) %>%
mutate(
month_name = month(gen_date, TRUE),
week_num = epiweek(gen_date), # to start on Sun
week_day = wday(gen_date, TRUE),
n = 0
)
base_to_heatmap <- all_dates_period %>%
select(-month_name, -gen_date)
output$distPlot <- renderPlotly({
to_heatmap <-
base_to_heatmap %>%
spread(key = week_num, value = n) %>%
as.data.frame()
matrix_heatmap <- as.matrix(to_heatmap)
matrix_heatmap <- matrix_heatmap[ nrow(matrix_heatmap):1, ]
mycols <- c("#ebedf0", "#c6e48b", "#7bc96f", "#239a3b", "#196127")
mypalette <- colorRamp(mycols)
library(plotly)
plot_ly(
z = matrix_heatmap,
type = "heatmap",
colors = mypalette, xgap = 0.5, ygap = 0.5,
showscale = FALSE
) %>%
layout(
yaxis = list(
ticks = "",
# ticktext = lab_row_days,
tickmode = "array",
tickfont = list(color = "86888A"),
tickvals = 0:6,
zeroline = FALSE
),
xaxis = list(
side = "top",
# ticktext = lab_column_months,
ticks = "",
tickmode = "array", tickangle = 0,
tickfont = list(color = "86888A"),
tickvals = 0:38,
zeroline = FALSE
)
) %>%
config(displayModeBar = FALSE)
})
})
# Run the application
shinyApp(ui = ui, server = server)
Shiny applications not supported in static R Markdown documents
Created on 2019-01-08 by the reprex package (v0.2.1)
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit der minimalen Shiny-App im Issue und führe ihre Reproduktion der plot_ly-Heatmap in Chrome und Firefox aus. Konzentriere dich auf die als z übergebene matrix_heatmap und das unterschiedliche Verhalten vor und nach dem Klicken. Als abgeschlossen gilt die Aufgabe, wenn die bereitgestellte Heatmap konsistent gerendert wird, ohne dass ein Klick erforderlich ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- r
- Bereich
- data-visualization, frontend
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100