Hi Jason, When you use DrawGraph, a copy of the graph is created. If you do not clear the pad, this copy stays in the pad. At the first iteration, you draw a copy of the 1st graph, at the second iteration, a copy of the 1st and 2nd graph. At the last iteration, you have 32 graphs in the pad. To solve the problem, simply replace the line: gr1->DrawGraph(i, x, dy, "ALP"); by gr1->Draw("ALP"); Rene Brun On Wed, 28 May 2003, Jason -- wrote: > Dear Rooters, > > I'm trying to plot a set of data to which new points are continuously being > added. To test this out, I wrote the following macro, which calculates the > difference between two values and then plots the difference. I included a > loop that increases the number of points to graph with each iteration, and > redraw the graph with every iteration. The graph works as I had hoped, > clearing the active pad and redrawing the graph each time a new data point > is added. However, I can't seem to get the axes to redraw, and this results > in a bunch of different overlapping scales on both the x- and y-axis. Any > suggestions? > > Thanks, > > Jason > > > void Dynamic() > { > Int_t i; > const Int_t N = 32; > > Double_t x[N+1] = > { 293., 291., 288., 286., 280., 270., 260., 250., > 240., 230., 220., 210., 200., 190., 180., 170., > 160., 150., 140., 130., 120., 110., 100., 90., > 80., 70., 60., 50., 40., 30., 20., 10., 0. > }; > > Double_t y[N+1] = > { > 52.1705, 81.5672, 0.0, 37.2873, 118.617, 203.3, 270.579, 349.675, 430.074, > 511.98, 593.394, 667.308, 753.741, 828.314, 906.517, 984.533, 1065.13, > 1144.57, 1221.71, 1300.72, 1385.65, 1467.83, 1552.11, 1633.02, 1711.6, > 1796.59, 1881.22, 1967.85, 2051.02, 2135.62, 2221.47, 2311.31, 2400.0 > }; > > Double_t dy[N] = {0.}; > for (i=N-1; i>0; i--) dy[i] = y[i+1] - y[i]; > > TCanvas *c1 = new TCanvas("c1","Voltage Differences",1); > > for (i = 1; (i < N); i++) > { > TGraph *gr1 = new TGraph(i); > > gr1->SetMarkerStyle(7); > gr1->SetMarkerColor(4); > gr1->SetMarkerSize(2); > gr1->SetLineColor(4); > > gr1->DrawGraph(i, x, dy, "ALP"); > gPad->Update(); > delete gr1; > } > } > > p.s, I'm using version 3.05/05. > > _________________________________________________________________ > MSN 8 helps eliminate e-mail viruses. Get 2 months FREE*. > http://join.msn.com/?page=features/virus >
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:12 MET