Stacked Bar Chart, X-Axis as Date

7 posts, 1 answers
  1. Richard
    Richard avatar
    72 posts
    Member since:
    Feb 2009

    Posted 01 Feb 2011 Link to this post

    Hi,

    I have a Stacked Bar Chart, that is working perfectly. I have the data points and the legend correct; however the X-Axis is number and I need it to be a date.

    My source object has  a

    List<List<int>> ProcessTotals  for the data
    List<string> Process that I used for the legend
    List<date> MonthYear for the X-Axis

    How would I do this , also how would I format the date to be Jan 10,  Feb 10 etc… ?

    Thanks,
    Richard

  2. Richard
    Richard avatar
    72 posts
    Member since:
    Feb 2009

    Posted 02 Feb 2011 Link to this post

    I apologise for the bump but this issue has stopped me in my tracks and I suspect it’s simple fix. Each x-axis point maps directly to my list of dates. As in  Xval0 = MonthYear[0], Xval1 = MonthYear[1], Xval2 = MonthYear[2]  but what would the binding code look like ?


    Richard
  3. DevCraft banner
  4. Missing user
    Missing user avatar

    Posted 04 Feb 2011 Link to this post

    Hello Richard,

    You can populate your chart with DateTime values by using SeriesMapping or DataPoints. Here you can find a helpful article about populating DateTime values:
    http://www.telerik.com/help/silverlight/radchart-features-datetime-support.html

    Another thing that needs to be done is to set the IsDateTime to True. This property indicates that the values for the X-axis are considered as dates. Here are described the X-Axis properties:
    http://www.telerik.com/help/silverlight/radchart-features-axes-x-axis.html

    My suggestion about formatting the date time values is using DefaultLabelFormat and Format Expression. You can try with DefaultLabelFormat="MMM dd". More about Format Expressions can be found here:
    http://www.telerik.com/help/silverlight/radchart-features-format-expressions.html

    Let me know if you need additional assistance.

    Regards,
    Polina
    the Telerik team
    Let us know about your Windows Phone 7 application built with RadControls and we will help you promote it. Learn more>>
  5. Richard
    Richard avatar
    72 posts
    Member since:
    Feb 2009

    Posted 04 Feb 2011 Link to this post


    public class ProcessMonthMileStone
    {
     public List<string> ProcessNames = new List<string>();
     public List<DateTime> Months = new List<DateTime>();
     public List<List<int>> ProcessMileStones = new List<List<int>>();
    }
      
      
    int colIndex = 0; 
    foreach (string processName in milestone.ProcessNames) 
        SeriesMapping sm = new SeriesMapping() { LegendLabel = processName, CollectionIndex = colIndex }; 
        sm.SeriesDefinition = new StackedBarSeriesDefinition("Stack1"); 
        sm.ItemMappings.Add(new ItemMapping() { DataPointMember = DataPointMember.YValue }); 
        //sm.ItemMappings.Add(new ItemMapping("Months", DataPointMember.XValue)); 
        
        radChartMileStones.SeriesMappings.Add(sm); 
        colIndex++; 
    //radChartMileStones.DefaultView.ChartArea.AxisX.DefaultLabelFormat = "dd-MMM"; 
    radChartMileStones.DefaultView.ChartArea.AxisX.IsDateTime = true
    radChartMileStones.DefaultView.ChartArea.AxisX.LabelRotationAngle = -45;


    Hi

    I’m afraid that didn’t really work for me. It looks like the Stacked Bar chart might behave differently ?

    In the code snippet you can see the object that is used as the itemsource for the chart.

    Without the DataPointMember.XValue, the chart displays correctly in 6 stacks of 12 items.
    However when I add in the DataPointMember.XValue, the stacks break and 12 items are displayed on the x-axis and it does not display the correct date.

    I have attached 2 pictures to demonstrate this.

    Would it be possible for you to do a small sample project that uses a stacked bar chart with dates on the x-axis, I can’t find any in your online samples.

    Thanks,
    Richard

  6. Richard
    Richard avatar
    72 posts
    Member since:
    Feb 2009

    Posted 08 Feb 2011 Link to this post

    I am still struggling with this , if anyone can help it would be really really appreciated.
  7. Answer
    Missing user
    Missing user avatar

    Posted 10 Feb 2011 Link to this post

    Hello Richard,

    My suggestion is to use a Categorical Chart. By using this kind of chart, the enabled X axis can be used to plot not only values (e.g. number of sales, etc.), but also categories (e.g. months of the year, units, people, etc.). With Category axis the chart treats the data as a sequence of non-numerical text labels. The marker is placed according to the position of the category in the sequence and data is provided per category.

    So you can try with : DataPointMember.XCategory instead of DataPointMember.XValue

    I have attached a sample project with dates on the x-axis.

    Hope this will help.

    Best wishes,
    Polina
    the Telerik team
    Let us know about your Windows Phone 7 application built with RadControls and we will help you promote it. Learn more>>
  8. Richard
    Richard avatar
    72 posts
    Member since:
    Feb 2009

    Posted 10 Feb 2011 Link to this post

    Thank you Polina

    That has worked perfectly. I really appreciate it.

    Richard

Back to Top
DevCraft banner