Procurando por abreviaturas do gnuplot

9

Eu sou novo no gnuplot. Estou lendo o manual, mas estou tendo dificuldades em encontrar explicações para algumas das abreviações que as pessoas usam em seus scripts. Por exemplo, estou trabalhando com um script que diz:

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

Acho que entendo que ti significa title , ls para line style e lw para line width , mas e quanto a lt e noti ? (onde posso procurar isso)?

Com isso, o que essas duas últimas linhas fazem?

    
por Amelio Vazquez-Reina 20.11.2012 / 21:02

3 respostas

8

Gnuplot 5.0.3

Lista automática das abreviações com uma variante do código publicado na outra resposta .

        ra - raise  
       low - lower  
        bi - bind  
        ca - call  
        cl - clear  
      eval - evaluate  
        ex - exit  
         f - fit  
         h - help  
        hi - history  
         l - load  
        pa - pause  
         p - plot  
        pr - print  
  printerr - printerror  
         q - quit  
       ref - refresh  
       rep - replot  
        re - reread  
       res - reset  
        sa - save  
       scr - screendump  
        se - set  
       she - shell  
        sh - show  
        sp - splot  
        st - stats  
        sy - system  
       und - undefine  
       uns - unset  
        up - update  

         a - acsplines  
         b - bezier  
         c - csplines  
         s - sbezier  
         u - unique  
         f - frequency  
       cum - cumulative  
         k - kdensity  
        cn - cnormal  
       mcs - mcsplines  
    spline - splines  
         f - functions  
         s - set  
         t - terminal  
         v - variables  
         a - all  
        ac - action_table  
        an - angles  
        ar - arrow  
        au - autoscale  
         b - bars  
       bor - border  
       box - boxwidth  
        cl - clabel  
         c - clip  
     cntrp - cntrparam  
     cntrl - cntrlabel  
      cont - contours  
     dasht - dashtype  
        da - data  
      data - datafile  
        dg - dgrid3d  
        du - dummy  
       enc - encoding  
       dec - decimalsign  
      font - fontpath  
        fo - format  
        fu - function  
        fu - functions  
         g - grid  
       hid - hidden3d  
       his - history  
        is - isosamples  
         k - key  
      keyt - keytitle  
        la - label  
     lines - linestyle  
  linetype - linetypes  
       loa - loadpath  
       loc - locale  
       log - logscale  
       mac - macros  
       map - mapping  
       map - mapping3d  
       mar - margins  
      lmar - lmargin  
      rmar - rmargin  
      tmar - tmargin  
      bmar - bmargin  
        mo - mouse  
      mono - monochrome  
     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  
        of - offsets  
        or - origin  
         o - output  
        pa - parametric  
        pm - pm3d  
       pal - palette  
    colorb - colorbox  
    colorn - colornames  
    colors - colorsequence  
         p - plot  
  pointint - pointintervalbox  
       poi - pointsize  
       pol - polar  
        pr - print  
       obj - object  
        sa - samples  
        si - size  
        st - style  
        su - surface  
         t - terminal  
   termopt - termoptions  
        ti - tics  
     ticsc - ticscale  
     ticsl - ticslevel  
     timef - timefmt  
       tim - timestamp  
       tit - title  
         v - variables  
        ve - version  
        vi - view  
       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  
     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  
        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 - defaults  
       off - offset  
     nooff - nooffset  
       tri - trianglepattern  
     undef - undefined  
     nound - noundefined  
       alt - altdiagonal  
     noalt - noaltdiagonal  
      bent - bentover  
    nobent - nobentover  
       def - default  
         t - top  
         b - bottom  
         l - left  
         r - right  
         c - center  
       ver - vertical  
       hor - horizontal  
        ov - over  
        ab - above  
         u - under  
        be - below  
       ins - inside  
         o - outside  
        tm - tmargin  
        bm - bmargin  
        lm - lmargin  
        rm - rmargin  
         L - Left  
         R - Right  
       rev - reverse  
     norev - noreverse  
       inv - invert  
     noinv - noinvert  
       enh - enhanced  
     noenh - noenhanced  
         b - box  
       nob - nobox  
        sa - samplen  
        sp - spacing  
         w - width  
         h - height  
         a - autotitles  
       noa - noautotitles  
        ti - title  
      noti - notitle  
      text - textcolor  
    maxcol - maxcols  
   maxcolu - maxcolumns  
    maxrow - maxrows  
      term - terminal  
       pal - palette  
         v - vertical  
         h - horizontal  
       def - default  
         u - user  
        bo - border  
        bd - bdefault  
      nobo - noborder  
         o - origin  
         s - size  
        fr - front  
        ba - back  
       pos - positive  
       neg - negative  
      gray - grayscale  
      grey - greyscale  
       col - color  
       rgb - rgbformulae  
       def - defined  
      func - functions  
        mo - model  
      maxc - maxcolors  
       gam - gamma  
    interp - interpolate  
  scansfor - scansforward  
 scansback - scansbackward  
 scansauto - scansautomatic 
       dep - depthorder  
        fl - flush  
       ftr - ftriangles  
     noftr - noftriangles  
     clip1 - clip1in  
     clip4 - clip4in  
        bo - border  
      nobo - noborder  
        hi - hidden3d  
      nohi - nohidden3d  
        so - solid  
      notr - notransparent  
      noso - nosolid  
        tr - transparent  
         i - implicit  
       noe - noexplicit  
       noi - noimplicit  
         e - explicit  
 corners2c - corners2color 
         d - data  
         f - function  
         l - lines  
        ar - arrow  
      incr - increment  
      hist - histogram  
      circ - circle  
       ell - ellipse  
      rect - rectangle  
  parallel - parallelaxis  
         l - lines  
         i - impulses  
         p - points  
    linesp - linespoints  
         d - dots  
   yerrorl - yerrorlines  
    errorl - errorlines  
   xerrorl - xerrorlines  
  xyerrorl - xyerrorlines  
        ye - yerrorbars  
         e - errorbars  
        xe - xerrorbars  
       xye - xyerrorbars  
      hist - histograms  
   filledc - filledcurves  
     boxer - boxerrorbars  
      boxx - boxxyerrorbars  
        st - steps  
    fillst - fillsteps  
        fs - fsteps  
       his - histeps  
       vec - vectors  
       fin - financebars  
       can - candlesticks  
        pm - pm3d  
       ima - image  
    rgbima - rgbimage  
      rgba - rgbalpha  
       cir - circles  
       ell - ellipses  
       sur - surface  
  parallel - parallelaxes  
         c - closed  
         x - x1  

    
