# plot2d

esboço 2d

## Seqüência de Chamamento

    plot2d([x],y)
                plot2d([x],y,<opt_args>)

## Parâmetros

x

  uma matriz ou vetor de reais. Se omitido, é assumido como sendo o vetor `1:n` onde `n` é o número de pontos da curva dados pelo parâmetro `y`.

y

  uma matriz ou vetor de reais

<opt_args>

  representa uma seqüência de sentenças `key1=value1,key2=value2`,... onde `key1`, `key2,...` podem ser um dos seguintes:

  style

    ajusta o estilo da curva. O valor associado deve ser um vetor de reais com valores inteiros (positivos ou negativos)

  rect

    as fronteiras mínimas requeridas para o esboço. O valor associado deve ser um vetor de reais com quatro entradas: `[xmin,ymin,xmax,ymax]`.

  logflag

    ajusta a escala (linear ou logaritmica) ao longo dos eixos. O valor associado deve ser um string com um dos possíveis valores: `"nn"`, `"nl"` , `"ln"` e `"ll"` .

  frameflag

    controla a computação dos intervalos de coordenadas reais a partir dos valores mínimos requeridos. O valor associado deve ser um inteiro entre 0 e 8

  axesflag

    especifica como os eixos são desenhados. O valor associado deve ser um inteiro entre 0 e 5

  nax

    ajusta os rótulos dos eixos e a definição de tiques. O valor associado deve ser um vetor de quatro entradas inteiras `[nx,Nx,ny,Ny]`

  leg

    ajusta a legenda das curvas. O valor associado deve ser um string

## Descrição

`plot2d` esboça um conjunto de curvas 2d. Se você está familiarizado com a sintaxe do Matlab da função `plot` , você deve usar plot.

Se `x` e `y` são vetores, plot2d(x,y,<opt_args>) esboça o vetor `y` versus o vetor `x`. Os vetores `x` e `y` vectors devem ter o mesmo número de entradas.

Se `x` é um vetor e `y` uma matriz plot2d(x,y,<opt_args>) esboça cada coluna de `y` versus o vetor `x`. Neste caso, o número de colunas de `y` deve ser igual ao número de entradas de `x`.

Se `x` e `y` são matrizes, plot2d(x,y,<opt_args>) esboça cada coluna de `y` versus a coluna correspondente de `x`. Neste caso, `x` e `y` devem ter o mesmo tamanho.

Se `y` é um vetor, plot2d(y,<opt_args>) esboça o vetor `y` versus o vetor `1:size(y,'*')`.

Se `y` é uma matriz, plot2d(y,<opt_args>) esboça cada coluna de `y` versus o vetor `1:size(y,1)`.

Os argumentos `<opt_args>` devem ser usados para customizar o esboço.

style

  esta opção deve ser usada para especificar como as curvas são desenhadas. Se esta opção for especificada, o valor associado deve ser um vetor com tantas entradas quanto as curvas.

  - Se `style(i)` é estritamente crescente, a curva é desenhada como uma linha simples e `style(i)` define o índice da cor para utilizada para desenhar a curva (ver getcolor). Note que o estilo de linha e a espessura podem ser ajustados através das propriedades da entidade poligonal (ver polyline_properties).

    Interpolação linear é feita entre os dados pontos da curva.

  - Se `style(i)` é negativo ou zero, os pontos dados são desenhados utilizando-se marcas, `abs(style(i))` define a marca com identificador utilizada. Note que as cores das marcas e seus tamanhos podem ser ajustados através das propriedades da entidade poligonal (ver polyline_properties).

logflag

  esta opção é usada para ajustar a escala (linear ou logarítmica) ao longo dos eixos O valor associado é um string com um dos seguintes valores: `"nn"`, `"nl"` , `"ln"` e `"ll"`. `"l"` significa escala e graduação logarítimica e `"n"` escala normal.

rect

  esta opção pode ser usada para ajustar as fronteiras mínimas requeridas para o esboço. Se esta opção for especificada, o valor associado deve ser um vetor real de quatro entradas:

  `[xmin,ymin,xmax,ymax]`. `xmin` e `xmax` definem os limites para as abscissas, enquanto `ymin` e `ymax` definem os limites para as ordenadas.

  Este argumento pode ser utilizado junto com a opção `frameflag` para especificar como os limites dos eixos derivam do argumento dado `rect`. Se a opção `frameflag` não for fornecida, é suposta como sendo `frameflag=7`.

  As fronteiras dos eixos também podem ser customizadas através das propriedades da entidade de eixos (Axes) (ver axes_properties).

frameflag

  esta opção pode ser usada para controlar a computação dos intervalos de coordenadas reais a partir de valores mínimos requeridos. Mudanças reais podem ser maiores que os requerimentos mínimos.

  frameflag=0

    não há computação, o esboço usa a escala anterior (ou padrão).

  frameflag=1

    os intervalos reais são dados pela opção `rect`.

  frameflag=2

    os intervalos reais são computados a partir dos valores máximos e mínimos dos dados `x` e `y`.

  frameflag=3

    os intevalo reais são os intervalos fornecidos pela opção `rect` e aumentados para se obter uma escala isométrica.

  frameflag=4

    os intervalos reais são computados a partir dos valores máximos e mínimos de `x` e `y` e aumentados para se obter uma escala isométrica.

  frameflag=5

    os intervalos reais são os intervalos fornecidos pela opção `rect` e aumentados para se obter rótulos de eixos embelezados.

  frameflag=6

    os intervalos reais são computados a partir dos valores mínimos dos dados `x` e `y` e então aumentados para se obter rótulos de eixos embelezados.

  frameflag=7

    é como `frameflag=1` , mas os esboços anteriores são redesenhados em uma nova escala. É utilizado para adicionar o gráfico corrente a um anterior.

  frameflag=8

    é como `frameflag=2` , mas os esboços anteriores são redesenhados em uma nova escala. É utilizado para adicionar o gráfico corrente a um anterior.

  frameflag=9

    é como `frameflag=8` mas a imagem é aumentada enlarged to para se obter rótulos de eixos embelezados. Este é o alor padrão

  Os limites dos eixos também podem ser customizados através das propriedades da entidade de eixos (ver axes_properties)

