Affichage information jour nuit dans la couleur de la grille d'un ggplot

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Jean-Emmanuel Longueville
Messages : 310
Enregistré le : 23 Fév 2011, 08:03

Affichage information jour nuit dans la couleur de la grille d'un ggplot

Messagepar Jean-Emmanuel Longueville » 20 Jan 2021, 09:24

Bonjour,
J'ai plein de donnée temporelle dont notamment un log de la luminosité.
Est il possible d'adapter la couleur de la grille de fond d'un ggplot à cette valeur pour plotter de façon plus classique d'autre mesure ?
J'ai cherché un peu mais n'ai pas trouver comment adapter la couleur de la grille, en fonction de valeur.
Merci
Jean-Emmanuel
Ingénieur d'étude LNEC

Serge Rapenne
Messages : 1426
Enregistré le : 20 Aoû 2007, 15:17
Contact :

Re: Affichage information jour nuit dans la couleur de la grille d'un ggplot

Messagepar Serge Rapenne » 20 Jan 2021, 13:04

bonjour,

je ne pense pas qu'il soit possible de mettre plusieurs couleurs sur la grille. un solution est d'ajouter des rectangles transparents ; Un piste pour faire ça : https://stackoverflow.com/questions/267 ... lot2-graph

Serge

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Affichage information jour nuit dans la couleur de la grille d'un ggplot

Messagepar Mickael Canouil » 20 Jan 2021, 13:05

Bonjour Jean-Emmanuel,

j'ai bien deux/trois idées, mais sans exemple reproductible, c'est délicat de vraiment proposer quelque-chose dans le cas présent.

edit :

Code : Tout sélectionner

library("palmerpenguins")
library("ggplot2")
library("scales")

ggplot(data = penguins) +
  aes(= flipper_length_mm, y = body_mass_g) +
  theme_minimal() +
  annotation_raster(
    raster = matrix(
      data = rep(viridis_pal(option = "plasma", alpha = 0.10)(50), each = 50), 
      nrow 
= 50
    
),
    xmin = -Inf, xmax = Inf, ymin = -Inf, ymax = Inf
  
) +
  geom_point(aes(colour = species, shape = species), size = 2)

Image

Cordialement,
Mickaël
mickael.canouil.fr | rlille.fr

Jean-Emmanuel Longueville
Messages : 310
Enregistré le : 23 Fév 2011, 08:03

Re: Affichage information jour nuit dans la couleur de la grille d'un ggplot

Messagepar Jean-Emmanuel Longueville » 05 Fév 2021, 14:11

Merci Mickael et Serge pour vos réponses je tente lundi de faire un ecm à vous soumettre.
Voici comme promis un ecm :

Les datas :

