Completed
Last Updated: 02 Feb 2015 13:54 by ADMIN
To reproduce:
- Start the Q3 2014 SP1 demo application.
- Open the Bar example.
- Set the orientation to horizontal.

In addition please note that the first and the last labels of the horizontal axis are missing as well.

Workaround:

CategoricalAxis vertiacalAxis = radChartView1.Axes[1] as CategoricalAxis;

if (vertiacalAxis != null)
{
    vertiacalAxis.LabelFitMode = AxisLabelFitMode.Rotate;
    vertiacalAxis.LabelRotationAngle = .1;
}
Completed
Last Updated: 30 Jan 2015 13:48 by ADMIN
FIX. RadChartView - Vertical Stripes go out of the chart area when PanZoom is using.
Completed
Last Updated: 30 Jan 2015 13:18 by ADMIN
To reproduce:

Add a RadChartView to a Form. Use the following code:

this.Chart.AreaType = ChartAreaType.Pie;
this.Chart.ShowLegend = true;
PieSeries series = new PieSeries();
series.DataPoints.Add(new PieDataPoint(50, "Germany"));
series.DataPoints.Add(new PieDataPoint(70, "United States"));
series.DataPoints.Add(new PieDataPoint(40, "France"));
series.DataPoints.Add(new PieDataPoint(25, "United Kingdom"));
series.ShowLabels = true;
this.Chart.Series.Add(series);

Workaround:

Private Sub LegendElement_VisualItemCreating(sender As Object, e As LegendItemElementCreatingEventArgs)
    Dim pieElement As PiePointElement = DirectCast(e.LegendItem.Element, PiePointElement)
    Dim dataPoint As PieDataPoint = DirectCast(pieElement.DataPoint, PieDataPoint)
    e.LegendItem.Title = dataPoint.Name
End Sub
Completed
Last Updated: 30 Jan 2015 13:03 by ADMIN
Add BarSeries with several CategoricalDataPoint with some long category text. 
Change the chart's area orientation, then you will notice that the AxisLabelElements overlaps the axis
Completed
Last Updated: 28 Jan 2015 16:21 by ADMIN
To reproduce:


You need a RadChartView with some series. You need to add a new View - 


radChartView1.Views.AddNew("Bigger");


You also need to add a DrillDownController:


DrillDownController drillcontrol = new DrillDownController();
radChartView1.Controllers.Add(drillcontrol);
radChartView1.ShowDrillNavigation = true;


On the Drill event of RadChartView you need to reload the chart. This must clear the axes on the current view (determined by the drill level) and add new ones. You will see that the legend will not update. 


Additional details can be found in the attached project.


Workaround:


Re-add the legend items manually:


private void radChartView1_Drill(object sender, DrillEventArgs e)
{
    if (e.Level == 0)
        BiggerView = false;
    else
        BiggerView = true;


    ReloadChart();

    this.radChartView1.ChartElement.LegendElement.StackElement.Children.Clear();
    ChartView currentView = this.radChartView1.Views[BiggerView ? 1 : 0];
    foreach (ChartSeries series in currentView.Series)
    {
        LegendItem item = new LegendItem(series)
        {
            Title = series.Name
        };


        LegendItemElement element = new LegendItemElement(item);
        this.radChartView1.ChartElement.LegendElement.StackElement.Children.Add(element);
    }
}


Completed
Last Updated: 28 Jan 2015 13:49 by ADMIN
Completed
Last Updated: 28 Jan 2015 13:33 by ADMIN
Create a chart with a LinesSeries with a DateTimeContinuousAxis axis and set the following properties:
DateTimeContinuousAxis horizontalAxis = new DateTimeContinuousAxis();
horizontalAxis.Title = tupleItem.HorizontalAxis;
horizontalAxis.AxisType = AxisType.First;
horizontalAxis.VerticalLocation = AxisVerticalLocation.Bottom;
horizontalAxis.AutomaticBorderColor = false;
horizontalAxis.MaximumTicks = 10;
horizontalAxis.LabelFormat = "{0:HH:mm:ss.fff}";

