Ich brauche etwas Hilfe, um gut aussehende vektorisierte Bilder dieser Art von Themen zu erstellen:
Ich arbeite viel mit LaTeX, wenn es um Schriftsatz geht, daher habe ich einige grundlegende Erfahrungen mit Tikz. Ich habe jedoch das Gefühl, dass ich mich ein wenig verloren fühle, wenn ich komplizierte Bilder wie die oben genannten erstellen muss.
Ich würde mich sehr freuen, wenn mich jemand in die richtige Richtung weisen könnte, wie ich diese Art von Bildern erstellen könnte, vorzugsweise mit kostenloser Software.
Grafikanwendungen mit Vektorausgabe sind verfügbar. Ich habe folgende Anwendungen recht erfolgreich eingesetzt:
Es ist schwierig, dass Sie möglicherweise auch 3D-Apps oder Grafik-Apps verwenden müssen, die ich vorschlage:
Normalerweise ist es produktiver, ein Tool zu verwenden, das die Dinge tatsächlich grafisch darstellen kann, und dann die EPS-Datei zur späteren Fertigstellung in ein Grafiker-Tool wie Illustrator zu importieren. Der wirkliche Vorteil ist, dass Sie mit den Grafiken spielen können, bevor Sie sich einmischen, sodass Änderungen einfach sind.
Es ist auch möglich, Dinge in Illustrator selbst zu zeichnen, wenn Sie möchten, etwas Code, der Ihnen auf Ihrem Weg hilft.
Hier ist eine kurze Liste von Dingen, bis ich Zeit habe, einige geeignete Beispiele zu finden (laminare Strömung rechts).
Einige Beispiele mit ähnlichen Komponenten (möglicherweise müssen Sie weitere Dinge hinzufügen, aber hier sind einige Teile des Puzzles):
Am besten schnappst du dir einen Vektor-Editor und lernst, wie man ihn benutzt. Die obigen Beispiele scheinen nicht kompliziert zu sein, und ein grundlegendes Verständnis des Zeichnens von Vektoren würde die Aufgabe gut erfüllen.
Wenn Sie eines ausprobieren, würde ich von Illustrator oder Corel Draw abraten. Obwohl beide leistungsstarke und beliebte Werkzeuge der Wahl sind, werden sie für einen Anfänger entmutigend erscheinen. Inkscape ist eine gute Wahl. Es ist kostenlos und es sollte kein Problem sein, es zu lernen.
Zuerst: .PY + Matplotlib -> .SVG
Dann .SVG -> Inkskape
.SVG ist jedoch leicht genug zu lernen, um .PY -> .SVG zu wechseln
Sie können auch .PY + Matplotlib -> .PDF verwenden. Inkscape würde das auch öffnen.
Haftungsausschluss:
Jetzt eine robustere Antwort: (Nicht, dass ich gerne Hausaufgaben für Doktoranden mache...)
Alles hier wurde von der Matplotlib-Website (siehe Beispiele) und von Stack Overflow (matplotlib save fig image trim) gestohlen – glatt gestohlen. Ich habe es nur kopiert/eingefügt und getestet.
Die resultierende out.svg-Datei kann direkt in Inkscape geöffnet werden. Das Bild ist eine Gruppe/Gruppen kleinerer Bilder. Klicken Sie auf einen beliebigen Teil des Bildes und verwenden Sie dann die Option „Gruppierung aufheben“ von Inkscape. Möglicherweise müssen Sie die Gruppierung einige Male aufheben, um einen Teil des Bildes direkt bearbeiten zu können.
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
from matplotlib.ticker import LinearLocator, FormatStrFormatter
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.gca(projection='3d')
X = np.arange(-5, 5, 0.25)
Y = np.arange(-5, 5, 0.25)
X, Y = np.meshgrid(X, Y)
R = np.sqrt(X**2 + Y**2)
Z = np.sin(R)
surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=cm.coolwarm,
linewidth=0, antialiased=False)
ax.set_zlim(-1.01, 1.01)
ax.zaxis.set_major_locator(LinearLocator(10))
ax.zaxis.set_major_formatter(FormatStrFormatter('%.02f'))
fig.colorbar(surf, shrink=0.5, aspect=5)
#plt.show()
fig.set_size_inches(4,3)
fig.set_dpi(40)
fig.savefig('out.svg', transparent=True, bbox_inches='tight', pad_inches=0)
Ryan
Dipol
joojaa
Dipol
joojaa