Ricerca delle abbreviazioni di gnuplot


11

Sono nuovo di gnuplot. Sto leggendo il manuale ma non riesco a trovare spiegazioni per alcune delle abbreviazioni che le persone usano nei loro script. Ad esempio, sto lavorando con uno script che dice:

f(x)=invnorm(x)
g(x)=norm(x)

plot \
    "file.curve" u (f($3)):(f($2)) ti "Curve 1" ls 1 lw 3, \
    "file.curve" u (f($3)):(f($2)) ti "Curve 2" ls 2 lw 3, \
    "file.curve" u (f($3)):(f($2)) ti "Curve 3" ls 3 lw 3, \
    f(1-g(x)) noti lt rgb "#FF0000" lw 0.75, \
    f(12.5*g(x)) noti lt rgb "#808080" lw 0.75

Penso di capire che tista per title, lsper line stylee lwper line width, ma che dire di lte noti? (dove posso cercare questo)?

Con questo, cosa fanno queste ultime due righe?


Ho aggiunto una versione ordinata, forse più accogliente da usare.
Hastur,

Risposte:


9

Gnuplot 5.0.3

Elenco estratto automaticamente delle abbreviazioni con una variante del codice pubblicato nell'altra risposta .

        ra - rilancia  
       basso - basso  
        bi - bind  
        ca - call  
        cl - cancella  
      eval: valuta  
        ex - uscita  
         f - fit  
         h - aiuto  
        ciao - storia  
         l - carico  
        pa - pausa  
         p - trama  
        stampa  
  printerr - printerror  
         q - esci  
       ref - aggiorna  
       rep - sostituisci  
        rileggere  
       res - reset  
        sa - salva  
       scr - screendump  
        impostare  
       lei - conchiglia  
        sh - mostra  
        sp - splot  
        st - stats  
        sistema sy  
       und - undefine  
       uns - unset  
        su - aggiorna  

         a - acsplines  
         b - bezier  
         c - csplines  
         s - sbezier  
         u - unico  
         f - frequenza  
       cum - cumulativo  
         k - kdensity  
        cn - normale  
       mcs - mcsplines  
    spline: spline  
         f - funzioni  
         s - set  
         t - terminale  
         v - variabili  
         a - all  
        ac - tabella_azione  
        an - angoli  
        ar - freccia  
        au - scala automatica  
         b - bar  
       bor - border  
       box - boxwidth  
        cl - clabel  
         c - clip  
     cntrp: cntrparam  
     cntrl - cntrlabel  
      contorni  
     dasht - dashtype  
        da - dati  
      data - file di dati  
        dg - dgrid3d  
        du - dummy  
       enc - codifica  
       dec - decimalsign  
      font - fontpath  
        formato fo  
        funzione fu  
        fu - funzioni  
         g - griglia  
       nascosto - nascosto3d  
       la sua - storia  
        is - isosamples  
         Tasto k  
      keyt - keytitle  
        la - label  
     linee - linestyle  
  tipo di linea: tipi di linea  
       loa - percorso di carico  
       loc - locale  
       log - logscale  
       mac - macro  
       map - mapping  
       map - mapping3d  
       margini di margine  
      lmar - lmargin  
      rmar - rmargin  
      tmar - tmargin  
      bmar - bmargin  
        mo - topo  
      mono - monocromatico  
     multi - multiplot  
       mxt: mxtics  
     nomxt: nomxtics  
      mx2t - mx2tics  
    nomx2t - nomx2tics  
       myt: mytics  
     nomyt - nomytics  
      my2t - my2tics  
    nomy2t - nomy2tics  
       mzt: mztics  
     nomzt - nomztics  
       mrt: mrtics  
     nomrt - nomrtics  
      mcbt: mcbtics  
    nomcbt - nomcbtics  
        di - offset  
        oppure - origine  
         o - output  
        pa - parametrico  
        pm - pm3d  
       pal - palette  
    colorb - colorbox  
    colorn - colornames  
    colori - colorsequence  
         p - trama  
  pointint - pointintervalbox  
       poi: punta  
       pol - polare  
        stampa  
       obj: oggetto  
        sa - campioni  
        si - dimensione  
        stile -  
        su - superficie  
         t - terminale  
   termopt - termoptions  
        ti - tici  
     ticsc - ticscale  
     ticsl - ticslevel  
     timef - timefmt  
       tim - timestamp  
       tit - titolo  
         v - variabili  
        ve - versione  
        vi - visualizza  
       xyp - xyplane  
       xda - xdata  
      x2da - x2data  
       yda: ydata  
      y2da: y2data  
       zda: zdata  
      cbda - cbdata  
        xl - xlabel  
       x2l - x2label  
        yl: ylabel  
       y2l: etichetta y2  
        zl - zlabel  
       cbl - cblabel  
       xti - xtics  
     noxti: noxtics  
      x2ti - x2tics  
    nox2ti - nox2tics  
       yti - ytics  
     noyti: noytics  
      y2ti: y2tics  
    noy2ti: noy2tics  
       zti - ztics  
     nozti: noztics  
       ottico  
     norti - nortics  
      cbti - cbtics  
    nocbti: nocbtics  
      xdti: xdtics  
    noxdti: noxdtics  
     x2dti - x2dtics  
   nox2dti - nox2dtics  
      ydti: ydtics  
    noydti: noydtics  
     y2dti: y2dtics  
   noy2dti: noy2dtics  
      zdti: zdtics  
    nozdti: nozdtics  
     cbdti: cbdtics  
   nocbdti: nocbdtics  
      xmti - xmtics  
    noxmti: noxmtics  
     x2mti - x2mtics  
   nox2mti - nox2mtics  
      ymti: ymtics  
    noymti: noymtics  
     y2mti - y2mtics  
   noy2mti - noy2mtics  
      zmti - zmtics  
    nozmti: nozmtics  
     cbmti - cbmtics  
   nocbmti: nocbmtics  
        xr - xrange  
       x2r - x2range  
        anno - anno  
       y2r - y2range  
        zr - zrange  
       cbr - cbrange  
        rr - rrange  
        tr - trange  
        ur - urange  
        vr - vrange  
    xzeroa: xzeroaxis  
   x2zeroa - x2zeroaxis  
    yzeroa: yzeroaxis  
   y2zeroa: y2zeroaxis  
    zzeroa - zzeroaxis  
     zeroa - zeroaxis  
       rax - raxis  
         z - zero  
       def - default  
       off - offset  
     nooff - nooffset  
       tri - triangolo  
     undef: non definito  
     nound: noundefined  
       alt - altdiagonal  
     noalt - noaltdiagonal  
      piegato - bentover  
    nobent - nobentover  
       def - impostazione predefinita  
         t - top  
         b - fondo  
         l - sinistra  
         r - giusto  
         c - centro  
       ver - verticale  
       hor - orizzontale  
        ov - over  
        ab - sopra  
         u - sotto  
        essere - sotto  
       dentro - dentro  
         o - fuori  
        tm - tmargin  
        bm - bmargin  
        lm - lmargin  
        rm - rmargin  
         L - Sinistra  
         R - Giusto  
       rev - reverse  
     norev: noreverse  
       inversa  
     noinv: noinvert  
       enh: migliorato  
     noenh: noenhanced  
         b - box  
       nob - nobox  
        sa - samplen  
        spaziatura  
         w - larghezza  
         h - altezza  
         a - autotitoli  
       noa: noautotitles  
        ti - titolo  
      noti - notitle  
      testo - textcolor  
    maxcol - maxcols  
   maxcolu - maxcolumns  
    maxrow - maxrows  
      termine - terminale  
       pal - palette  
         v - verticale  
         h - orizzontale  
       def - impostazione predefinita  
         u - utente  
        bo - border  
        bd - bdefault  
      nobo - noborder  
         o - origine  
         taglia s  
        davanti  
        ba - back  
       pos - positivo  
       neg - negativo  
      grigio - scala di grigi  
      grigio - scala di grigi  
       col - color  
       rgb - rgbformulae  
       def. definito  
      funzioni  
        mo - modello  
      maxc - maxcolors  
       gam - gamma  
    interp - interpolate  
  scansfor - scansforward  
 scansback - scansbackward  
 scansauto - scansautomatic 
       dep - deeporder  
        fl - flush  
       ftr - ftriangles  
     noftr - noftriangles  
     clip1 - clip1in  
     clip4 - clip4in  
        bo - border  
      nobo - noborder  
        ciao - nascosto3d  
      nohi: nohidden3d  
        così - solido  
      notr: non trasparente  
      noso: nosolid  
        tr - trasparente  
         i - implicito  
       noe: non esplicito  
       noi: non implicito  
         e - esplicito  
 corners2c - corners2color 
         d - dati  
         f - funzione  
         l - linee  
        ar - freccia  
      incr - incremento  
      hist: istogramma  
      circ - circle  
       ell - ellisse  
      rettangolo - rettangolo  
  parallel - parallelaxis  
         l - linee  
         i - impulsi  
         punti p  
    linesp: punti della linea  
         d - punti  
   yerrorl: yerrorlines  
    errorl - linee di errore  
   xerrorl: xerrorlines  
  xyerrorl: xyerrorlines  
        voi - yerrorbars  
         e-errorbars  
        xe - xerrorbars  
       xye - xyerrorbars  
      hist: istogrammi  
   filledc - curve curve  
     boxer - boxerrorbars  
      boxx - boxxyerrorbars  
        st - passi  
    fillst - passi da riempire  
        fs - fsteps  
       i suoi - histeps  
       vec - vettori  
       pinna - finanze  
       can - candelieri  
        pm - pm3d  
       ima: immagine  
    rgbima: rgbimage  
      rgba: rgbalpha  
       circoli  
       ellissi  
       sur - surface  
  parallel - parallelaxes  
         c - chiuso  
         x - x1  


