Balkendiagramm & Spannung

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Consti9_9
User
Beiträge: 24
Registriert: Dienstag 4. Dezember 2018, 09:09

Hallo zusammen,

mein derzeitiges Problem ist, dass ich die Spannung (Akkustand) eines Lithium Ionen Akkus an dem Raspberry Pi Display anzeigen will.
Es handelt sich um einen 12V Akku welchen ich dann über einen Spannungsteiler am ADC auslese. Mir ist durchaus bewusst das diese Messung sehr ungenau ist,
da Lithium Ionen Akkus sehr geringe Spannungsdifferenzen ausweisen.
Nun möchte ich die Spannung irgendwie als Balkendiagramm auf dem Display darstellen, jedoch habe ich im Internet und Forum nichts gefunden was für mich verständlich war.
Benutzeravatar
sparrow
User
Beiträge: 4193
Registriert: Freitag 17. April 2009, 10:28

Entweder selbst anfangen auf einem Canvas zu malen, oder sich direkt mit "matplotlib" beschäftigen.
Benutzeravatar
noisefloor
User
Beiträge: 3856
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,
jedoch habe ich im Internet und Forum nichts gefunden was für mich verständlich war.
Es gibt für Pyton eine ganze Reihe von Modulen, die Graphen plotten können. Die bekanntest ist wahrscheinlich Matplotlib, es gibt aber auch noch Plotly, Bokeh, ReportLab an Graphen plotten u.v.m.

Ob das für die Verständlich ist, liegt außerhalb unseres Einflusses... ein paar Zeile Code braucht man dafür schon.

Gruß, noiselfoor
Consti9_9
User
Beiträge: 24
Registriert: Dienstag 4. Dezember 2018, 09:09

Wenn ich das Balkendiagramm erstellt habe, kann ich das auch in die GUI Darstellung mit schon definierten Tastern etc. einfügen?
__deets__
User
Beiträge: 14539
Registriert: Mittwoch 14. Oktober 2015, 14:29

Matplotlib und tkinter zb ja. Oder du malst selbst, mit einem Canvas.

Warum du für einen kontinuierlichen Wert wie der Ladespannug allerdings ausgerechnet ein Balkendiagramm benuzten willst, ist mir nicht ersichtlich.
Consti9_9
User
Beiträge: 24
Registriert: Dienstag 4. Dezember 2018, 09:09

Der Akkustand hängt ja von der Spannung des Akkus ab somit kann man den Akkustand sowie bei jedem Handy als Balken darstellen. Jedoch schaffe ich es gerade nicht das sich mein Diagramm live ändert. Habe dies mit einer Laufvariablen gemacht

Code: Alles auswählen

import matplotlib.pyplot as plt
import numpy as np

a = 0

while True:
    a = a+10
    
    # Fixing random state for reproducibility
    np.random.seed(19680801)


    plt.rcdefaults()
    fig, ax = plt.subplots()

    # Example data
    people = ('B')
    y_pos = np.arange(len(people))
    performance = a #np.random.rand(len(people))
    error = np.random.rand(len(people))

    ax.barh(y_pos, performance, xerr=error, align='center',
        color='green', ecolor='black')
    ax.set_yticks(y_pos)
    plt.xticks(np.arange(0, 100, 20))
    ax.set_yticklabels(' ')
    ax.invert_yaxis()  # labels read top-to-bottom
    ax.set_xlabel('Prozentstatus')
    ax.set_title('Lithium Ionen Akkustand')

    plt.show()

__deets__
User
Beiträge: 14539
Registriert: Mittwoch 14. Oktober 2015, 14:29

Man kann alles mögliche. Das man diskrete Schritte /Balken für Ladezustand verwendet ist aber nicht üblich. Sondern Prozente. Aber das ist am Ende ja dein Problem.

Und Animation ist ein bisschen komplizierter:

https://stackoverflow.com/questions/211 ... nter-frame
Antworten