Você pode usar os seguintes métodos:
- var D = Diagram() novo //Constructor
- D.SetFrame(theLeft, theTop, theRight, theBottom) //Tela
- D.SetBorder(theLeftX, thetheRightX, theBottomY, theTopY) //Mundo
- D.SetText(theScaleX, theScaleY, theTitle) //Rótulos (opcional)
- D.ScreenX(theRealX) //Transformação de coordinates mundo->tela
- D.ScreenY(theRealY) //Transformação de coordinates mundo->tela
- D.RealX(theScreenX) //Transformação de coordinates tela->mundo
- D.RealY(theScreenY) //Transformação de coordinates tela->mundo
- D.GetXGrid() //Devolva array, que contem min, delta e max da grade de X
- D.GetYGrid() //Devolva array, que contem min, delta e max da grade de Y
- D.SetGridColor(theGridColor[, theSubGridColor]) //Cor de linhas de grade de X e de Y
- D.SetXGridColor(theGridColor[, theSubGridColor]) //Cor de linhas de grade de X
- D.SetYGridColor(theGridColor[, theSubGridColor]) //Cor de linhas de grade de Y
- D.Draw(theDrawColor, theTextColor, isScaleText[, theTooltipText[, theOnClickAction
[, theOnMouseoverAction[, theOnMouseoutAction]]]]) //Desenhar,
theDrawColor pode ser uma imagem
- D.SetVisibility(isVisible) //Mostrar ou esconder
- D.SetTitle(theTitle) //TooltipText
- D.Delete() //Apagar o objeto DIV do D do documento
- delete D //Destructor
Antes de desenhar, você pode ajustar as seguintes charaterísticas:
- D.XScale // 0 = nenhuma escala; 1 = numérico (default); 2, 3, ... = data/hora; string = numérico+unit
"function FunctionName" = FunctionName(valor_da_escala)
- D.YScale // 0 = nenhuma escala; 1 = numérico (default); 2, 3, ... = data/hora; string = numérico+unit
"function FunctionName" = FunctionName(valor_da_escala)
- D.XScalePosition // "bottom" (default), "botom-left", "bottom-right", "top", "top-left", "top-right"
- D.YScalePosition // "left" (default), "left-top", "left-bottom", "right", "right-top", "right-bottom"
- D.XGridDelta //Intervalo do grade no X-direção, se for 0 (defeito) ele será detectado automaticamente
- D.YGridDelta //Intervalo do grade no Y-direção, se for 0 (defeito) ele será detectado automaticamente
- D.XSubGrids //Numero de intervalos da sub-grade dentro de um intervalo da grade no X-direção, se for 0 (default) ele será detectado automaticamente, se for -1 então uma sub-grade logarítmica será desenhado
- D.YSubGrids //Numero de intervalos da sub-grade dentro de um intervalo da grade no Y-direção, se for 0 (default) ele será detectado automaticamente, se for -1 então uma sub-grade logarítmica será desenhado
- D.Font //Estilo de texto, default = "font-family:Verdana;font-weight:normal;font-size:10pt;line-height:13pt;"
Depois ter chamado D.GetXGrid() / D.GetYGrid() você pode obter:
- D.XGrid[0], D.XGrid[1] and D.XGrid[2] // min, delta e max da grade de X
- D.YGrid[0], D.YGrid[1] and D.YGrid[2] // min, delta e max da grade de Y
Por causa de um erro em Netscape 4.x você deve adicionar o seguinte código no página web
antes de usar os objetos do diagrama:
<DIV STYLE="position:absolute; top:0px"></DIV>
Também para Netscape 4.x o arquivo
transparent.gif deve estar no mesmo diretório.
Se você quiser desenhar o diagrama em uma outra janela, você pode especificar a janela do alvo:
_DiagramTarget=theTargetWindow;
_ DiagramTarget é uma variável global, que seja válida dentro do documento inteiro.
O default _DiagramTarget é o objeto da janela do documento atual.
O diagrama na janela nova foi gerado pelo
<SCRIPT Language="JavaScript">
function MyXScale(nn)
{ var tt=new Array("esquerda", "centro", "direita");
return("<b>"+tt[nn]+"</b>");
}
function NewWindow()
{ _DiagramTarget=window.open("","",
"width=460,height=300,menubar=no,locationbar=no,resizable=yes,status=no,scrollbars=no");
with (_DiagramTarget.document)
{ open();
writeln("<HTML><HEAD><TITLE>Diagrama numa janela nova</TITLE></HEAD><BODY>");
var D2=new Diagram();
D2.SetFrame(60, 40, 400, 240);
D2.SetBorder(0, 3, 0, 4);
D2.XGridDelta=1;
D2.XScale="function MyXScale";
D2.XScalePosition="top-right";
D2.YSubGrids=1;
D2.Font="font-family:Verdana;font-weight:normal;font-size:8pt;line-height:13pt;";
D2.SetText("","", "Diagrama com estilo de texto pequeno e função-escala");
D2.SetGridColor("#cccccc", "#eeddcc");
D2.Draw("#FFEECC", "#336699", false, "Estale aqui !", "opener.DiagramClick()");
writeln("</BODY></HTML>");
close();
}
}
</SCRIPT>