reb001 a écrit 5 commentaires

  • [^] # Re: Quarto + RevealJS

    Posté par  . En réponse au journal Outils pour présentations simples : de beamer à ... ?. Évalué à 1. Dernière modification le 01 juin 2023 à 22:30.

    Alors oui, ça parait peut-être compliqué comme ça, mais ça ne demande en fait que du markdown quand on veut faire au plus simple ; pas sûr que \LaTeX soit plus simple. Et je n'ai jamais eu besoin de bidouiller du javascript (que le Monstre en spaghetti volant me préserve !)… Pour ceux qui font de l'analyse de données et sont dans RStudio toute la journée, c'est assez naturel…

  • # Quarto + RevealJS

    Posté par  . En réponse au journal Outils pour présentations simples : de beamer à ... ?. Évalué à 4.

    Quarto + RevealJS en utilisant l'IDE RStudio. On écrit du Markdown (tout en générant possiblement du texte ou des graphiques avec R ou Python), le tout est converti avec Pandoc en HTML ou PDF…

  • # Référence

    Posté par  . En réponse au journal mon FAI pro en panne toute la journée. Évalué à 10.

    Les Cantos d'Hypérion de Dan Simmons ; hautement conseillé.

  • [^] # R et ggplot2

    Posté par  . En réponse au journal le dessous des cartes. Évalué à 1.

    Gazole

    library(XML)
    library(ggplot2)
    library(maps)
    library(scales)
    library(RColorBrewer)
    
    day <- "20150827"
    baseurl <- "http://donnees.roulez-eco.fr/opendata/jour/"
    
    # Récupération des données
    temp <- tempfile()
    download.file(paste0(baseurl, day), temp)
    xmlsource <- unzip(temp, paste0("PrixCarburants_quotidien_", day, ".xml"))
    unlink(temp)
    parsed <- xmlParse(xmlsource)
    
    gazole <- data.frame(
        id = xpathSApply(parsed, "//prix[@nom='Gazole']/../@id"),
        cp = xpathSApply(parsed, "//prix[@nom='Gazole']/../@cp"),
        latitude = as.numeric(xpathSApply(parsed, "//prix[@nom='Gazole']/../@latitude")) / 100000,
        longitude = as.numeric(xpathSApply(parsed, "//prix[@nom='Gazole']/../@longitude")) / 100000,
        prix = as.numeric(xpathSApply(parsed, "//prix[@nom='Gazole']/@valeur")) / 1000,
        date = as.Date(xpathSApply(parsed, "//prix[@nom='Gazole']/@maj"))
    )
    
    # Ajout départements. Cas particuliers : Corse et COM
    gazole$dep <- ifelse(substr(gazole$cp, 1, 2) == "97" | substr(gazole$cp, 1, 2) == "20",
                         substr(gazole$cp, 1, 3),
                         substr(gazole$cp, 1, 2)
                         )
    gazole$dep[which(gazole$dep == "200" | gazole$dep == "201")] <- "2A"
    gazole$dep[which(gazole$dep == "202" | gazole$dep == "206")] <- "2B"
    
    gazole$dep <- as.factor(gazole$dep)
    
    # suppression Réunion (et mauvaises loc ?)
    gazole.metro <- subset(gazole, longitude < 10 & latitude > 40)
    
    # Moyenne prix et intervalle de confiance
    mean(gazole.metro$prix)
    confint(lm(gazole.metro$prix ~ 1))
    
    # GLM : différences entre départements
    res <- glm(data = gazole, prix~dep)
    summary(res)
    
    # Graphiques boxplot par département et par prix
    #+ fig.width=15
    ggplot(gazole, aes(dep, prix)) + 
        geom_boxplot() +
        stat_summary(fun.y = mean,  geom = "point") +
        ggtitle(paste("Gazole", day)) +
        xlab("Département") +
        ylab("Prix (€)") +
        theme(axis.text.x=element_text(angle = 90, hjust = 0))
    
    #+ fig.width=15
    ggplot(gazole, aes(x=reorder(dep, prix, FUN=mean), prix)) + 
        geom_boxplot() +
        stat_summary(fun.y = mean,  geom = "point") +
        ggtitle(paste("Gazole", day)) +
        xlab("Département") +
        ylab("Prix (€)") +
        theme(axis.text.x=element_text(angle = 90, hjust = 0))
    
    # Histogramme
    ggplot(gazole, aes(x = prix)) + 
        geom_histogram() +
        ggtitle(paste("Gazole", day)) +
        xlab("") +
        ylab("") 
    
    # Carte
    #+ fig.height=10
    france.map <- map_data("france")
    ggplot(france.map, aes(long,lat)) +
        geom_polygon(aes(group = group), fill = NA, colour = "grey60") +
        geom_point(data = gazole.metro, aes(longitude, latitude, color = cut(prix, quantile(prix, seq(0,1,0.2))))) +
        scale_colour_manual("Prix (€)", values=rev(brewer.pal(5, "RdBu")), guide=guide_legend(reverse = TRUE)) +
        coord_fixed(ratio = 1.45) +
        ggtitle(paste("Gazole", day)) +
        xlab("") +
        ylab("")
  • [^] # Re: Petite correction

    Posté par  . En réponse à la dépêche Blagues d'informaticiens. Évalué à 4.

    ainsi qu'une majuscule après les deux points

    Vous vouliez dire une capitale, non ?