Une courbe de température en Python

De Wiki de Mémoire Vive
Révision datée du 16 novembre 2023 à 23:11 par 192.168.2.1 (discussion) (Page créée avec « Après avoir paramétré une automatisation Home Assistant pour régler la température de consigne de ma chaudère, l'idée m'est venue d'en tracer la courbe. Je suis donc parti de cet extrait de script pour demander à Chatgpt de le remettre en forme, <pre> {% if now().hour == 6 %} {{ 17 | float }} {% elif now().hour == 7 %} {{ 18 | float }} {% elif now().hour == 8 %} {{ 18 | float }} {% elif now().hour == 9 %} {{ 18 | float... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

Après avoir paramétré une automatisation Home Assistant pour régler la température de consigne de ma chaudère, l'idée m'est venue d'en tracer la courbe.

Je suis donc parti de cet extrait de script pour demander à Chatgpt de le remettre en forme,

{% if now().hour == 6 %}
      {{ 17 | float }}
    {% elif now().hour == 7 %}
      {{ 18 | float }}
    {% elif now().hour == 8 %}
      {{ 18 | float }}
    {% elif now().hour == 9 %}
      {{ 18 | float }}
    {% elif now().hour == 10 %}
      {{ 18 | float }}
    {% elif now().hour == 11 %}
      {{ 18.5 | float }}
    {% elif now().hour == 12 %}
      {{ 18.5 | float }}
    {% elif now().hour == 13 %}
      {{ 19 | float }}
    {% elif now().hour == 14 %}
      {{ 18 | float }}
    {% elif now().hour == 15 %}
      {{ 18 | float }}
    {% elif now().hour == 16 %}
      {{ 18 | float }}
    {% elif now().hour == 17 %}
      {{ 18 | float }}
    {% elif now().hour == 18 %}
      {{ 18.5 | float }}
    {% elif now().hour == 19 %}
      {{ 19 | float }}
    {% elif now().hour == 20 %}
      {{ 19 | float }}
    {% elif now().hour == 21 %}
      {{ 19 | float }}
    {% elif now().hour == 22 %}
      {{ 18.5 | float }}
    {% elif now().hour == 23 %}
      {{ 18.5 | float }}
    {% endif %}

Puis je lui ai demandé de le présenter proprement, ce qu'il a fait avec application,

6h : 17.0°C
7h : 18.0°C
8h : 18.0°C
9h : 18.0°C
10h : 18.0°C
11h : 18.5°C
12h : 18.5°C
13h : 19.0°C
14h : 18.0°C
15h : 18.0°C
16h : 18.0°C
17h : 18.0°C
18h : 18.5°C
19h : 19.0°C
20h : 19.0°C
21h : 19.0°C
22h : 18.5°C
23h : 10°C

Et enfin j'ai demandé une courbe, et il m'a généré ce script, qu marche très bien ! On

import matplotlib.pyplot as plt

# Heures et températures
heures = [6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23]
temperatures = [17.0, 18.0, 18.0, 18.0, 18.0, 18.5, 18.5, 19.0, 18.0, 18.0, 18.0, 18.0, 18.5, 19.0, 19.0, 19.0, 18.5, 18.5]

# Création du graphique
plt.figure(figsize=(10, 6))
plt.plot(heures, temperatures, marker='o', linestyle='-', color='b')

# Ajout de titres et de labels
plt.title('Variation de la température par heure')
plt.xlabel('Heure')
plt.ylabel('Température (°C)')

# Affichage du graphique
plt.grid(True)
plt.tight_layout()
plt.show()