Ich bin neu in Python und mySQL. Zunächst möchte ich einige Grafiken mit den Daten, die ich in meiner SQL-Datenbank habe, erzeugen. Am Ende möchte ich einen PDF-Bericht erstellen, der dieses Diagramm enthält. Jede Hilfe/Ratschläge, es wird toll sein, wenn Sie mir in die richtige Richtung zeigen können. Vielen Dank.Verwenden von Python zum Zeichnen von Diagrammen aus der mySQL-Datenbank
Antwort
Ich erstelle Grafiken aus einer Datenbank mit> 10 Millionen Einträgen. Die Aggregation wird hauptsächlich von der Datenbank selbst durchgeführt. Manche Operationen benötigen viel Zeit, aber es ist in Ordnung.
Die Verbindung zur Datenbank ist mit sqlalchemy und mysqlconnector einfach. Es gibt viele andere Konnektoren für mysql.
Hier ein kleines Testskript für sqlalchemy. Die Tabellen werden in diesem Beispiel generiert.
können Sie mehr bei http://www.sqlalchemy.org/
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, String, Integer, BigInteger, Text, Index
from sqlalchemy.orm.scoping import scoped_session
Base = declarative_base()
class ATestEntity(Base):
__tablename__ = 'a_test_entity_table'
id = Column(String(32), primary_key=True)
astring = Column(String(32))
aint = Column(BigInteger, default=-1)
dialect = "mysql+mysqlconnector"
username = "username"
password = "passwort"
host = "localhost"
port = "3306"
database = "tests"
dbconnector = '%s://%s:%[email protected]%s:%s/%s?charset=utf8mb4&use_unicode=0' % \
(dialect, username, password, host, port, database,)
engine = create_engine(dbconnector)
session_factory = sessionmaker(autocommit=False, autoflush=False)
session_factory.configure(bind=engine)
Base.metadata.create_all(engine)
s = scoped_session(session_factory)
try:
#Create a new entity
a_obj = ATestEntity()
a_obj.id = 'test'
a_obj.astring = 'this is a test'
a_obj.aint = 10
s.add(a_obj)
s.commit()
#Delete a entity
s.query(ATestEntity).filter(ATestEntity.id == 'test').delete()
s.commit()
except:
s.rollback()
raise
Die mathematische Berechnung finden außerhalb mit numpy getan werden kann und SciPy, wenn nötig. http://www.numpy.org/ https://www.scipy.org/
Das Grundstück kann mit matplotlib erfolgen. Es gibt viele Beispiele auf. http://matplotlib.org/examples/index.html Sie können auch Prety-Diagramme generieren.
Ich erzeuge meine Berichte aus generierten Latex-Dateien. Aber es gibt auch viele PDF-Bibliotheken für Python.
Es ist nur ein Weg, um es zu erledigen.
- 1. Verwenden von xlsxwriter zum Erstellen von Diagrammen aus angegebenen Zellen
- 2. Ähnliche Bibliotheken/Klassen zum Zeichnen von Diagrammen wie Google Charts?
- 3. Python: Modul zum Plotten von Gantt-Diagrammen
- 4. Gibt es ein LaTeX-Paket zum Zeichnen von Gantt-Diagrammen?
- 5. Verwenden von Alpha aus Textur zum Zeichnen von Volltonfarbe
- 6. Zeichnen von SysML/UML-Diagrammen in Javascript
- 7. Verwenden von ng-repeat zum Wiederholen von Google Chart-Diagrammen
- 8. Verwenden von Rscript zum Erstellen von Diagrammen über die Befehlszeile
- 9. Verwenden von plt.show() zum Zeichnen einer Komponente in Python
- 10. Java-Grafikbibliothek zum Zeichnen von Wahrscheinlichkeitsbaumdiagrammen
- 11. Verwenden von Python zum Ziehen von Dateien aus GitHub
- 12. Verwenden von Python zum Herunterladen von Dateien aus Box
- 13. Laden und Speichern von Diagrammen in Python
- 14. Verwenden von Python zum Ausgeben von Eingabeaufforderungen
- 15. Verwenden von Python zum Ausführen von Befehlszeilenaktionen
- 16. Zeichnen einer glatten Kurve in Matplotlib-Diagrammen
- 17. Formatieren der Daten zum Auffüllen von Google-Diagrammen
- 18. Verwenden von ggplot zum Zeichnen einer anpassbaren Tabelle von Daten
- 19. beim Konvertieren von Kendo-Diagrammen in PDF-Dateien zeichnen Sie Linien auf pdf-Diagrammen
- 20. Bibliothek zum Zeichnen von Noten
- 21. Verwenden von Python zum Entwickeln von Webanwendung
- 22. Verwenden von Python zum Erstellen von Webanwendungen
- 23. Verwenden von Python zum Automatisieren von AutoCAD
- 24. Löschen von Diagrammen aus dem Bereich
- 25. Verwenden von Turtle in Python zum Zeichnen von sechsspitzigen Sternen mit unterschiedlichen Seitenlängen
- 26. Referenzen zum Erstellen von Diagrammen/Graphen in PHP?
- 27. Erstellen einer benutzerdefinierten Wahrscheinlichkeitsverteilung zum Zeichnen von Stichproben aus SciPy
- 28. Verwendung von Handles.Label zum Zeichnen von Text in der Szenenansicht
- 29. Verwenden von .runsettings zum Ausschließen von Assemblys aus der Codeabdeckung
- 30. Werkzeug zum Zeichnen von Zeitdiagrammen
Vielen Dank es zu schätzen wissen. Ich werde das auf jeden Fall überprüfen. –
Ich möchte nur klarstellen, dass ich bereits eine Datenbank habe, was ich tun möchte, um Daten aus zwei Spalten, z. ein Histogramm. –
Sie können Entitäten erstellen, die Ihre Datenbank darstellen, und Sie müssen nicht Base.metadata.create_all (engine) aufrufen, die die Tabellen erstellt. Es ist wirklich einfach, mit SQLAlchemy auf Ihre Datenbank zuzugreifen. – ego2dot0