Forum Électro-Bidouilleur

Sections => Dépannage d'Électronique et d'Informatique => Discussion démarrée par: Tarharnak le Décembre 08, 2020, 08:57:56 pm

Titre: Utiliser les données d'une base de données
Posté par: Tarharnak le Décembre 08, 2020, 08:57:56 pm
Bonjour à  vous,

J'ai des datas collectées par différent capteurs et sondes chez moi. Elles sont stockées dans une base de données mySQL.

Mes tables sont ainsi faite :

Exemple de deux ligne :
idtimestampdateheuretemperature
3467160486818608/11/202020:43:0618,20
3468160486824608/11/202020:44:0618,10

Je cherche à  en faire des graphiques dans un premier temps.

Avec Excel (Calc d'openOffice) je parviens à  en faire facilement mais j'ai du mal à  a réellement exploiter la chorologie. Enfaite le graphique affiche les ligne l'une après l'autre sans représenter l'échelle réel du temps (en se basant sur timestamp par ex). Ainsi si j'ai un saut sur un de mes capteurs je ne peux pas le voir. Je voudrais aussi réussir à  croiser plusieurs tabler sur un même graphique, d'où la nécessité d'être calé sur timestamp.

Connaissez vous un logiciel me permettant de faite cela ?
Titre: Re : Utiliser les données d'une base de données
Posté par: Mr_Djez le Décembre 13, 2020, 03:37:00 pm

Bonjour.

J'ai tendance a utilisé R pour ce genre de chose. Si vous bidouillez un peu en programmation ;)

Voici un exemple:

Code: (R) [Sélectionner]
# Exemple de data
# Idéalement on demande à  R de faire une requête directement sur le SGBDR.
data <- data.frame(
    id = c(3467, 3468, 3469, 3470),
    timestamp = c(1604868186, 1604868246, 1604868186, 1604868246),
    date = c('08/11/2020', '08/11/2020','09/11/2020', '10/11/2020'),
    heure = c('20:43:06', '20:44:06', '20:43:06', '20:44:06'),
    temperature = c(18.20, 18.10, 16.20, 17.10)
)
data$datetime <- as.POSIXct(
    strptime(
        paste0( data$date, ' ', data$heure ),
        "%d/%m/%Y %H:%M:%S"
    )
)

# Exemple de graphique
library(ggplot2)
ggplot(data) +
    aes( x = datetime, y = temperature ) +
    geom_line(lty = 2) +
    geom_point(alpha = 0.5, shape = 3) +
    ylim(0,30) +
    labs(
        title = "Mon super graphique",
        x = NULL,
        y = "Temperature °C"
    )

(https://atlas.noho.st/lutim/M0Hk6vSC/vcAkth6u.png)
Titre: Re : Utiliser les données d'une base de données
Posté par: Tarharnak le Décembre 16, 2020, 05:13:26 pm
Merci pour l'info :) Je ne suis limité à  php et c++ (arduino). Mais je vais tenter mon coup avec R et découvrir ça.