2012-12-13 3 views
1

몇 가지 커브를 다른 색상으로 플롯하려하지만 작동하지 않습니다. 색상 섹션이 변경 되었음에도 불구하고 모든 사람들이 동일한 색상을 유지하고 있습니다. 나는 그것을 수동으로 확실히했습니다.커브의 목록을 유지하면서 플로트를 유지하지만 색상이 변경되지 않습니다.

나는 PointPairList List를 만드는 다른 클래스와 색상을 변경하는 클래스가 있습니다.

myPane = zedGraphControl1.GraphPane; 
int index = 0; 
foreach (PointPairList item in cMasterGraph) 
{ 
    myPane = zedGraphControl1.GraphPane; 
    // GraphPane object holds one or more Curve objects (or plots) 
    myPane.YAxis.Type = AxisType.Log; 
    Color color = GetNextColor(); 
    // Add cruves to myPane object 
    LineItem myCurve = myPane.AddCurve(cGraphname[index], item, color, SymbolType.None); 
    LineItem myCurve2 = myPane.AddCurve(cGraphname[index], item, Color.Yellow, SymbolType.None); 
    //myCurve.Add(tempcurve); 
    myCurve.Line.Width = 1.0F; 
    index++; 
    //myCurve.IsSelected = true; 
    // I add all three functions just to be sure it refeshes the plot. 
    zedGraphControl1.AxisChange(); 
    zedGraphControl1.Invalidate(); 
    zedGraphControl1.Refresh(); 
} 

나는 이미 너무 많은 시간 동안 문제에 봉착했습니다.

myCurve 및 myCurve2가 동일한 항목을 가지고, 그래서 당신은 myCurve을 그릴 때 당신은 myCurve2, myCurve2 (Color.Yellow)에 포함 myCurve을 그릴 :

+0

'GetNextColor()'소스 코드도 게시하십시오. –

+0

개인 색상 GetNextColor() { 색상 [] mColors = {Color.Firebrick, Color.ForestGreen, Color.Black, Color.Blue, Color.Red, Color.Purple}; if (mLastColor> = mColors.Length) mLastColor = 0; 반환 mColors [mLastColor ++]; } –

+0

색상 변경이 작동하지 않는다는 것을 확인했지만 값을 편집하여 색상을 수정하려고했지만 내가하는 일과 상관없이 동일한 결과가 나타납니다. –

답변

1
LineItem myCurve = myPane.AddCurve(cGraphname[index], item, color, SymbolType.None); 
LineItem myCurve2 = myPane.AddCurve(cGraphname[index], item, Color.Yellow, SymbolType.None); 

내가 생각합니다.

관련 문제