por 11.07.2016 / 13:03
8

O gnuplot tem um conjunto de comandos e um conjunto de opções para cada comando. O nome de cada comando e opção pode ser abreviado para a string única mais curta que o descreve, por ex. p para o comando de plotagem, sp para o comando splot , t para a opção title para plot . Observe que você não pode, por exemplo, usar s para splot porque está em conflito com set .

As abreviações de duas letras no gnuplot que começam com l são geralmente para uma característica de linha, como lt para linetype , lw para linewidth . Esses são, na verdade, sinalizadores exclusivos que podem ser usados de forma intercambiável com o formato longo: lw , linew e linewidth especificam a mesma opção. Você pode ver isso na documentação da linha de comando para o comando set style line :

help set style line

Isso dá

 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 você pode ver que as opções separadas por um pipe ('|') são equivalentes.

Para estar seguro ao iniciar com o gnuplot, eu recomendo digitar os comandos completos, e quando você for mais experiente / preguiçoso você pode começar a abreviar mais.

[EDITAR] para terminar de responder às suas perguntas:

1) lt significa linetype . Você pode ver quais são os tipos de linha para o terminal atual com o comando test .

2) noti significa notitle , que faz o que você pensa.

3) As duas últimas linhas desenham f (1-g (x)) sem título e uma linha vermelha de 0,75pt de largura; e f (12,5 * g (x)) sem título e com uma linha cinza de 0,75 pontos.

    
por 20.11.2012 / 22:22
6

aqui

Alistaacimaéa lista de abreviaturas alfabeticamente ordenada do gnuplot 5.0.3.
Eu acho que é um recurso útil e eu coloquei lá depois que eu decidi seguir minha própria sugestão (veja abaixo) :-) .
Às vezes achei mais útil a versão não ordenada onde a abreviação é agrupada em comandos, e depois nas opções relativas aos comandos.

Duas maneiras

Tanto quanto sei, não há uma lista completa de abreviaturas, pelo menos não é tão simples de encontrá-lo. Além disso, será atualizado a cada nova versão.

A afirmação de que gnuplot aceita encurtar a sequência de caracteres não ambígua é NOT TRUE .
Eu tenho que admitir que é uma boa regra para adivinhar, mas na qual você não pode confiar cegamente: por exemplo, p é usado para plot , mas é ambíguo com print . Então o que fazer?

  • Peça ajuda para o gnuplot
    Em caso de ambigüidade, você pode pedir ajuda à CLI (interface de linha de comando) do próprio gnuplot.

    gnuplot> help ti
    Ambiguous request 'ti'; possible matches:
           tics
           tikz
           time
           tips
           title
    
  • "Se você quer algo, faça você mesmo!"
    Faça o download do site do gnuplot para o código fonte da sua versão.
    Extraia o arquivo. Digite o diretório src e procure o arquivo tables.c .
    Agora sua sorte depende das ferramentas que você tem em seu sistema.
    É um arquivo de texto para que você possa lê-lo com cada processador de texto (mas até com o bloco de notas). Lendo dentro você vai encontrar muito (por exemplo, 349 para a versão 5.0.3) de linhas como o seguinte:

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

    Do acima, você pode entender que quando você usa e , a CLI entenderá errorbars , com errorl em vez errorlines (aqui é a primeira correspondência não ambígua diferente da outra escolhida) e assim por diante. ..

    Mais abaixo no arquivo, você encontrará novamente uma abreviação de e

    { "e$rrorbars", YERRORBARS },
    

    mas não há ambigüidade porque será analisado não como comando, mas como opção de comando.

  • Peça a um bash para trabalhar para você ...

    Se você está no Linux ou em um bash shell, você pode pedir ao seu shell para trabalhar para você:

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

    que você pode limpar ainda mais

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

    que dá essas e outras 345 linhas ...

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

    ainda não é perfeito mas, IMHO, aceitável.

por 08.07.2016 / 20:44

Tags