You will see that there are less labels than ticks.

When the chart is zoomed the labels also disappear from the ticks.
Completed
Last Updated: 24 Jan 2015 16:03 by ADMIN
To reproduce use the following code:
public Form1()
{
    InitializeComponent();
   
    radChartView1.AreaType = Telerik.WinControls.UI.ChartAreaType.Pie;

    radChartView1.ShowLegend = true;
    series.ValueMember = "CategoryID";
    series.DisplayMember = "CategoryName";
    series.DataSource = this.nwindDataSet1.Categories;
    radChartView1.Series.Add(series);
}

private void radButton1_Click(object sender, EventArgs e)
{
    this.categoriesTableAdapter.Fill(this.nwindDataSet1.Categories);
}

private void Form1_Load(object sender, EventArgs e)
{
    // TODO: This line of code loads data into the 'nwindDataSet1.Categories' table. You can move, or remove it, as needed.
    this.categoriesTableAdapter.Fill(this.nwindDataSet1.Categories);
}

Workaround: 
- Clear the items manually:
    this.radChartView1.ChartElement.LegendElement.StackElement.Children.Clear();
Completed
Last Updated: 24 Jan 2015 14:35 by ADMIN
To reproduce:

SteplineSeries stepLineSeries = new SteplineSeries();
stepLineSeries.DataPoints.Add(new CategoricalDataPoint(12, "Jan"));
stepLineSeries.DataPoints.Add(new CategoricalDataPoint(42, "Apr"));
stepLineSeries.DataPoints.Add(new CategoricalDataPoint(28, "Jul"));
stepLineSeries.DataPoints.Add(new CategoricalDataPoint(12, "Oct"));
this.radChartView1.Series.Add(stepLineSeries);  

CartesianArea area = this.radChartView1.Area as CartesianArea ;
area.Orientation = Orientation.Horizontal;

Please refer to the attached screenshots.

Workaround: use LineSeries with custom CartesianRenderer:

public Form1()
{
    InitializeComponent();

    this.radChartView1.CreateRenderer += radChartView1_CreateRenderer;

    LineSeries lineSeries = new LineSeries();
    lineSeries.DataPoints.Add(new CategoricalDataPoint(12, "Jan"));
    lineSeries.DataPoints.Add(new CategoricalDataPoint(42, "Apr"));
    lineSeries.DataPoints.Add(new CategoricalDataPoint(28, "Jul"));
    lineSeries.DataPoints.Add(new CategoricalDataPoint(12, "Oct"));
    this.radChartView1.Series.Add(lineSeries);
    
    CartesianArea area = this.radChartView1.Area as CartesianArea ;
    area.Orientation = Orientation.Horizontal;
}

private void radChartView1_CreateRenderer(object sender, ChartViewCreateRendererEventArgs e)
{
    e.Renderer = new CustomCartesianRenderer((CartesianArea)e.Area);
}

public class CustomCartesianRenderer : CartesianRenderer
{
    public CustomCartesianRenderer(CartesianArea area) : base(area)
    {
    }

    protected override void Initialize()
    {
        base.Initialize();

        for (int i = 0; i < this.DrawParts.Count; i++)
        {
            LineSeriesDrawPart drawPart = this.DrawParts[i] as LineSeriesDrawPart;
            if (drawPart != null)
            {
                this.DrawParts[i] = new CustomLineDrawPart((LineSeries)drawPart.Element, this);
            }
        }
    }
}

public class CustomLineDrawPart : LineSeriesDrawPart
{
    public CustomLineDrawPart(LineSeriesBase series, IChartRenderer renderer) : base(series, renderer)
    {
    }

