2012-10-12 73 views
3

我正在使用TreeChart製作如圖所示的指標。 但我有一個問題,我不能使三色漸變到那個衡量標準。這是我的代碼圓形漸變 - TeeChart - MonoAndroid

 Steema.TeeChart.TChart tChart = new Steema.TeeChart.TChart(this); 
     tChart.Panel.Transparent = false; 
     Steema.TeeChart.Styles.Gauges gauges = new Steema.TeeChart.Styles.Gauges(tChart.Chart); 
     Steema.TeeChart.Drawing.Gradient g = new Steema.TeeChart.Drawing.Gradient(gauges.Chart); 


     gauges.bBrush.Gradient.Direction = Steema.TeeChart.Drawing.GradientDirection.DiagonalUp; 
     gauges.bBrush.Gradient.StartColor = System.Drawing.Color.Red; 
     gauges.bBrush.Gradient.MiddleColor = System.Drawing.Color.Black; 
     gauges.bBrush.Gradient.EndColor = System.Drawing.Color.Blue; 
     gauges.bBrush.Gradient.Visible = true; 
     gauges.Pen.Color = System.Drawing.Color.FromArgb(5,56,73); 

     gauges.TotalAngle = 180; // circular arc 
     gauges.RotationAngle = 180; // arc rotation angle 
     gauges.HandStyle = Steema.TeeChart.Styles.HandStyle.Triangle; // pointer style 
     gauges.Center.Style = Steema.TeeChart.Styles.PointerStyles.Circle; // SPHERE center circle style 
     gauges.Center.HorizSize = 5; // center circle level size 
     gauges.Center.VertSize = 5; // center circle vertical size 

     gauges.ShowInLegend = false; // display the legend 
     gauges.HandDistance = 23; // pointer length 

     //--------------------------------------------------- 
     gauges.Value = 80; 
     gauges.Minimum = 0; // minimum; 
     gauges.Maximum = 100; // maximum value 
     //---------------------------------------------------- 

     gauges.MinorTickDistance = 0; 

     gauges.Pen.DashWidth = 23; 
     gauges.Chart.Axes.Left.AxisPen.Width = 65; // brush width; 
     gauges.Chart.Axes.Left.AxisPen.Color = System.Drawing.Color.Red; 
     gauges.Chart.Axes.Left.MinorTickCount = 5; // the scale value scale line number 
     gauges.Chart.Axes.Left.MinorTicks.Length = 10; // the scale value scale line length of 
     gauges.Chart.Axes.Left.Ticks.Length = 20; // display the value scale line length of 
     gauges.Chart.Axes.Left.Increment = 3000; // the scale value of interval size 

     SetContentView(tChart) ; 

我也試過下面的代碼行

 gauges.CircleGradient.Direction = Steema.TeeChart.Drawing.GradientDirection.DiagonalUp; 
     gauges.CircleGradient.Visible = true; 
     gauges.CircleGradient.StartColor = System.Drawing.Color.Green; 
     gauges.CircleGradient.EndColor = System.Drawing.Color.Red; 
     gauges.CircleGradient.UseStandardGradient = true; 

我希望我幫助

問候

回答

2

您應該使用Steema.TeeChart.Styles.CircularGauge而不是Steema.TeeChart.Styles.Gauges這是一個更簡單的規格版本。例如,使用下面的代碼片段,您在您的鏈接得到類似規的圖像:

Circular gauge with TeeChart

這是類似於你在找什麼?

tChart1.Header.Visible = false; 

    Steema.TeeChart.Styles.CircularGauge circularGauge1 = new Steema.TeeChart.Styles.CircularGauge(tChart1.Chart); 

    circularGauge1.Frame.Visible = false; 
    circularGauge1.FaceBrush.Visible = false; 
    circularGauge1.DisplayTotalAngle = 180; 
    circularGauge1.TotalAngle = 180; 
    circularGauge1.Value = 200; 
    circularGauge1.Ticks.Visible = false; 
    circularGauge1.Minimum = 0; 
    circularGauge1.Maximum = 1000; 
    circularGauge1.Axis.AxisPen.Visible = false; 
    circularGauge1.Axis.Increment = 500; 
    circularGauge1.RedLine.Visible = false; 
    circularGauge1.GreenLineStartValue = 0; 
    circularGauge1.GreenLineEndValue = 1000; 
    circularGauge1.GreenLine.Gradient.Direction = Steema.TeeChart.Drawing.GradientDirection.LeftRight; 
    circularGauge1.GreenLine.Gradient.UseMiddle = true; 
    circularGauge1.GreenLine.Gradient.StartColor = Color.Orange; 
    circularGauge1.GreenLine.Gradient.MiddleColor = Color.Yellow; 
    circularGauge1.GreenLine.Gradient.EndColor = Color.Green; 
    circularGauge1.GreenLine.Pen.Visible = false; 
+0

,我認爲報價不適合你的意思是gauge.The客戶端的方式替代希望這樣的事情http://greatofficetips.files.wordpress.com/2012/09/screenshot-9_21_2012-11_48_57- pm.jpg 我希望你能幫助我。 謝謝 –

+0

@dev_xinito好的,我已經更新了我的答案並回復了這個。 –

+0

感謝Narcia,正是我想要的。如果你可以改變指標的類型,你能幫助我嗎?在我的例子中,我把這些代碼行gauges.HandStyle = Steema.TeeChart.Styles.HandStyle.Triangle; //指針樣式 gauges.Center.Style = Steema.TeeChart.Styles.PointerStyles.Circle; //球體中心圈風格 –