Wyszukiwanie skrótów gnuplot

11

Jestem nowy w gnuplot. Czytam instrukcję, ale trudno mi znaleźć wyjaśnienie niektórych skrótów używanych w skryptach. Na przykład pracuję ze skryptem, który mówi:

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

Myślę, że rozumiem, co tioznacza title, lsza line stylei lwza line width, ale co z lti noti? (gdzie mogę to sprawdzić)?

Z tym, co robią te dwie ostatnie linie?

Amelio Vazquez-Reina
źródło
Dodałem posortowaną wersję, być może bardziej wygodną w użyciu.
Hastur

Odpowiedzi:

9

Gnuplot 5.0.3

Automatycznie wyodrębniono listę skrótów z wariantem kodu zamieszczonym w drugiej odpowiedzi .

        ra - podnieść  
       niski - niższy  
        bi - bind  
        ca - zadzwoń  
        cl - wyczyść  
      eval - oceń  
        ex - wyjście  
         f - dopasowanie  
         h - pomoc  
        cześć - historia  
         l - obciążenie  
        pauza  
         p - fabuła  
        pr - wydrukuj  
  printerr - błąd drukarki  
         q - wyjdź  
       ref - odśwież  
       rep - replot  
        ponownie przeczytaj  
       res - reset  
        sa - zapisz  
       scr - screendump  
        se - set  
       ona - muszla  
        sh - pokaż  
        sp - plama  
        st - statystyki  
        sy - system  
       und - undefine  
       uns - rozbrojony  
        w górę - aktualizacja  

         a - acspline  
         b - bezier  
         c - cspline  
         s - sbezier  
         u - wyjątkowy  
         f - częstotliwość  
       cum - kumulatywny  
         k - gęstość  
        cn - nienormalny  
       mcs - mcsplines  
    splajn - splajny  
         f - funkcje  
         s - zestaw  
         t - terminal  
         v - zmienne  
         a - wszystko  
        ac - tabela_działań  
        an - kąty  
        ar - strzałka  
        au - automatyczne skalowanie  
         b - słupki  
       bor - granica  
       box - szerokość pudełka  
        cl - klosz  
         c - klip  
     cntrp - cntrparam  
     cntrl - cntrlabel  
      kontury - kontury  
     dasht - dashtype  
        da - data  
      data - plik danych  
        dg - dgrid3d  
        du - manekin  
       enc - kodowanie  
       dec - decimalsign  
      font - ścieżka do czcionki  
        fo - format  
        fu - funkcja  
        fu - funkcje  
         g - siatka  
       hid - hidden3d  
       jego - historia  
        jest - izopróbki  
         k - klucz  
      keyt - keytitle  
        la - etykieta  
     linie - linestyle  
  rodzaj linii - rodzaje linii  
       loa - ścieżka ładowania  
       loc - locale  
       log - skala logu  
       mac - makra  
       mapa - mapowanie  
       map - mapping3d  
       marże  
      lmar - lmargin  
      rmar - rmargin  
      tmar - tmargin  
      bmar - bmargin  
        mo - mysz  
      mono - monochromatyczny  
     wielopunktowy  
       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  
        of - offsetów  
        lub - pochodzenie  
         o - wyjście  
        pa - parametryczny  
        pm - pm3d  
       pal - paleta  
    colorb - colorbox  
    colorn - nazwy kolorów  
    kolory - sekwencja kolorów  
         p - fabuła  
  pointint - pointintervalbox  
       poi - pointize  
       pol - polarny  
        pr - wydrukuj  
       obj - obiekt  
        sa - próbki  
        si - rozmiar  
        st - styl  
        su - powierzchnia  
         t - terminal  
   termopt - opcje opcji  
        tiki - tiki  
     ticsc - ticscale  
     ticsl - poziom tics  
     timef - timefmt  
       tim - znacznik czasu  
       tit - tytuł  
         v - zmienne  
        ve - wersja  
        vi - widok  
       xyp - xyplane  
       xda - xdata  
      x2da - x2data  
       yda - ydata  
      y2da - y2data  
       zda - zdata  
      cbda - cbdata  
        xl - xlabel  
       x2l - x2label  
        yl - ylabel  
       y2l - y2label  
        zl - zlabel  
       cbl - cblabel  
       xti - xtics  
     noxti - noxtics  
      x2ti - x2tics  
    nox2ti - nox2tics  
       yti - ytics  
     noyti - noytics  
      y2ti - y2tics  
    noy2ti - noy2tics  
       zti - ztics  
     nozti - noztics  
       rti - rtics  
     północno - północne  
      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  
        yr - yrange  
       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 - domyślne  
       przesunięty  
     nooff - nooffset  
       tri - trianglepattern  
     undef - niezdefiniowany  
     nound - nieokreślony  
       alt - przekątna  
     noalt - noaltdiagonal  
      gięte - gięte  
    nobent - nobentover  
       def - domyślnie  
         t - góra  
         b - dno  
         l - lewo  
         r - racja  
         c - środek  
       ver - vertical  
       hor - poziomy  
        ov - over  
        ab - powyżej  
         u - under  
        być - poniżej  
       ins - wewnątrz  
         o - na zewnątrz  
        tm - tmargin  
        bm - bmargin  
        lm - lmargin  
        rm - rmargin  
         L - Lewo  
         R - Racja  
       rev - wstecz  
     norev - noreverse  
       inv - invert  
     noinv - noinvert  
       enh - ulepszone  
     noenh - noenhanced  
         b - pudełko  
       nob - nobox  
        sa - samplen  
        sp - odstępy  
         w - szerokość  
         h - wysokość  
         a - autotytuły  
       noa - noautotitles  
        ti - tytuł  
      noti - notitle  
      tekst - kolor tekstu  
    maxcol - maxcols  
   maxcolu - maxcolumns  
    maxrow - maxows  
      termin - terminal  
       pal - paleta  
         v - pionowa  
         h - poziomy  
       def - domyślnie  
         u - użytkownik  
        bo - granica  
        bd - bdefault  
      nobo - noborder  
         o - pochodzenie  
         s - rozmiar  
        fr - przód  
        ba - powrót  
       pos - pozytywne  
       neg - negatywne  
      szary - skala szarości  
      szary - skala szarości  
       col - kolor  
       rgb - rgbformulae  
       def - zdefiniowane  
      func - funkcje  
        mo - model  
      maxc - maksymalne kolory  
       gam - gamma  
    interp - interpoluj  
  scansfor - scansforward  
 scansback - scansbackward  
 scansauto - scansautomatic 
       dep - depthorder  
        fl - kolor  
       ftr - ftriangles  
     noftr - noftriangles  
     clip1 - clip1in  
     clip4 - clip4in  
        bo - granica  
      nobo - noborder  
        cześć - ukryty3d  
      nohi - nohidden3d  
        więc - solidny  
      notr - nieprzejrzysty  
      noso - nosolid  
        tr - przezroczysty  
         i - niejawne  
       noe - nieoczywisty  
       noi - nie wprost  
         e - wyraźne  
 corners2c - corners2color 
         d - dane  
         f - funkcja  
         l - linie  
        ar - strzałka  
      przyrost - przyrost  
      hist - histogram  
      kółko  
       ell - elipsa  
      prostokąt - prostokąt  
  równoległa - równoległa oś  
         l - linie  
         i - impulsy  
         p - punkty  
    linesp - punkty linii  
         d - kropki  
   yerrorl - yerrorlines  
    errorl - linie błędów  
   xerrorl - xerrorlines  
  xyerrorl - xyerrorlines  
        ye - yerrorbars  
         e - paski błędów  
        xe - xerrorbars  
       xye - xyerrorbars  
      hist - histogramy  
   wypełnione - wypełnione krzywe  
     bokser - boxerrorbars  
      boxx - boxxyerrorbars  
        st - kroki  
    fillst - fillsteps  
        fs - fsteps  
       jego - histeps  
       vec - wektory  
       płetwa - paski finansowe  
       puszka - świeczniki  
        pm - pm3d  
       ima - obraz  
    rgbima - rgbimage  
      rgba - rgbalpha  
       cir - kółka  
       ell - elipsy  
       na powierzchni  
  Równoległe - Równoległe  
         c - zamknięte  
         x - x1  