    protected override GraphicsPath GetLinePaths(PointF[] points)
    {
        GraphicsPath path = new GraphicsPath();
        PointF x;
        PointF y;
        List<PointF> pointsList = points.ToList();

        CartesianArea area = this.Element.Parent as CartesianArea;
        if (area != null && area.Orientation == Orientation.Horizontal)
        {
            pointsList = pointsList.OrderBy(p => p.Y).ThenBy(p => p.X).ToList();
        }
        
        if (pointsList.Count > 1)
        {
            for (int i = 1; i < pointsList.Count; i++)
            {
                x = pointsList[i - 1];
                y = pointsList[i];
                path.AddLine(x.X, x.Y, y.X, x.Y);
                path.AddLine(y.X, x.Y, y.X, y.Y);
            }
        }
        else
        {
            return null;
        }

        return path;
    }
}

Completed
Last Updated: 24 Jan 2015 12:04 by ADMIN
To reproduce:
Add a RadChartView and use the following code:

public Form1()
{
    InitializeComponent();

    this.radChartView1.ShowTrackBall = true;
    this.radChartView1.ShowLegend = true;
    Random rand = new Random();
    var lineSeries = new LineSeries();
    for (int i = 0; i < 1000; i++)
    {
        lineSeries.DataPoints.Add(new CategoricalDataPoint(i, rand.Next(0, rand.Next(5, 20))));
    }
    radChartView1.Series.Add(lineSeries);
}

Workaround: change the LegendPosition:
this.radChartView1.ChartElement.LegendPosition = LegendPosition.Bottom;


Completed
Last Updated: 24 Jan 2015 07:13 by ADMIN
To reproduce use the following code to initialize the chart:

DataTable dt = new DataTable();
dt.Columns.Add("Category", typeof(string));
dt.Columns.Add("Value", typeof(int));
dt.Rows.Add("010010", 5);
dt.Rows.Add("000020", 6);
dt.Rows.Add("000030", 2);
dt.Rows.Add("000040", 11);
return dt;

BarSeries bs = new BarSeries("Value", "Category");
bs.Palette = new PaletteEntry(Color.BlanchedAlmond);
radChartView1.DataSource = dt;
radChartView1.Series.Clear();
radChartView1.Series.Add(bs);
radChartView1.GetArea<CartesianArea>().Orientation = Orientation.Horizontal;

Workaround:
CategoricalAxis Axis = radChartView1.Axes.Get<CategoricalAxis>(1);
Axis.LabelFormat = "{0:000000}";

Completed
Last Updated: 23 Jan 2015 17:19 by ADMIN
To reproduce:
public Form1()
{
    InitializeComponent();

    ScatterSeries series = new ScatterSeries();
    series.DataPoints.Add(new ScatterDataPoint(5, 5));
    series.DataPoints.Add(new ScatterDataPoint(4, 2));
    series.DataPoints.Add(new ScatterDataPoint(-1, 3));
    series.DataPoints.Add(new ScatterDataPoint(8, 4));

    radChartView1.Series.Add(series);

    LinearAxis horizontalAxis = radChartView1.Axes.Get<LinearAxis>(0);
    horizontalAxis.Minimum = -10;
    horizontalAxis.Maximum = 10;
}
private void radButton1_Click(object sender, EventArgs e)
{
    LinearAxis horizontalAxis = radChartView1.Axes.Get<LinearAxis>(0);
    horizontalAxis.DesiredTickCount = 20;
}

Completed
Last Updated: 23 Jan 2015 16:56 by ADMIN
To reproduce:
  protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            InitializeComponent();

            radChartView1 = new RadChartView();
            this.Controls.Add(radChartView1);

            DateTimeContinuousAxis asseX = new DateTimeContinuousAxis();
            LinearAxis asseY = new LinearAxis();

            asseY.AxisType = AxisType.Second;
            asseY.Minimum = 0;
            asseY.Maximum = 200;
            asseY.HorizontalLocation = Telerik.Charting.AxisHorizontalLocation.Right;
            asseY.LabelFormat = "{0} °C";

            LineSeries serie = new LineSeries();

            serie.DataPoints.Add(new CategoricalDataPoint(150, DateTime.Now));
            serie.VerticalAxis = asseY;
            serie.HorizontalAxis = asseX;

            radChartView1.Series.Add(serie);
        }

