Was macht figures – publikationsreife gnuplot-Diagramme?
Wandelt eine natürlichsprachliche Anfrage zusammen mit einer oder mehreren Datendateien in ein druckfertiges PDF-Diagramm im einheitlichen Gruppenstil um. Unterstützt die gängigen Magnetismus-Diagrammtypen, wählbare Farbschemata und Journal- vs. Präsentationsstil.
Voraussetzungen
gnuplot(v6+) – die Diagramm-Engine. Rendert PDF direkt überpdfcairo.pdftoppm(poppler) – konvertiert das Ausgabe-PDF in PNG, sodass du das Diagramm ansehen und iterieren kannst. Überprüfe das Ergebnis immer visuell.
Wie Stile/Farben geladen werden – GNUPLOT_LIB (wichtig)
Skripte laden gemeinsam genutzte Stildateien mit bloßem Namen, z. B. load "nature.journal" und load "bluegold.colour". gnuplot findet diese über den Suchpfad GNUPLOT_LIB. Führe gnuplot immer mit GNUPLOT_LIB aus, das auf die styles/- und colours/-Verzeichnisse dieses Skills zeigt:
SKILL_DIR unten ist der absolute Pfad zum eigenen Verzeichnis dieses Skills (das Verzeichnis, das diese SKILL.md enthält, z. B. ~/.claude/skills/figures bei persönlicher Installation oder der Repository-Pfad während der Entwicklung). Ersetze den tatsächlichen Pfad:
SKILL_DIR="/absoluter/pfad/zu/figures" # Verzeichnis mit dieser SKILL.md
export GNUPLOT_LIB="$SKILL_DIR/styles:$SKILL_DIR/colours"
gnuplot myfigure.gpl # aus dem Verzeichnis mit den Daten ausführen
Durch die Auslagerung der Pfade aus den Skripten bleiben diese portabel, und eine Änderung an einer Stildatei überträgt sich auf jedes Diagramm, das sie lädt.
Workflow
- Identifiziere den Diagrammtyp aus der Anfrage (siehe
references/figure-types.md): Hysterese M(H), Magnetisierung M(T), Zeitreihe M(t) oder andere. Jeder Typ hat ein kanonisches Beispielskript zum Kopieren. - Überprüfe die Daten. Sieh dir die Datei an: Entferne Kommentarzeilen (
#), zähle Spalten, überprüfe Bereiche. Ordne zu, welche Spalten x und y sind. VAMPIRE-Ausgabedateien sind einfache durch Leerzeichen getrennte Spalten mit#-Kommentarzeilen; wenn eine VAMPIRE-Eingabedatei neben den Daten liegt, definieren ihreoutput:-Schlüssel die Spaltenreihenfolge – lies sie, um die Spalten korrekt zu beschriften. Andernfalls behandle die Daten als generische Spalten und bestätige die Zuordnung mit dem Benutzer, wenn sie uneindeutig ist. - Kopiere das passende Beispiel aus
examples/<typ>/als Ausgangspunkt und passe es an: Daten-Dateinamen,using-Spalten, Achsenbeschriftungen + Einheiten, Achsengrenzen (5 % über den ersten und letzten Haupttick an beiden Enden, viapadlo/padhioderlpadlo/lpadhiaus der Journal-Datei, siehereferences/conventions.md), Legendenbeschriftungen und ggf. eine Anpassung. - Wähle Stil und Farbschema (Standardeinstellungen unten; respektiere explizite Wünsche). Setze sie über die beiden
load-Zeilen am Anfang des Skripts. - Rendere mit gesetzter
GNUPLOT_LIBund erzeuge ein PDF. - Betrachte die Ausgabe: Konvertiere mit
pdftoppm -png -r 150 out.pdf previewund lies das PNG. Überprüfe, ob Beschriftungen abgeschnitten sind, die Legende überlappt, die Tickdichte passt und der Farbkontrast stimmt. Iteriere am Skript, bis es einwandfrei ist. - Übergebe das
.gpl-Skript und das PDF. Das Diagramm muss allein aus Skript + Daten reproduzierbar sein.
Standardeinstellungen
- Stil:
nature.journal(86 mm einspaltig, Helvetica, druckbereit). - Farbschema:
bluegold.colour(der Standard des Teams). - Ausgabe: PDF via
pdfcairo, direkt – niemals den EPS→PDF-Pfad.
Stile (styles/)
| Datei | Verwendung |
|---|---|
nature.journal | Standard. Einspaltige Breite (86 mm) für ein zweispaltiges Journal; heller Hintergrund, Helvetica. |
inverted.journal | Dunkelgrauer Hintergrund, helle Vordergrundfarben – für dunkle Folien/Web. |
presentation.journal | Avenir Next, große Leinwand – für Projektionsvorträge. |
presentation-dark.journal | Präsentationsstil auf dunklem Hintergrund. |
Farbschemata (colours/)
Standard: bluegold, verwendet, sofern kein anderes Schema angefordert wird. Sequential/perzeptuell (matplotlib- und MATLAB-Familien): viridis, magma, inferno, plasma, cividis (farbenblind-sicher), parula. Divergierend: bluegold, skyrmion (marineblau → weiß → rot, für vorzeichenbehaftete Größen wie s_z), RdYlBu. Einzelfarbton: purple. Regenbogen: turbo (verbessert), jet (nicht empfohlen – nicht perzeptuell gleichmäßig). Jedes definiert diskrete Serien-Linienstile ls 1–ls 8 sowie eine kontinuierliche pm3d-Palette. Siehe references/colour-schemes.md zur Verwendung der einzelnen Schemata und Hell/Dunkel-Kombinationen.
Diagrammtypen & Beispiele
Kanonische, kommentierte, ausführbare Skripte befinden sich in examples/:
examples/mvsH/MH.gpl– Hystereseschleife M(H) mit Nulllinien-Führungen.examples/mvsT/mvsT.gpl– Magnetisierung M(T) mit Curie–Bloch-Anpassung.examples/mvstime/mvstime.gpl– Mehrkurven-Entmagnetisierungs-Zeitreihe (synthetische Daten, mitmake_data.pyneu erzeugen).examples/anisotropy-surface/3D.gpl– 3D-Energiefläche: Rasterfarbe + Vektorachsen, zusammengesetzt innerhalb von gnuplot (kleine, schnelle PDFs; keine externen Werkzeuge).
Referenzen
references/conventions.md– die Hausregeln für Diagramme (Beschriftungen, Einheiten, Ticks, Legenden, Anpassungen, Enhanced-Text-Syntax).references/figure-types.md– typspezifische Rezepte und Spaltenzuordnung.references/colour-schemes.md– Schema-Katalog und Auswahlhilfe.