Archive

Archive for August, 2009

Colocando Data e hora em um grafico. (ZedGraph)

August 27th, 2009 Guilherme Morais No comments
Bom dia Pessoal,
Tinha algum tempo que não postava, pois tenho trabalhado com bancos e o tempo está bastante corrido, mas vou me dedicar novamente ao blog. Tenho varias coisas interessantes sobre assuntos bem diferentes para colocar aqui.
Vamos primeiro atender um pedido. Como colocar DATA e HORA em um Eixo no graficos da Zedgraph.
Fiz um pequeno site de arbitragem para um amigo, que estamos finalizando ainda, mas lá temos o exemplo perfeito do objetivo do post:

Grafico de Arbitragem, na escala do tempo.

Para colocarmos as datas no eixo, fiz o seguinte:
 C# |  copy code |? 
01
  foreach (Acao acao in lista)
02
          {
03
              StockPointList stock = new StockPointList();
04
              PointPairList stockLinha = new PointPairList();
05
              double prevClose = 0;
06
              foreach (Cotacao cotacao in acao.Cotacoes)
07
              {
08
                  stockLinha.Add(new XDate(cotacao.date), cotacao.close);
09
                  StockPt pt = new StockPt(new XDate(cotacao.date),
10
                                                      cotacao.high, cotacao.low,
11
                                   cotacao.open, cotacao.close, cotacao.vol);
12
                  pt.ColorValue = cotacao.close > prevClose ? 2 : 1;
13
                  stock.Add(pt);
14
                  prevClose = cotacao.close;
15
              }
16
              ...
17
          }
18
 
19
        
Reparem na linha 08, Estou criando um objeto XDate que contem um datatime e quando for adicionar um novo ponto, eu
coloco o mesmo sobre um eixo de XDate. (linha 09)