2013-08-02 115 views
1

雖然devexpress winforms控件我畫了一個圖表。日期時間位於X軸,Y軸的值很少。我提供的數據不包含定期的軸數據。例如,它將有今天的數據,今天后的3天,今天后的1年等等 - 它們的位置不同。我想突出顯示已提供數據的數據點。我已經使網格線可見使用:我可以在devexpress圖表中顯示選擇性網格線嗎?

((XYDiagram)chartControl1.Diagram).AxisX.GridLines.MinorVisible = true; 
((XYDiagramchartControl1.Diagram).AxisY.GridLines.Visible = true; 
((XYDiagram)chartControl1.Diagram).AxisY.GridLines.MinorVisible = true; 

但是,這會以等間隔和間距繪製網格線。我如何,我特別強調我所提供的數據點...

+0

請說明一下,您是否試圖突出顯示網格線或數據點? –

+0

我給出的數據點的網格線。例如,如果我提供的數據的當前值爲50,則應該有從該點到兩個軸的網格線。兩條網格線符合X軸和Y軸的點應在軸上標記(就像其他網格線一樣)。 – user2645830

回答

3

希望正確理解你:)

可以使用Constant Lines

private void Form1_Load(object sender, EventArgs e) 
    { 
     Series series1 = new Series("Series 1", ViewType.Point); 
     series1.Points.Add(new SeriesPoint(1, 50)); 
     series1.Points.Add(new SeriesPoint(2, 150)); 
     series1.Points.Add(new SeriesPoint(4, 20)); 
     series1.Points.Add(new SeriesPoint(7, 210)); 
     series1.Points.Add(new SeriesPoint(12, 70)); 
     chartControl1.Series.Add(series1); 

     XYDiagram diagram = chartControl1.Diagram as XYDiagram; 
     foreach (SeriesPoint item in series1.Points) 
     { 
      DrawConstantLines(diagram, int.Parse(item.Argument), diagram.AxisX); 
      DrawConstantLines(diagram, (int)item.Values[0], diagram.AxisY); 
     } 
    } 

    private void DrawConstantLines(XYDiagram diagram, int value, Axis axis) 
    { 
     ConstantLine constantLine1 = new ConstantLine(); 
     axis.ConstantLines.Add(constantLine1); 
     constantLine1.AxisValue = value; 
    } 
+0

這不會像網格線顯示。常量線與X軸和Y軸相交的點不像網格線那樣顯示。有沒有辦法添加它們呢? – user2645830

+0

這些點不顯示每個網格線。如何使用標籤來代替? –

+0

series1.LabelsVisibility = DevExpress.Utils.DefaultBoolean.True; series1.Label.PointOptions.PointView = PointView.ArgumentAndValues; –

相關問題