Ci sono duplicati nell'elenco. Un elenco in ordine alfabetico sarebbe più utile.
Joce,

@Joce Grazie per lo spot. Prenditi un momento per vedere l'altra risposta in cui puoi trovare una pagina stampabile con tutte le abbreviazioni ordinate (e un'altra non ordinata): qui le abbreviazioni non sono ordinate alfabeticamente perché provengono dal codice mentre viene analizzato, in modo che risultino raggruppate nei comandi quindi nelle opzioni relative a ciascun comando (so che manca il comando ma analizzare tutto più di un livello era sull'estensione della risposta). Ad esempio tipuò essere valido come titledopo plotun'istruzione o come ticsdopo il comando set...
Hastur,

8

gnuplot ha una serie di comandi e una serie di opzioni per ogni comando. Il nome di ciascun comando e opzione può essere abbreviato nella stringa univoca più breve che lo descrive, ad es. pPer il comando grafico, spper il splotcomando, tper l' titleopzione a plot. Nota che non puoi, ad esempio, usare sper splotperché è in conflitto con set.

Le abbreviazioni di due lettere in gnuplot che iniziano con lsono di solito per una caratteristica di linea, come ltper linetype, lwper linewidth. Queste sono le bandiere in realtà unici che possono essere utilizzati in modo intercambiabile con la forma lunga: lw, linewe linewidthspecificare la stessa opzione. Puoi vederlo nella documentazione della set style lineriga di comando per il comando:

help set style line

Questo da

 Syntax:
       set style line <index> default
       set style line <index> {{linetype  | lt} <line_type> | <colorspec>}
                              {{linecolor | lc} <colorspec>}
                              {{linewidth | lw} <line_width>}
                              {{pointtype | pt} <point_type>}
                              {{pointsize | ps} <point_size>}
                              {{pointinterval | pi} <interval>}
                              {palette}
       unset style line
       show style line

e puoi vedere che le opzioni separate da una pipe ('|') sono equivalenti.

Per sicurezza quando inizi con gnuplot, ti consiglio di digitare i comandi completi e quando diventi più esperto / pigro puoi iniziare ad abbreviare di più.

[EDIT] per terminare di rispondere alle tue domande:

1) ltsta per linetype. Puoi vedere quali sono i tipi di linea per il terminale corrente con il testcomando.