Code : Tout sélectionner

 ecm <- structure(list(Freq = c(2L, 1L, 2L, 2L, 1L, 2L, 1L, 2L, 1L, 1L,
2L, 1L, 1L, 1L, 2L, 1L, 2L, 1L, 1L, 1L, 2L, 1L, 1L, 2L, 3L, 1L,
1L, 1L, 3L, 3L, 1L, 1L, 1L, 1L, 1L, 3L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 2L, 1L, 2L, 1L, 1L, 2L, 1L,
1L, 3L, 2L, 1L, 1L, 3L, 2L, 2L, 1L, 3L, 2L, 1L, 2L, 1L, 1L, 2L,
3L, 2L, 3L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 2L, 1L, 3L, 1L, 1L, 1L,
1L, 1L, 2L, 1L, 1L, 1L, 2L, 2L, 1L, 2L, 2L, 1L, 2L, 1L, 1L, 1L,
1L, 1L, 2L, 2L, 3L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 2L,
1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 2L, 1L,
3L, 1L, 2L, 2L, 3L, 2L, 3L, 1L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 2L,
1L, 1L, 2L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 2L, 3L, 2L, 1L, 1L, 2L,
1L, 1L, 1L, 3L, 1L, 1L, 2L, 1L, 2L, 2L, 1L, 1L, 2L, 1L, 1L, 3L,
1L, 1L, 1L, 1L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 3L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2L, 1L, 1L, 2L, 2L, 2L, 1L, 2L, 1L, 1L, 1L, 2L, 1L, 1L, 2L, 1L,
1L, 1L, 1L, 1L, 1L, 2L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 4L, 2L, 1L, 1L, 4L, 3L, 1L,
1L, 1L, 1L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 1L, 1L, 2L, 1L, 1L, 2L,
1L, 1L, 2L, 1L, 2L, 2L, 2L, 1L, 1L, 2L, 2L, 1L, 1L, 1L, 2L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 2L, 1L, 1L, 1L,
2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 1L, 2L, 2L, 1L,
2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L,
1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 3L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 2L, 1L, 1L, 2L,
2L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 1L, 1L, 1L, 1L, 1L,
1L, 2L, 1L, 1L), date_hm = structure(c(1602591060, 1602591120,
1602591240, 1602591360, 1602591420, 1602591480, 1602591540, 1602591600,
1602591840, 1602591900, 1602592020, 1602592200, 1602592380, 1602592440,
1602592680, 1602592740, 1602592800, 1602592920, 1602592980, 1602593040,
1602593100, 1602593280, 1602593640, 1602593700, 1602593760, 1602593820,
1602593880, 1602594000, 1602594060, 1602594120, 1602594180, 1602594360,
1602594420, 1602594480, 1602594720, 1602594780, 1602594840, 1602595020,
1602595080, 1602595380, 1602595560, 1602595980, 1602596040, 1602596160,
1602596220, 1602596280, 1602596640, 1602596760, 1602597120, 1602597240,
1602597300, 1602597840, 1602597960, 1602598020, 1602598080, 1602598140,
1602598500, 1602598800, 1602599220, 1602599280, 1602599340, 1602599400,
1602599460, 1602599520, 1602599580, 1602599640, 1602599700, 1602599760,
1602599820, 1602599880, 1602600000, 1602600060, 1602600120, 1602600180,
1602600240, 1602600300, 1602600360, 1602600420, 1602600480, 1602600600,
1602600780, 1602600840, 1602601200, 1602601260, 1602601500, 1602601620,
1602601680, 1602601740, 1602601800, 1602601860, 1602602040, 1602602100,
1602602160, 1602602220, 1602602280, 1602602400, 1602602460, 1602602520,
1602602580, 1602602760, 1602602820, 1602602880, 1602602940, 1602603000,
1602603180, 1602603480, 1602603660, 1602603720, 1602603780, 1602603840,
1602603900, 1602603960, 1602604140, 1602604260, 1602604500, 1602604560,
1602604680, 1602604740, 1602605100, 1602605340, 1602605460, 1602605520,
1602605640, 1602605700, 1602605760, 1602606000, 1602606060, 1602606120,
1602606240, 1602606300, 1602606420, 1602606480, 1602606900, 1602607020,
1602607200, 1602607260, 1602607320, 1602607440, 1602607500, 1602607560,
1602607680, 1602607740, 1602607800, 1602607860, 1602607920, 1602607980,
1602608040, 1602608100, 1602608160, 1602608220, 1602608280, 1602608340,
1602608400, 1602608460, 1602608520, 1602608580, 1602608640, 1602608760,
1602608820, 1602608940, 1602609000, 1602609060, 1602609120, 1602609180,
1602609240, 1602609300, 1602609360, 1602609420, 1602609480, 1602609540,
1602609600, 1602609720, 1602609780, 1602609900, 1602610080, 1602610140,
1602610200, 1602610260, 1602611880, 1602611940, 1602612060, 1602612120,
1602612240, 1602612300, 1602612360, 1602612420, 1602612480, 1602612540,
1602612840, 1602612900, 1602613140, 1602613200, 1602613980, 1602614040,
1602614100, 1602614160, 1602614460, 1602614520, 1602614580, 1602614640,
1602614700, 1602614760, 1602614820, 1602614880, 1602614940, 1602615000,
1602615360, 1602615420, 1602615480, 1602615840, 1602615900, 1602616200,
1602616620, 1602616680, 1602616740, 1602616860, 1602616920, 1602617040,
1602617100, 1602617160, 1602617400, 1602617520, 1602617580, 1602618240,
1602618300, 1602618480, 1602618540, 1602618660, 1602619080, 1602619320,
1602619380, 1602619440, 1602619740, 1602620160, 1602620220, 1602620700,
1602620760, 1602621240, 1602621300, 1602622380, 1602622440, 1602623040,
1602623520, 1602624900, 1602624960, 1602625380, 1602625440, 1602625500,
1602626160, 1602626520, 1602627060, 1602627120, 1602627240, 1602627360,
1602627480, 1602628080, 1602628140, 1602628500, 1602628560, 1602628680,
1602628740, 1602628800, 1602628860, 1602628920, 1602635220, 1602636540,
1602636840, 1602636900, 1602636960, 1602638100, 1602638460, 1602638520,
1602638760, 1602639240, 1602639300, 1602649620, 1602654480, 1602656520,
1602660660, 1602660720, 1602661380, 1602661560, 1602661620, 1602661860,
1602661920, 1602669180, 1602669240, 1602669300, 1602671160, 1602671220,
1602671280, 1602671340, 1602671400, 1602671460, 1602671520, 1602671580,
1602671640, 1602671700, 1602671760, 1602671880, 1602672000, 1602672180,
1602672900, 1602672960, 1602673020, 1602673080, 1602673140, 1602673560,
1602675420, 1602675480, 1602675540, 1602675720, 1602675780, 1602676080,
1602676260, 1602676440, 1602676500, 1602676800, 1602676920, 1602677400,
1602677460, 1602677580, 1602678000, 1602678540, 1602678600, 1602678660,
1602678720, 1602679140, 1602679260, 1602679320, 1602679380, 1602679440,
1602679500, 1602679560, 1602679620, 1602679680, 1602679740, 1602680100,
1602680520, 1602680580, 1602680700, 1602680760, 1602680820, 1602681000,
1602681120, 1602681720, 1602681780, 1602681840, 1602682260, 1602682320,
1602682560, 1602682680, 1602682980, 1602683040, 1602683100, 1602683160,
1602683220, 1602683280, 1602683340, 1602683400, 1602683640, 1602684060,
1602684120, 1602684180, 1602684840, 1602684960, 1602685020, 1602685080,
1602685140, 1602685200, 1602685500, 1602685560, 1602685620, 1602685680,
1602685740, 1602685800, 1602685860, 1602685920, 1602686220, 1602687000,
1602687180, 1602687240, 1602687480, 1602687540, 1602687720, 1602687900,
1602687960, 1602688080, 1602688140, 1602688260, 1602688440, 1602688500,
1602688560, 1602688620, 1602688680, 1602688800, 1602688860, 1602688920,
1602689100, 1602689160, 1602689220, 1602689280, 1602690120, 1602690180,
1602690360, 1602690420, 1602690480, 1602690960, 1602691020, 1602691260,
1602691320, 1602691620, 1602691920, 1602691980, 1602692040, 1602692100,
1602692160, 1602692340, 1602692400, 1602692460, 1602692520, 1602692640,
1602693240, 1602693300, 1602693360, 1602693780, 1602693840, 1602694320,
1602694380, 1602694860, 1602694920, 1602695040, 1602695100, 1602695520,
1602695700, 1602695820, 1602695880, 1602695940, 1602696000, 1602696240,
1602698580, 1602698640, 1602698700, 1602699660, 1602700080, 1602700140,
1602700200, 1602700260, 1602700320, 1602701760, 1602701880, 1602702300,
1602702480, 1602702540, 1602702720, 1602703320, 1602703740, 1602703800,
1602703860, 1602704880, 1602705480, 1602705540, 1602706560, 1602707280,
1602707340, 1602707400, 1602707760, 1602708000, 1602708060, 1602708120,
1602709320, 1602709380, 1602709560, 1602709620, 1602709680, 1602710160,
1602710220, 1602712500), tzone = "UTC", class = c("POSIXct",
"POSIXt")), illumination = c(127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 169L, 169L, 169L, 211L, 254L, 254L, 254L, 254L, 254L, 254L,
254L, 254L, 254L, 254L, 254L, 254L, 254L, 254L, 254L, 254L, 254L,
254L, 254L, 254L, 254L, 254L, 254L, 254L, 254L, 254L, 254L, 254L,
254L, 254L, 254L, 254L, 254L, 254L, 254L, 169L, 169L, 169L, 169L,
169L, 169L, 169L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L,
127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L, 127L)), row.names = c(NA,
-478L), class = "data.frame")


