Completed
Last Updated: 30 Jan 2015 17:50 by ADMIN
When one adds data points with negative and positive values, the negative ones should go below the 0, for example, with the following data:

AreaSeries areaSeries = new AreaSeries();
areaSeries.DataPoints.Add(new CategoricalDataPoint(5, "Jan"));
areaSeries.DataPoints.Add(new CategoricalDataPoint(-10, "Apr"));

Resolution: 
To use the functionality one should set the StartPositionAxis and StartPositionValue properties of an axis. The first property is the axis along which the current axis will be aligned. The second is the value where the current axis should be positioned.
Here is a sample code: 
AreaSeries areaSeries = new AreaSeries();
areaSeries.DataPoints.Add(new CategoricalDataPoint(13, "Jan"));
areaSeries.DataPoints.Add(new CategoricalDataPoint(20, "Apr"));
areaSeries.DataPoints.Add(new CategoricalDataPoint(-15, "Jul"));
areaSeries.DataPoints.Add(new CategoricalDataPoint(16, "Oct"));
this.radChartView1.Series.Add(areaSeries);

areaSeries.HorizontalAxis.StartPositionAxis = areaSeries.VerticalAxis;
areaSeries.HorizontalAxis.StartPositionValue = 0; 
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 17:13 by ADMIN
ADMIN
Created by: Boryana
Comments: 0
Category: ChartView
Type: Feature Request
0
Add HLC (high-low-close) Series to RadChartView
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 14:37 by ADMIN
We should add a way for users to bind a property in the data source that will be used as a legend title for pie data points.

Resolution: 

Set the LegendTitleMember property to bind legend title of PieSeries. 
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: 14 Nov 2014 12:55 by ADMIN
ADMIN
Created by: Stefan
Comments: 0
Category: ChartView
Type: Feature Request
0

			
Completed
Last Updated: 13 Nov 2014 08:48 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Principal
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;
        }
    }
}