Hastur
źródło
Na liście znajdują się duplikaty. Bardziej pomocna byłaby lista posortowana alfabetycznie.
Joce,
@Joce Dzięki za miejsce. Poświęć chwilę, aby zobaczyć drugą odpowiedź, w której można znaleźć stronę do wydrukowania z posortowanymi wszystkimi skrótami (i inną nieposortowaną): tutaj skróty nie są sortowane alfabetycznie, ponieważ pochodzą z parsowanego kodu, dzięki czemu wynik są pogrupowane w poleceniach, a następnie w opcjach odnoszących się do każdego polecenia (wiem, że pomija polecenie, ale parsowanie wszystkich więcej niż jednego poziomu przekraczało zakres odpowiedzi). Na przykład timoże być ważny jak titlepo plotoświadczeniu lub ticspo poleceniu set...
Hastur
8

gnuplot ma zestaw poleceń i zestaw opcji dla każdego polecenia. Nazwa każdego polecenia i opcji może być skrócona do najkrótszego unikatowego ciągu, który ją opisuje, np. pDla polecenia wydruku, spdla splotpolecenia, tdla titleopcji plot. Pamiętaj, że nie możesz na przykład używać sdo, splotponieważ powoduje konflikt set.

Dwuliterowe skróty w gnuplot zaczynające się od lsą zwykle dla charakterystyki linii, jak ltdla linetype, lwdla linewidth. Są to rzeczywiście unikalne flagi, które mogą być stosowane zamiennie z długiej postaci: lw, linewi linewidthokreślić tę samą opcję. Możesz to zobaczyć w dokumentacji set style linewiersza polecenia:

