How to dynamically set DataLabelStyle position


https://www.nevron.com/Forum/Topic9290.aspx
Print Topic | Close Window

By jerry tovar - 9 Years Ago
I have a Nevron bar chart that displays the value for each datapoint in each bar.

The problem that I have is that some labels in the bar have a low value and the label displays below the x axis while the other larger values display fine in their bar.

I set the arrowlength like so:
series.DataLabelStyle.ArrowLength = new NLength(-10);  //this displays the larger values fine

Is there a way to set the ArrowLength based on the value that is going to be shown in the bar? Like so:

If (value <= 50)
{
series.DataLabelStyle.ArrowLength = new NLength(+20)
}
else
{
series.DataLabelStyle.ArrowLength = new NLength(-10)
}

By Nevron Support - 9 Years Ago
Hi Jerry,
Yes - you can assign a data label style per data point:

   NBarSeries bar = new NBarSeries();

   bar.Values.Add(10);
   bar.Values.Add(-10);

   NDataLabelStyle dls1 = new NDataLabelStyle();
   dls1.ArrowLength = new NLength(10);
   bar.DataLabelStyles[0] = dls1;

   NDataLabelStyle dls2 = new NDataLabelStyle();
   dls2.ArrowLength = new NLength(-10);
   bar.DataLabelStyles[1] = dls2;


Hope this helps - let us know if you have any questions.