[PYTHON] Konvertieren Sie das Matplotlib-Diagramm in das EMF-Dateiformat

Konvertieren Sie das Matplotlib-Diagramm in das EMF-Dateiformat

Excel-Daten mit matplotlib (1) grafisch darstellen

↑ Wie hier erwähnt, hatte ich ein Problem, das ich nicht direkt im EMF-Dateiformat speichern konnte. Ich habe meine eigene Lösung gefunden, daher werde ich sie hier zusammenfassen.

Umgebung

・ Ubuntu 16.04 ・ Python3.5.2 ・ Matplotlib 2.0.0 ** ・ Inkscape 0.91 (wird für die Konvertierung von EPS → EMK verwendet) ** ← Dies muss installiert sein

Methode

(1)Grafik gezeichnet mit matplotlibSVG-FormatSpeichern mit plt.savefig('sample.svg')

(2) Über die Befehlszeile Inkscape [Quelldateiname.svg] -M [Dateiname.emf]

$ inkscape sample.svg -M sample.emf

Wenn Sie es von Python in einem Schuss tun

Führen Sie auf diese Weise die Befehlszeile mit Python aus? Vorerst konnte ich tun, was ich wollte.

sample.py


import subprocess
from matplotlib import pyplot as plt

fig, ax = plt.subplots()
ax.plot([1,2,3])

plt.savefig("sample.svg")
subprocess.call('inkscape sample.svg -M sample.emf',shell=True)
plt.show()

das ist alles

(Notiz) Format, das mit matplotlib 2.0.0 gespeichert werden kann

Ich habe auf diese Weise nachgeforscht

import matplotlib.pyplot as plt
fig = plt.figure()
print(fig.canvas.get_supported_filetypes())

Das Ergebnis ist diese Liste

'pdf': 'Portable Document Format', 
'ps': 'Postscript', 
'rgba': 'Raw RGBA bitmap', 
'pgf': 'PGF code for LaTeX',
'svgz': 'Scalable Vector Graphics', 
'svg': 'Scalable Vector Graphics', 
'raw': 'Raw RGBA bitmap', 
'eps': 'Encapsulated Postscript', 
'png': 'Portable Network Graphics'

(memo) Befehlszeilenoption inkscape0.91

Verwendung: inkscape [Optionen ...] [Dateien ...]

Gültige Optionen: -V, --version Inkscape-Version anzeigen -z, --without-gui Verwenden Sie keinen X-Server (verarbeiten Sie nur Dateien in der Konsole) Versuche, den X-Server auch dann zu verwenden, wenn die Variable -g, --with-gui $ DISPLAY nicht festgelegt ist -f, --file = Dateiname Öffnet das angegebene Dokument (Optionale Zeichenfolgen werden möglicherweise ignoriert.) -p, --print = Dateiname Dokument in angegebene Datei drucken (Pipe mit '| Programm') -e, --export-png = Dateiname Dokument in PNG-Datei exportieren -d, --export-dpi = DPI-Export nach Bitmap und PS / EPS / PDF Filterrasterungsauflösung (Standard ist 90) -a, --export-area = x0: y0: x1: y1 SVG Exportbereich pro Benutzer (Standard ist Seite, 0,0 Ist die untere linke Ecke) -D, --export-area-draw Der Exportbereich ist die gesamte Zeichnung (nicht die Seite) -C, --export-area-page Der Exportbereich ist die gesamte Seite --export-margin = Wert nur PS / EPS / PDF, legen Sie den Rand um den Exportbereich in mm fest (Standard ist 0) --export-area-snap SVG-Bitmap außerhalb des Exportbereichs Am ungefähren ganzzahligen Wert pro Benutzer ausrichten -w, --export-width = width Geben Sie die generierte Bitmap-Breite als Pixelwert an (Vorrang vor Exportauflösung) -h, --export-height = Höhe Geben Sie die Höhe der generierten Bitmap als Pixelwert an (Vorrang vor Exportauflösung) -i, --export-id = ID ID des zu exportierenden Objekts -j, --export-id-only export-id Exportieren Sie nur die Objekte von, nicht alle anderen (Nur wenn Export-ID angegeben ist) -t, --export-use-hints Exportieren mit Dateiname oder DPI-Hinweis (nur wenn Export-ID angegeben ist) -b, --export-background = color Bitmap-Hintergrundfarbe exportieren (von SVG unterstützte Farbzeichenfolge) -y, --export-background-opacity = value Bitmap-Transparenz exportieren (0,0 bis 1,0 oder 1 bis 255) -l, --export-plain-svg = Dateiname In einfache SVG-Datei exportieren (Verwenden Sie keinen Sodipodi- oder Inkscape-Namespace.) -P, --export-ps = Dateiname Dokument in PS-Datei exportieren -E, --export-eps = Dateiname Dokument in EPS-Datei exportieren --export-ps-level = PS Level Wählen Sie die PostScript-Ebene aus, die für den Export verwendet werden soll. Level 2 (Standard) und 3 sind verfügbar. -A, --export-pdf = Dateiname Dokument in PDF-Datei exportieren --export-pdf-version = PDF_VERSION Exportiert mit der angegebenen PDF-Version. (Hinweis: PDF Geben Sie die genaue Zeichenfolge an, die im Exportdialog angezeigt wird. Beispiel: "PDF 1.4" entspricht PDF-a) --export-latex Export nach PDF / PS / EPS mit Ausnahme von Text. LaTeX zusätzlich zu PDF / PS / EPS Wenn Sie die Datei exportieren, lautet der Text PDF / PS / EPS Wird am Anfang von platziert. LaTeX enthält Ausgaben wie \ input {latexfile.tex}. -M, --export-emf = Dateiname Dokument in Extended Metafile (EMF) exportieren -m, --export-wmf = Dateiname Dokument in Windows-Metadatei exportieren (WMF) -T, --export-text-to-path Konvertiert Textobjekte beim Export in Pfade (PS, EPS, PDF, SVG) --export-ignore-filter Rendert gefilterte Objekte ungefiltert statt rastern (PS, EPS, PDF) -X, --query-x X für die gesamte Zeichnung oder, falls angegeben, ein Objekt mit --query-id Koordinaten abfragen -Y, --query-y Y für die gesamte Zeichnung oder, falls angegeben, ein Objekt mit --query-id Koordinaten abfragen -W, --query-width gesamte Zeichnung oder --query-id, falls angegeben Fragen Sie die Breite des Objekts ab -H, --query-height gesamte Zeichnung oder --query-id, falls angegeben Erkundigen Sie sich nach der Höhe des Objekts -S, --query-all Listen-ID, x, y, w, h aller Objekte -I, --query-id = ID ID des Objekts, das nach Position und Größe abgefragt werden soll -x, --extension-directory Gibt das Erweiterungsverzeichnis aus und beendet es --vacuum-defs Entfernen Sie nicht verwendete Definitionen aus dem Abschnitt defs des Dokuments --verb-list Listet die IDs aller VERBs in Inkscape auf --verb = VERB-ID VERB, das beim Öffnen von Inkscape aufgerufen werden soll --select = OBJECT-ID ID des Objekts, das beim Öffnen von Inkscape ausgewählt werden soll