help set style line

To daje

 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

i widać, że opcje oddzielone potokiem („|”) są równoważne.

Aby być bezpiecznym, zaczynając od gnuplot, polecam wpisywanie pełnych poleceń, a kiedy będziesz bardziej doświadczony / leniwy, możesz zacząć skracać więcej.

[EDYCJA], aby zakończyć odpowiadanie na pytania:

1) ltoznacza linetype. Za pomocą polecenia możesz zobaczyć, jakie są typy linii dla bieżącego terminala test.

2) notioznacza notitle, co robi, co myślisz.

3) Dwie ostatnie linie rysują f (1-g (x)) bez tytułu i szeroką czerwoną linią o szerokości 0,75 punktu; i f (12,5 * g (x)) bez tytułu i szara linia o grubości 0,75 punktu.

Andyras
źródło
6

Tutaj

gnuplot 5.0.3 Lista skrótów

Powyższy jest posortowaną alfabetycznie listą skrótów dla gnuplot 5.0.3.
Myślę, że jest to użyteczne źródło i umieściłem je po tym, jak postanowiłem zastosować się do mojej sugestii (patrz poniżej) :-).
Czasami bardziej przydatne okazała się nie posortowana wersja, w której skrót jest pogrupowany w polecenia, a następnie w opcje względem poleceń.

Dwie drogi

O ile mi wiadomo, nie ma pełnej listy skrótów, przynajmniej nie jest tak łatwo ją znaleźć. Ponadto będzie aktualizowany przy każdej nowej wersji.

Twierdzenie, które na dobre gnuplotakceptuje skrócenie jednoznacznego ciągu, NIE jest PRAWDĄ .
Muszę przyznać, że zgadywanie jest dobrą zasadą , ale na której nie można ślepo polegać: na przykład pużywa się plotjej, ale jest niejasna print. Co więc zrobić?

  • Poproś o pomoc dla samego gnuplot
    W przypadku niejasności możesz poprosić o pomoc do CLI (interfejs wiersza poleceń) samego gnuplot.

    gnuplot> help ti
    Ambiguous request 'ti'; possible matches:
           tics
           tikz
           time
           tips
           title
    
  • „Jeśli chcesz coś zrobić, zrób to sam!”
    Pobierz ze strony gnuplot kod źródłowy swojej wersji.
    Wypakuj archiwum. Wejdź dosrckatalogu i wyszukajtables.cplik.
    Teraz twoja fortuna zależy od narzędzi, które masz w systemie.
    Jest to plik tekstowy, dzięki czemu można go czytać za pomocą każdego edytora tekstu (ale nawet notatnika).
    W środku znajdziesz dużo (np. 349 dla wersji 5.0.3) następujących wierszy:

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

    Z powyższego możesz zrozumieć, że podczas korzystania ez CLI zrozumiesz errorbars, errorlzamiast tego errorlines(tutaj jest pierwsze jednoznaczne dopasowanie różni się od innego właśnie wybranego) i tak dalej ...

    W dalszej części pliku znajdziesz ponownie skróte

    { "e$rrorbars", YERRORBARS },
    

    ale nie ma dwuznaczności, ponieważ zostanie on przeanalizowany nie jako polecenie, ale jako opcja polecenia.

  • Poproś o bashpracę dla Ciebie ...

    Jeśli korzystasz z Linuksa lub bashpowłoki, możesz poprosić powłokę o pracę dla ciebie:

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

    że możesz wyczyścić jeszcze więcej

    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] ) }'
    

    co daje te i inne 345 linii ...

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

    wciąż nie jest idealny, ale IMHO jest do przyjęcia.
    wprowadź opis zdjęcia tutaj

Hastur
źródło