2013-09-25 49 views
0

我在VS 3.5框架中的圖表控件出現問題。我試圖用x軸0和y軸1繪製一個圖形。但它以圖形繪製的結果(1,1)c#圖表控件中帶單條帶數據點(0,1)的條形圖

我有一種情況,我需要一個單獨的條(0, 1)。

Chart1.Series[0].Points.Add(new DataPoint(0,1)); 

Chart1.Series[0].Points.AddXY(0,1); 

結果:

條形圖(1,1),而不是示出(0,1)指向

我已經加入

Chart1.ChartAreas[""].AxisX.Minimum = 0; 

仍表現出同樣的結果...

這是如此令人沮喪:我補充一點,(1,1)

如:

Chart1.Series[0].Points.AddXY(0,1); 
Chart1.Series[0].Points.AddXY(1,1); 

那麼它的結果:

帶點(0,1)和(1,1)的條形圖正確

回答

1

您遇到此問題是因爲添加到圖表的默認系列是條形圖。您將不得不刪除條形圖系列,並將其替換爲Point系列以顯示您的數據。請參閱以下示例代碼。

// clear data from the chart 
chart.Series.Clear(); 

// add an x-y series to the chart 
var xySeries = new Charting.Series() { 
    LegendText = "XY Plot", 
    ChartType = Charting.SeriesChartType.Point, 
    Color = Color.Brown, 
    MarkerStyle = Charting.MarkerStyle.Circle, 
    MarkerSize = 10 
}; 
chart.Series.Add(xySeries); 

// put your point on the series 
xySeries.Points.AddXY(1, 1); 

// set the axis 
chart.ChartAreas[0].AxisX.MajorGrid.LineDashStyle = Charting.ChartDashStyle.Dot; 
chart.ChartAreas[0].AxisY.MajorGrid.LineDashStyle = Charting.ChartDashStyle.Dot; 

這將產生以下圖表

Chart Sample

您必須添加此using語句包括在可用的名字空間Charting

using Charting = System.Windows.Forms.DataVisualization.Charting; 

要更改X軸的標籤,你將不得不使用數據點的AxisLabel財產。請參閱下面的示例:

// put your point on the series 
xySeries.Points.AddXY(0, 1); 
xySeries.Points[0].AxisLabel = "0"; // <--- SET AXIS LABEL HERE 

此操作將'強制'Chart控件顯示您選擇的軸標籤。

+0

非常感謝你的回覆。但我想用Bar Graph去。條形圖是我的要求。有什麼辦法,我們可以在條形圖中繪製Point(0,1)? – Kushal

+0

@Kushal:檢查更新。 –

+0

再次感謝,是的..我做了同樣的事情並向前邁進......但它對Visual Studio中的條形圖很奇怪......爲什麼XY座標值沒有給出正確的結果...... – Kushal