Help options: -?, --help Show this help message --usage Display brief usage message

Recommended Posts

Konvertieren Sie das Matplotlib-Diagramm in das EMF-Dateiformat
So konvertieren Sie Json-Dateien in das CSV- oder EXCEL-Format
Konvertieren Sie die Genbank-Datei in die GFF-Datei
Konvertieren Sie die XML-Datei im Pascal-VOC-Format in die JSON-Datei im COCO-Format
[Caffe] Konvertiert die mittlere Datei vom binären Proto-Format in das npy-Format
Zeichnen Sie einfach Diagramme mit matplotlib
[Python] So konvertieren Sie eine Datenbankdatei in CSV
Konvertieren Sie Daten im XML-Format in Daten im TXT-Format (yolov3)
So konvertieren Sie das Format einfach aus Markdown
So konvertieren Sie Python in eine exe-Datei
[Python] Konvertieren Sie CSV-Dateibegrenzer in Tabulatortrennzeichen
Konvertieren Sie die psd-Datei in Python in png
Konvertieren Sie an E-Mails angehängte PDF-Dateien in das Textformat
Konvertieren Sie den Python-Datumstyp in das RFC822-Format
[Tensorflowjs_converter] So konvertieren Sie das Tensorflow-Modell in das Format Tensorflow.js
Zum HSV konvertieren
[Python] Zeichnen mehrerer Diagramme mit Matplotlib
Konvertieren Sie die SVG-Datei mit Python in png / ico
Konvertieren Sie die YouTube-Wiedergabeliste in eine lokale Datei im m3u-Format für den Smplayer (per Toy Tool).
Konvertieren Sie mehrere JPG-Dateien in eine PDF-Datei
Konvertieren Sie Daten im JSON-Format in txt (mit yolo)
Konvertieren Sie Binärpakete für Windows in das Radformat
Konvertieren Sie die Zeichenfolge mit Python in ein zeichenweises Listenformat
Konvertieren Sie eine Textdatei mit hexadezimalen Werten in eine Binärdatei
Konvertieren Sie Qiita-Artikel zur Sicherung in das Jekyll-Post-Format
So konvertieren Sie eine JSON-Datei mit Python Pandas in eine CSV-Datei
So konvertieren Sie ein Mel-Spektrogramm zurück in eine WAV-Datei
Konvertieren / Zurückgeben von Klassenobjekten in das JSON-Format in Python
Konvertieren Sie die Übersetzungsressourcendatei (.po) in das XLIFF-Format (.xlf).
Konvertiere Kanji in Kana
Jupyter in py umwandeln
Konvertiere keras-yolo3 in onnx
Pandas-Formatdatei lesen
Wie benutzt man Matplotlib?
Dikt in Array konvertieren
Konvertieren Sie json in Excel
[Python] Verwendung von Matplotlib, einer Bibliothek zum Zeichnen von Diagrammen
Python / datetime> Implementierung zum Konvertieren des JJJJMMTT-Formats in JJJJ / MM / TT
Linux-Skript zum Konvertieren von Markdown-Dateien vom JupyterLab-Format in das Qiita-Format
Konvertieren Sie eine Excel-Datei für verschiedene Zwecke in Python in Text