2) notista per notitle, che fa quello che pensi.

3) Le ultime due linee disegnano f (1-g (x)) senza titolo e una linea rossa larga 0,75pt; ef (12,5 * g (x)) senza titolo e una linea grigia di 0,75 pt.


6

Qui

gnuplot 5.0.3 Elenco delle abbreviazioni

Quella sopra è la lista alfabetica delle abbreviazioni per gnuplot 5.0.3.
Penso che sia una risorsa utile e ho messo lì dopo aver deciso di seguire il mio suggerimento (vedi sotto) :-).
A volte ho trovato più utile la versione non ordinata in cui le abbreviazioni sono raggruppate in comandi e quindi in opzioni relative ai comandi.

Due strade

Per quanto ne so, non esiste un elenco completo di abbreviazioni, almeno non è così semplice trovarlo. Inoltre verrà aggiornato ad ogni nuova versione.

L'asserzione che gnuplotaccetta definitivamente la stringa univoca abbreviata NON è VERA .
Devo ammettere che è una buona regola empirica da indovinare, ma su cui non puoi fare affidamento ciecamente: per esempio pè usato plotma è ambiguo print. Quindi che si fa?

  • Chiedi aiuto a gnuplot stesso
    In caso di ambiguità puoi chiedere aiuto alla CLI (interfaccia a riga di comando) di gnuplot stesso.

    gnuplot> help ti
    Ambiguous request 'ti'; possible matches:
           tics
           tikz
           time
           tips
           title
    
  • "Se vuoi fare qualcosa, fallo da solo!"
    Scarica dal sito gnuplot il codice sorgente della tua versione.
    Estrai l'archivio. Entra nellasrcdirectory e cerca iltables.cfile.
    Ora la tua fortuna dipende dagli strumenti che hai sul tuo sistema.
    È un file di testo in modo da poterlo leggere con ogni elaboratore di testi (ma anche con il blocco note).
    Leggendo all'interno troverai molte (es. 349 per la versione 5.0.3) di linee come le seguenti:

    { "e$rrorbars", YERRORBARS }
    { "errorl$ines", YERRORLINES },
    { "eval$uate", eval_command },
    

    Da quanto sopra puoi capire che quando usi ela CLI capirai errorbars, errorlinvece errorlines(ecco la prima partita non ambigua diversa dall'altra appena scelta) e così via ...

    Più in basso nel file troverai di nuovo un'abbreviazione pere

    { "e$rrorbars", YERRORBARS },
    

    ma non c'è ambiguità perché verrà analizzata non come comando ma come opzione di un comando.

  • Chiedi a bashdi lavorare per te ...

    Se sei sotto Linux o una bashshell puoi chiedere alla shell di lavorare per te:

    grep '\$' tables.c  | sed 's/{//g ; s/}//g ; s/,//g ; s/"//g'
    

    che puoi pulire ancora di più

    grep '\$' tables.c  | sed 's/{//g ; s/}//g ; s/,//g ; s/"//g' \
    | awk '{split ($1,a, "$"); printf ("%10s - %s \n", a[1],a[1]a[2] ) }'
    

    che dà quelle e altre 345 linee ...

         p - plot 
       rep - replot 
        sp - splot 
     multi - multiplot 
    

    ancora non perfetto ma, IMHO, accettabile.
    inserisci qui la descrizione dell'immagine

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.