2012-10-04 6 views
0

시간 t에서 그래프의 PointPairList를 반환하는 메서드가 있지만 "이동"그래프를 사용하여 그래프를 시간에 따라 전개해야한다는 것을 의미합니다. 누구든지 내가 어떻게 할 수 있는지에 대한 단서가 있습니다. RollingPointPairList를 사용하여 시도했지만 작동하지 않습니다.그래프 진화 그래프 ZedGraph

답변

1

진화 란 무엇입니까? 시간 경과에 따라 곡선에 점을 추가하거나 곡선에 이미있는 점의 위치를 ​​변경 하시겠습니까? 첫 번째 옵션은 입니다. 커브에 점을 추가하는 핸들러로 타이머와 DrawPoint 메서드를 사용했습니다. 두 번째 옵션은 좀 더 복잡 할 수 있습니다. 저는 한 포인트의 좌표를 변경하려했지만 그 가능성은 ... 최악의 경우 이전 포인트를 지우고 새 포인트를 가져와야합니다 ... 어쨌든 여기는 부분입니다. 한 지점을 추가하려면 코드의 내가 두 번째 옵션을 의미

tmr.Interval = 6; 
tmr.Tick += new EventHandler(tmr_Tick); 
tmrActive = true; 
tmr.Start(); 
void tmr_Tick(object sender, EventArgs e) 
{ 
    DrawPoint(zedGraphControl1, points, num); //points is an PointPair array of length num with the new points that i want to add to my Curves(1 point for each Curve)  
    zedGraphControl1.AxisChange(); 
    zedGraphControl1.Refresh(); 
    if (Start.Enabled == false) Freeze.Enabled = true; 
} 
private void DrawPoint(ZedGraphControl zgc, PointPair[] p, int num) 
    { 
     GraphPane myPane = zgc.GraphPane; 

     if (myPane.CurveList.Count < num) 
     { 
      DrawCurves(zgc, num); 
     } 
     for (int i = 0; i < num; i++) 
     { 
      myPane.CurveList[i].AddPoint(p[i]); 
     } 
     actPos = p[0].X; 
     mResize(zgc, actPos); 
    } 
+0

(사실은 내가 1 개 이상의 곡선 함께 일하고 있기 때문에 많은 점수가), 나 타이밍 이벤트를 사용하고 graphpane 매번 선택을 취소하여 그것을 관리 나는 새로운 음모를 꾸미야 해. 고마워. – KillaKem

관련 문제