Workaround is available in the attached project.
Completed
Last Updated: 23 Jan 2015 15:49 by ADMIN
Add several data points with date time objects as their categories. Make sure the time span these date time objects is within a few seconds. You will see that not all labels will be displayed by the chart.
Completed
Last Updated: 22 Jan 2015 17:22 by ADMIN
Steps to reproduce:
1. Add a chart to a form
2. Add a bar series with some data
3. Set the gapLength of the horizontal axis to 0

Run the project and resize the chart. You will see that the gaps between bars are inconsistent.
Completed
Last Updated: 08 Dec 2014 13:01 by ADMIN
Steps to reproduce:

1. Add a RadChartView to a form.

2. Add a LassoZoomController to the chart 

3. Run the project and start scrolling the mouse wheel. 

You will see that the chart is not zoomed in our out. If you click on the chart the mouse wheel zooms as expected.



WORKAROUND:

Set the focus to the chart element:

this.radChartView1.Behavior.ItemCapture = this.radChartView1.ChartElement;
this.radChartView1.ChartElement.Focus();
Completed
Last Updated: 13 Nov 2014 08:48 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Sr.
Comments: 0
Category: ChartView
Type: Bug Report
0
To reproduce:

public partial class Form1 : Form
{
    private BindingList<MyData> data;

    public Form1()
    {
        InitializeComponent();
        LoadDatas();

        MyBarSeries bars = new MyBarSeries();
        bars.DataSource = data;
        bars.ValueMember = "Montant";
        bars.CategoryMember = "Month";
        bars.LegendTitle = "My series of MyData";
        this.radChartView1.ShowLegend = true;
        this.radChartView1.Series.Add(bars);
    }

    private void LoadDatas()
    {
        data = new BindingList<MyData>();
        data.Add(new MyData(20, "janv", 1));
        data.Add(new MyData(50, "fev", 2));
        data.Add(new MyData(30, "mars", 3));
        data.Add(new MyData(25, "avril", 4));
        data.Add(new MyData(40, "mai", 5));
        data.Add(new MyData(80, "juin", 6));
        data.Add(new MyData(20, "juil", 7));
    }

    public class MyData
    {
        public int Montant { get; set; }

        public string Month { get; set; }

        public double NumMonth { get; set; }

        public MyData(int montant, string month, double numMonth)
        {
            this.Montant = montant;
            this.Month = month;
            this.NumMonth = numMonth;
        }
    }

    public class MyBarSeries : BarSeries
    {
       
    }
}

Resolution: 
When you inherit from a serie, the original control themes are not automatically inherited. You need to override the ThemeRole property. Here is the code snippet: 
public class MyBarSeries : BarSeries
{
    public override string ThemeRole
    {
        get
        {
            return typeof(BarSeries).Name;
        }
    }
}
Completed
Last Updated: 20 Oct 2014 13:59 by ADMIN
With significant number of points in pie series and with very small values as data points, the default chart strategy for positioning smart labels overlaps the values.

Note: the smart labels overlapping can be reproduced with DonutSeries as well.
Completed
Last Updated: 20 Oct 2014 12:10 by ADMIN
I'm using version 2012.3.1310.40
I use ChartView to create a pie chart with the following data
Assets          2248550.22
Income             19748.67
Equity           2228253.95
Liability                 547.60

So, when the chart displays, the Percentage is set as follows:
Assets       50%
Income        0%
Equity         50%
Liability        0%

I notice when the percentage is 0% for any data, the pie chart shows "0%" near the chart title (please see attachment).  Or if the calculated data returns 0, it doesn't show any percentage on the chart, but it will shows "NaN" near the title as well. (please see attachment).
Completed
Last Updated: 20 Oct 2014 12:05 by ADMIN
SmartLabelsController - PieTwoLabelColumnsStrategy throws exception if the series has two or more DataPoints with value "0";

Code to reproduce:
            RadChartView pieChart = new RadChartView();

            pieChart.AreaType = ChartAreaType.Pie;