LianZA Posted February 13, 2008 Report Posted February 13, 2008 I'm trying to draw a column chart with all bars starting at y=0 and moving to the y value, ie negative values will have their bars below the y=0 line, while positive values will have their bars above the y=0 line. What I'm getting is all bars starting at the minimum y value (example -0.2) and moving up to the y value, like an area chart. What property changes this behavior?
BMWSauberF1 Posted February 13, 2008 Report Posted February 13, 2008 Hi, I have just tried to reproduce your issue in my test app and failed. Whatever I try the columns behave as you wanted (ie start at 0 and go +ve or -ve). Code used was: <cfx:Chart> <cfx:Chart.PlotArea> <cfx:PlotAreaAttributes ClipToBounds="true"/> </cfx:Chart.PlotArea> </cfx:Chart> and code behind was ctlChart1.Gallery = Gallery.Bar; ctlChart1.Series.Clear(); SeriesAttributes dataSeries0 = CreateNewDataSeries(false, 10, 7.5, 30.0, -5.0, 0); ctlChart1.Series.Add(dataSeries0); ctlChart1.AxisY.AutoScale = true; ctlChart1.AxisX.AutoScale = true; My DataSeries just exposes an X and Y property for each point. If you can post your sample code it might be easier to trace the issue.
LianZA Posted February 14, 2008 Author Report Posted February 14, 2008 Heres my code: Dim sTable1 As System.Data.DataTable = GetSeries(.... Dim series1 As New SeriesAttributes series1.ItemsSource = sTable1.Rows series1.BindingPath = "SERIES1" series1.Gallery = Gallery.Bar fxChart.Series.Clear() fxChart.Series.Add(series1) I'm binding to a datatable that looks like this: DATE SERIES1 SERIES2 SERIES3 2007/04/30 12:00:00 AM 0.0374 0.0381994776 2007/05/31 12:00:00 AM 0.012625258 0.0106750797 2007/06/30 12:00:00 AM -0.0088050042 -0.008834297 2007/07/31 12:00:00 AM 0.009730482 0.0095879535 .. Also I've noticed fxChart.pointcount = 5,and fxChart.points.count = 0
BMWSauberF1 Posted February 14, 2008 Report Posted February 14, 2008 I have taken your code and data and created a simple table in a DB where the fields are Date, Series1, Series2 etc. Date is the date/Time info, Series1 is the first double list etc. Using my previous xaml, I have used this code behind and it still works. Can you confirm that you are using the latest beta (v0.8.2957.30556 - dated 12th Feb) as that might be the only difference. string ConnectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0}", @"c:\Db1.mdb"); OleDbConnection Connection = new OleDbConnection(ConnectionString); OleDbCommand Command = new OleDbCommand("Select * from [ForumTable1]", Connection); OleDbDataAdapter DataAdapter = new OleDbDataAdapter(Command); DataSet dataset = new DataSet(); DataAdapter.Fill(dataset, "ForumTable1"); SeriesAttributes dataSeries0 = new SeriesAttributes(); dataSeries0.ItemsSource = dataset.Tables["ForumTable1"].Rows; dataSeries0.BindingPath = "Series1"; dataSeries0.Gallery = Gallery.Bar; ctlChart1.Series.Clear(); ctlChart1.Series.Add(dataSeries0);
LianZA Posted February 14, 2008 Author Report Posted February 14, 2008 Can you confirm that you are using the latest beta (v0.8.2957.30556 - dated 12th Feb) as that might be the only difference. No I was not using your 12 Feb build, this fixed the problem! Thanks for your time.
Recommended Posts
Archived
This topic is now archived and is closed to further replies.