figures — figuras gnuplot de calidad de publicación
Convierte una solicitud en lenguaje natural y uno o más archivos de datos en una figura PDF lista para publicar con el estilo del grupo. Maneja los tipos de figuras de magnetismo más comunes, esquemas de color seleccionables y estilos de revista vs presentación.
Prerrequisitos
gnuplot(v6+) — el motor de trazado. Renderiza PDF directamente mediantepdfcairo.pdftoppm(poppler) — convierte el PDF de salida a PNG para que puedas ver la figura e iterar. Siempre verifica visualmente el resultado.
Cómo se cargan los estilos/colores — GNUPLOT_LIB (importante)
Los scripts cargan archivos de estilo compartidos por su nombre simple, por ejemplo load "nature.journal"
y load "bluegold.colour". gnuplot los encuentra a través de la ruta de búsqueda GNUPLOT_LIB.
Ejecuta gnuplot siempre con GNUPLOT_LIB apuntando a los directorios styles/ y colours/ de este skill:
SKILL_DIR a continuación es la ruta absoluta al directorio propio de este skill (el
que contiene este SKILL.md, por ejemplo ~/.claude/skills/figures si está instalado
personalmente, o la ruta del repositorio durante el desarrollo). Sustituye la ruta real:
SKILL_DIR="/ruta/absoluta/a/figures" # directorio que contiene este SKILL.md
export GNUPLOT_LIB="$SKILL_DIR/styles:$SKILL_DIR/colours"
gnuplot migrafico.gpl # ejecutar desde el directorio que contiene los datos
Mantener las rutas fuera de los scripts significa que un script es portátil y un cambio en un archivo de estilo se propaga a cada figura que lo carga.
Flujo de trabajo
- Identifica el tipo de figura a partir de la solicitud (consulta
references/figure-types.md): histéresis M(H), magnetización M(T), serie temporal M(t) u otro tipo. Cada tipo tiene un script de ejemplo canónico para copiar. - Inspecciona los datos. Mira el archivo: elimina líneas de comentario (
#), cuenta columnas, comprueba rangos. Asigna qué columnas son x e y. Los archivos de salida de VAMPIRE son columnas separadas por espacios en blanco con encabezados de comentario#; si hay un archivo de entrada de VAMPIRE junto a los datos, sus palabras claveoutput:definen el orden de las columnas — léelo para etiquetar las columnas correctamente. De lo contrario, trata los datos como columnas genéricas y confirma la asignación con el usuario si es ambiguo. - Copia el ejemplo correspondiente de
examples/<tipo>/como punto de partida y adáptalo: nombres de archivos de datos, columnasusing, etiquetas de ejes + unidades, límites de los ejes (5 % más allá del primer y último tick mayor en ambos extremos, mediantepadlo/padhiolpadlo/lpadhidel archivo de revista, consultareferences/conventions.md), etiquetas de leyenda y cualquier ajuste. - Elige el estilo y el esquema de color (valores por defecto a continuación; respeta cualquier
solicitud explícita). Configúralos mediante las dos líneas
loadal inicio del script. - Renderiza con
GNUPLOT_LIBconfigurado, produciendo un PDF. - Observa la salida: convierte con
pdftoppm -png -r 150 salida.pdf vistay lee el PNG. Comprueba etiquetas recortadas, superposición de leyendas, densidad de ticks, contraste de colores. Itera sobre el script hasta que quede limpio. - Entrega el script
.gply el PDF. La figura debe ser reproducible a partir del script + los datos únicamente.
Valores por defecto
- Estilo:
nature.journal(86 mm de una columna, Helvetica, listo para impresión). - Esquema de color:
bluegold.colour(el predeterminado del grupo). - Salida: PDF mediante
pdfcairo, directo — nunca el pipeline EPS→PDF.
Estilos (styles/)
| Archivo | Uso |
|---|---|
nature.journal | Predeterminado. Ancho de una columna (86 mm) para revista de dos columnas; fondo claro, Helvetica. |
inverted.journal | Fondo gris oscuro, primer plano claro — diapositivas/web oscuras. |
presentation.journal | Avenir Next, lienzo grande — diapositivas de charla proyectada. |
presentation-dark.journal | Estilo de presentación sobre fondo oscuro. |
Esquemas de color (colours/)
Predeterminado: bluegold, usado a menos que se solicite otro esquema.
Secuenciales/perceptuales (familias matplotlib y MATLAB): viridis, magma,
inferno, plasma, cividis (seguro para daltonismo), parula. Divergentes:
bluegold, skyrmion (azul marino → blanco → rojo, para magnitudes con signo
como s_z), RdYlBu. Un solo tono: purple. Arcoíris: turbo (mejorado),
jet (desaconsejado — no uniforme perceptual). Cada uno define estilos de línea
para series discretas ls 1–ls 8 más una paleta continua pm3d. Consulta
references/colour-schemes.md para saber cuándo usar cada uno y la combinación claro/oscuro.
Tipos de figura y ejemplos
Los scripts canónicos, anotados y ejecutables viven en examples/:
examples/mvsH/MH.gpl— lazo de histéresis M(H), guías de eje cero.examples/mvsT/mvsT.gpl— magnetización M(T) con ajuste de Curie–Bloch.examples/mvstime/mvstime.gpl— serie temporal de desmagnetización multitraza (datos sintéticos, regenerar conmake_data.py).examples/anisotropy-surface/3D.gpl— superficie de energía 3D: color raster + ejes vectoriales compuestos dentro de gnuplot (PDFs pequeños y rápidos; sin herramientas externas).
Referencias
references/conventions.md— las reglas de figuras del grupo (etiquetas, unidades, ticks, leyendas, ajustes, sintaxis de texto mejorado).references/figure-types.md— receta por tipo y asignación de columnas.references/colour-schemes.md— catálogo de esquemas y guía de selección.