axesflag

  esta opção pode ser utilizada para especificar como os eixos são desenhados. O valor associado deve ser um inteiro entre 0 e 5 :

  axesflag=0

    nada é desenhado ao redor do esboço (axes_visible=["off" "off"];box="off").

  axesflag=1

    os eixos são desenhados, o eixo y é exibido à esquerda (axes_visible=["on" "on"];box="on",y_location="left").

  axesflag=2

    o esboço é cercado por uma caixa sem tiques. (axes_visible=["off" "off"];box="on").

  axesflag=3

    os eixos são desenhados, o eixo y é exibido à direita (axes_visible=["on" "on"];box="off",y_location="right").

  axesflag=4

    os eixos são desenhados centrados no meio da caixa de moldura

  axesflag=5

    os eixos são desenhados para se cruzarem no ponto (0,0) . Se o ponto (0,0) não estiver dentro da moldura, os eixos não aparecerão no gráfico (axes_visible=["on" "on"];box="on",y_location="middle").

  axesflag=9

    os eixos são desenhados, o eixo y é exibido à esquerda (axes_visible=["on" "on"];box="off",y_location="left"). Este é o valor padrão

  O aspecto dos eixos também pode ser customizado através das propriedades da entidade de eixos (ver axes_properties).

nax

  esta opção pode ser utilizada para se especificar os rótulos dos eixos e a definição de tiques quando a opção `axesflag=1` é utilizada. O valor associado deve ser um vetor de inteiros com quatro entradas `[nx,Nx,ny,Ny]`.

  `Nx` fornece o número de tiques principais utilizados no eixo x (não mais levado em conta ), `nx` fornece o número de subtiques entre dois tiques principais no eixo x.

  `Ny` e `ny` fornecem as informações similares para o eixo y.

  Se a opção `axesflag` não for ajustada, a opção `nax` supõe que a opção `axesflag` foi ajustada para 1.

leg

  esta opção pode ser usada para se ajustar as legendas das curvas. deve ser um string com a forma `"leg1@leg2@...."` onde `leg1` , `leg2` , etc. São respectivamente as legendas para a primeira curva, segunda curva etc. o padrão é `" "` .

  As legendas de curvas são desenhadas abaixo do eixo x. Esta opção não é tão flexível, use as funções captions ou legend preferivelmente.

## Mais Informações

Por padrão, esboços sucessivos são superpostos. para limpar o esboço anterior use `clf()` .

Entre com o comando `plot2d()` para uma demonstração.

Outras funções plot2d de alto nível existem:

- plot2d2 é o mesmo que `plot2d` mas as curvas são supostas seccionalmente constantes.

- plot2d3 é o mesmo que `plot2d` mas a curva é esboçada com barras verticais.

- plot2d4 é o mesmo que `plot2d` mas a curva é esboçada com flechas.

## Exemplos

    // inicialização de x
    x=[0:0.1:2*%pi]';
    //esboço simples
    plot2d(sin(x));
    clf();
    plot2d(x,sin(x));
    //múltiplos esboços
    clf();
    plot2d(x,[sin(x) sin(2*x) sin(3*x)])
    // múltiplos esboços sem fornecer as dimensões da moldura
    clf();
    plot2d(x,[sin(x) sin(2*x) sin(3*x)],rect=[0,0,6,0.5]);
    //múltiplos esboços com legendas dados tiques + estilo
    clf();
    plot2d(x,[sin(x) sin(2*x) sin(3*x)],..
           [1,2,3],leg="L1@L2@L3",nax=[2,10,2,10],rect=[0,-2,2*%pi,2]);
    // isovisualização
    clf();
    plot2d(x,sin(x),1,frameflag= 4);
    // escala
    clf();
    plot2d(x,sin(x),1,frameflag= 6);
    // auto-escala com esboços anteriores + estilo
    clf();
    plot2d(x,sin(x),-1);
    plot2d(x,2*sin(x),12);
    plot2d(2*x,cos(x),3);
    // eixo à direita
    clf();
    plot2d(x,sin(x),leg="sin(x)");
    a=gca(); // manipulador da entidade Axes
    a.y_location ="right";
    // eixo centrado em (0,0)
    clf();
    plot2d(x-4,sin(x),1,leg="sin(x)");
    a=gca(); // manipulador da entidade Axes
    a.x_location = "middle";
    a.y_location = "middle";
    // algumas operações sobre entidades criadas por plot2d ...
    a=gca();
    a.isoview='on';
    a.children // lista dos galhos dos eixos
    // há um Compound formado por duas poligonais e uma legenda
    poly1= a.children(1).children(1); //armazena um manipulador de poligonal em poly1
    poly1.foreground = 4; // outra maneira de se mudar o estilo...
    poly1.thickness = 3;  // ...e a espessura de uma curva.
    poly1.clip_state='off'; // controle de recorte
    leg = a.children(2); // armazena manipulador de legenda em leg
    leg.font_style = 9;
    leg.line_mode = "on";
    a.isoview='off';

## Ver Também

- plot
- plot2d1
- plot2d2
- plot2d3
- plot2d4
- clf
- xdel
- delete

##