L'info jour nuit est dans la valeur Illumination.

Voici le graph actuel :

Code : Tout sélectionner

ecm %>%  ggplot(.,aes(x = date_hm, y=Freq))+
   geom_line()+
   scale_x_datetime(breaks = scales::breaks_width("30 min"))+ # valeur d'unité possible : Unit can be of one "sec", "min", "hour", "day", "week", "month", "year".
   ggtitle("Wheel occupation")


Je vous avoue ne pas trop savoir comment utiliser vos propositions.
Jean-Emmanuel
Ingénieur d'étude LNEC

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Affichage information jour nuit dans la couleur de la grille d'un ggplot

Messagepar Mickael Canouil » 09 Fév 2021, 09:03

Plus simple que ce que je pensais avec le jeu de donnée.

Code : Tout sélectionner

ecm <- structure(list(Freq c(2L1L2L2L1L2L1L2L1L1L,
2L1L1L1L2L1L2L1L1L1L2L1L1L2L3L1L,
1L1L3L3L1L1L1L1L1L3L1L1L1L1L1L1L,
1L1L1L1L1L1L2L1L1L2L1L2L1L1L2L1L,
1L3L2L1L1L3L2L2L1L3L2L1L2L1L1L2L,
3L2L3L1L1L1L2L1L1L1L2L1L3L1L1L1L,
1L1L2L1L1L1L2L2L1L2L2L1L2L1L1L1L,
1L1L2L2L3L1L1L1L2L1L1L1L1L1L1L2L,
1L1L1L2L1L1L1L1L1L2L1L1L1L1L2L1L,
3L1L2L2L3L2L3L1L1L2L2L2L1L1L1L2L,
1L1L2L1L2L2L2L2L1L1L2L3L2L1L1L2L,
1L1L1L3L1L1L2L1L2L2L1L1L2L1L1L3L,
1L1L1L1L2L2L1L1L1L1L1L2L1L1L1L1L,
1L1L1L1L1L1L1L1L1L1L2L3L1L1L1L1L,
1L1L1L1L1L1L1L2L1L1L1L1L1L1L1L1L,
2L1L1L2L2L2L1L2L1L1L1L2L1L1L2L1L,
1L1L1L1L1L2L1L2L1L1L1L1L1L1L1L1L,
1L2L1L1L1L1L1L1L1L1L1L1L1L1L1L1L,
1L1L1L1L1L1L1L1L2L4L2L1L1L4L3L1L,
1L1L1L1L2L1L2L1L2L1L1L1L2L1L1L2L,
1L1L2L1L2L2L2L1L1L2L2L1L1L1L2L1L,
1L1L1L1L1L1L1L1L1L1L1L1L1L1L1L1L,
1L1L2L2L1L1L1L1L1L2L1L1L2L1L1L1L,
2L1L1L1L1L1L1L1L1L1L2L2L1L2L2L1L,
2L1L1L1L1L1L1L1L1L1L1L1L1L1L1L2L,
1L2L1L1L1L1L1L1L1L1L2L1L1L1L1L1L,
1L1L1L1L1L1L1L2L1L1L1L2L1L1L1L1L,
1L1L1L3L1L1L1L1L1L1L2L1L2L1L1L2L,
2L1L1L2L1L1L1L1L1L1L1L1L1L1L1L1L,
2L1L1L1L1L1L1L1L1L2L2L1L1L1L1L1L,
1L2L1L1L), date_hm structure(c(16025910601602591120,
160259124016025913601602591420160259148016025915401602591600,
160259184016025919001602592020160259220016025923801602592440,
160259268016025927401602592800160259292016025929801602593040,
160259310016025932801602593640160259370016025937601602593820,
160259388016025940001602594060160259412016025941801602594360,
160259442016025944801602594720160259478016025948401602595020,
160259508016025953801602595560160259598016025960401602596160,
160259622016025962801602596640160259676016025971201602597240,
160259730016025978401602597960160259802016025980801602598140,
160259850016025988001602599220160259928016025993401602599400,
160259946016025995201602599580160259964016025997001602599760,
160259982016025998801602600000160260006016026001201602600180,
160260024016026003001602600360160260042016026004801602600600,
160260078016026008401602601200160260126016026015001602601620,
160260168016026017401602601800160260186016026020401602602100,
160260216016026022201602602280160260240016026024601602602520,
160260258016026027601602602820160260288016026029401602603000,
160260318016026034801602603660160260372016026037801602603840,
160260390016026039601602604140160260426016026045001602604560,
160260468016026047401602605100160260534016026054601602605520,
160260564016026057001602605760160260600016026060601602606120,
160260624016026063001602606420160260648016026069001602607020,
160260720016026072601602607320160260744016026075001602607560,
160260768016026077401602607800160260786016026079201602607980,
160260804016026081001602608160160260822016026082801602608340,
160260840016026084601602608520160260858016026086401602608760,
160260882016026089401602609000160260906016026091201602609180,
160260924016026093001602609360160260942016026094801602609540,
160260960016026097201602609780160260990016026100801602610140,
160261020016026102601602611880160261194016026120601602612120,
160261224016026123001602612360160261242016026124801602612540,
160261284016026129001602613140160261320016026139801602614040,
160261410016026141601602614460160261452016026145801602614640,
160261470016026147601602614820160261488016026149401602615000,
160261536016026154201602615480160261584016026159001602616200,
160261662016026166801602616740160261686016026169201602617040,
160261710016026171601602617400160261752016026175801602618240,
160261830016026184801602618540160261866016026190801602619320,
160261938016026194401602619740160262016016026202201602620700,
160262076016026212401602621300160262238016026224401602623040,
160262352016026249001602624960160262538016026254401602625500,
160262616016026265201602627060160262712016026272401602627360,
160262748016026280801602628140160262850016026285601602628680,
160262874016026288001602628860160262892016026352201602636540,
160263684016026369001602636960160263810016026384601602638520,
160263876016026392401602639300160264962016026544801602656520,
160266066016026607201602661380160266156016026616201602661860,
160266192016026691801602669240160266930016026711601602671220,
160267128016026713401602671400160267146016026715201602671580,
160267164016026717001602671760160267188016026720001602672180,
160267290016026729601602673020160267308016026731401602673560,
160267542016026754801602675540160267572016026757801602676080,
160267626016026764401602676500160267680016026769201602677400,
160267746016026775801602678000160267854016026786001602678660,
160267872016026791401602679260160267932016026793801602679440,
160267950016026795601602679620160267968016026797401602680100,
160268052016026805801602680700160268076016026808201602681000,
160268112016026817201602681780160268184016026822601602682320,
160268256016026826801602682980160268304016026831001602683160,
160268322016026832801602683340160268340016026836401602684060,
160268412016026841801602684840160268496016026850201602685080,
160268514016026852001602685500160268556016026856201602685680,
160268574016026858001602685860160268592016026862201602687000,
160268718016026872401602687480160268754016026877201602687900,
160268796016026880801602688140160268826016026884401602688500,
160268856016026886201602688680160268880016026888601602688920,
160268910016026891601602689220160268928016026901201602690180,
160269036016026904201602690480160269096016026910201602691260,
160269132016026916201602691920160269198016026920401602692100,
160269216016026923401602692400160269246016026925201602692640,
160269324016026933001602693360160269378016026938401602694320,
160269438016026948601602694920160269504016026951001602695520,
160269570016026958201602695880160269594016026960001602696240,
160269858016026986401602698700160269966016027000801602700140,
160270020016027002601602700320160270176016027018801602702300,
160270248016027025401602702720160270332016027037401602703800,
160270386016027048801602705480160270554016027065601602707280,
160270734016027074001602707760160270800016027080601602708120,
160270932016027093801602709560160270962016027096801602710160,
16027102201602712500), tzone "UTC", class = c("POSIXct",
"POSIXt")), illumination c(127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L169L169L169L211L254L254L254L254L254L254L,
254L254L254L254L254L254L254L254L254L254L254L,
254L254L254L254L254L254L254L254L254L254L254L,
254L254L254L254L254L254L254L169L169L169L169L,
169L169L169L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L127L,
127L127L127L127L127L127L127L127L127L127L)), row.names c(NA,
-
478L), class = "data.frame"


Code : Tout sélectionner

library(ggplot2)
library(scales)
ggplot(ecm) + 
  
theme_minimal() +
  
aes(date_hmFreq) +
  
geom_ribbon(mapping aes(ymin = -Infymax Inffill factor(illumination))) +
  
geom_line()+
  
scale_x_datetime(
    
# breaks = breaks_width("30 min")
  
) + 
  
labs(title "Wheel occupation"

Image
Mickaël
mickael.canouil.fr | rlille.fr

Jean-Emmanuel Longueville
Messages : 310
Enregistré le : 23 Fév 2011, 08:03

Re: Affichage information jour nuit dans la couleur de la grille d'un ggplot

Messagepar Jean-Emmanuel Longueville » 09 Fév 2021, 13:40

Merci beaucoup pour ton code qui parait fonctionnelle j'ai cependant un petit soucis :
Image
J'ai augmenté le nombre de jour par rapport à l'ecm et bizarrement la tête du graph ne change pas. J'ai placé dans la figure ci dessus 5 jours.
Et quand je place toutes mes données (2x 30jours à peu prêt) le fond est tout grisé.
Jean-Emmanuel
Ingénieur d'étude LNEC

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Affichage information jour nuit dans la couleur de la grille d'un ggplot

Messagepar Mickael Canouil » 09 Fév 2021, 15:02

Ahah, j'avais oublié que les ruban était construit entre la première et la dernière mesure de la modalité du facteur.
Résultat, il n'y avait en fait que 4 rubans qui s'étalaint sur l'ensemble du graphique.

Code : Tout sélectionner

library(data.table)
library(ggplot2)
library(scales)
ecm <- setDT(ecm)
ecm[
  
illumination != shift(illumination1fill 0),
  
fill_group := 1:.N
]
ecm[fill_group := nafill(fill_grouptype "locf")]
ggplot(ecm) + 
  
theme_minimal() +
  
aes(date_hmFreq) +
  
geom_ribbon(
    
mapping aes(
      
ymin = -Inf
      
ymax Inf
      
fill factor(illumination), 
      
group fill_group
    
)
  ) +
  
geom_line(alpha 0) +
  
# scale_x_datetime(breaks = breaks_width("30 min")) + 
  
labs(title "Wheel occupation"

Image

Pour les jointures entre les rubans, il va falloir dupliquer la première mesure du suivant ou la dernière du précédent.
Mickaël
mickael.canouil.fr | rlille.fr

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Affichage information jour nuit dans la couleur de la grille d'un ggplot

Messagepar Mickael Canouil » 09 Fév 2021, 15:22

Pour la route (sauf erreur de ma part):

Code : Tout sélectionner

library(data.table)
library(ggplot2)
library(scales)
ggplot(setDT(ecm)) + 
  theme_minimal
() +
  aes(= date_hm, y = Freq) +
  geom_rect(
    data = ~ .x[
      i = illumination != shift(illumination, n = 1, fill = 0),
      j = fill_group := 1:.N
    
][
      j = fill_group := nafill(fill_group, type = "locf")
    ][
      j = list(xmin = min(date_hm), xmax = max(date_hm), illumination = unique(illumination)), 
      by 
= "fill_group"
    ][
      j = xmax := shift(xmin, n = 1, type = "lead", fill = max(xmax))
    ],
    mapping = aes(
      xmin = xmin,
      xmax = xmax,
      ymin = -Inf, 
      ymax 
= Inf, 
      fill 
= factor(illumination)
    ),
    inherit.aes = FALSE
  
) +
  geom_line(alpha = 0) +
  # scale_x_datetime(breaks = breaks_width("30 min")) + 
  labs(title = "Wheel occupation")

Image
Mickaël
mickael.canouil.fr | rlille.fr

Jean-Emmanuel Longueville
Messages : 310
Enregistré le : 23 Fév 2011, 08:03

Re: Affichage information jour nuit dans la couleur de la grille d'un ggplot

Messagepar Jean-Emmanuel Longueville » 10 Fév 2021, 14:25

Merci mickael désolé de revenir encore vers toi si je reprends mon jeu de donnée légèrement augmenté (pas encore le jeu total). J'ai le résultat suivant :

Code : Tout sélectionner

Erreur : Aesthetics can not vary with a ribbon
Run `rlang::last_error()` to see where the error occurred.


Je t'avoue revenir vers toi ne comprennant pas comment juste une augmentation des valeurs entraine cette erreur, qui m'est assez obscure.
Jean-Emmanuel
Ingénieur d'étude LNEC

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Affichage information jour nuit dans la couleur de la grille d'un ggplot

Messagepar Mickael Canouil » 10 Fév 2021, 17:55

Est-ce avec le dernier code utilisant geom_rect ?
Je comprend l'erreur pour geom_ribbon, mais pour geom_rect, ça me semble curieux, surtout que le message évoque "ribbon".
Le passage à geom_rect était d'ailleurs à cause de cette erreur, mais pas que ...
Mickaël
mickael.canouil.fr | rlille.fr

Jean-Emmanuel Longueville
Messages : 310
Enregistré le : 23 Fév 2011, 08:03

Re: Affichage information jour nuit dans la couleur de la grille d'un ggplot

Messagepar Jean-Emmanuel Longueville » 11 Fév 2021, 11:39

Ah non pardon je n'avais pas vu le geom rect je tente ça dès que possible et reviens vers toi.
J'ai relancé ton code celui avec les rectangles.
En triant mes données par date et en relançant ça fonctionne Nickel merci beaucoup
Jean-Emmanuel
Ingénieur d'étude LNEC


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité