# Bar Chart - Add a Horizontal Line

### Question

• Hi,

How do I add a horizontal line to my Bar Chart at point 0 on Y-Axis?

Thanks.

Wednesday, October 05, 2011 11:45 AM

• This worked...

```            // add horizontal line at point 0
StripLine stripLine3 = new StripLine();

// Set threshold line so that it is only shown once
stripLine3.Interval = 0;

// Set the threshold line to be drawn at the calculated mean of the first series
stripLine3.IntervalOffset = 0;

stripLine3.BackColor = Color.DarkGreen;
stripLine3.StripWidth = 10;

// Add strip line to the chart
```

• Marked as answer by Friday, October 07, 2011 11:15 AM
Friday, October 07, 2011 11:15 AM

### All replies

• Hi,

do you mean a custom drawn line thats independend from the charts data? You could handle the paint events for that (PostPaint after painting the Series)

see http://social.msdn.microsoft.com/Forums/en-US/MSWinWebChart/thread/6a7ec829-2e65-4977-86a5-d94fb3c9d670 for an example of a custom drawn vertical line that interacts with the arrow keys (ctrl must be pressed also).

Regards,

Thorsten

Thursday, October 06, 2011 12:45 AM
• I just want the gridline to appear at point 0.

I set

AxisY.MajorGrid.Enabled = true

but that drew gridlines for all points. Is it possible just to set 1 gridline?

Thanks

• Edited by Thursday, October 06, 2011 8:53 AM
Thursday, October 06, 2011 8:53 AM
• The Y-axis on a Bar chart is the horizontal one, you either mean a Column chart or a vertical line.

I explain four different ways to show a line on a chart in this thread.

Here's number five that may work for your particular case.

5) Adjust the MajorGrid.Interval and IntervalOffset to get a single line at position 0 (assuming AxisY.Minimum is a negative value)

```	'RecalculateAxesScale to get the actual values for the automatically calculated axis.min & max.
chart1.ChartAreas(0).RecalculateAxesScale()

'Set the majorgrid interval to something *big* for the gridline to only show once.
chart1.ChartAreas(0).AxisY.MajorGrid.Interval = Math.Abs(chart1.ChartAreas(0).AxisY.Minimum) + Math.Abs(chart1.ChartAreas(0).AxisY.Maximum)

'Set the majorgrid interval offset so that the first gridline appears at position 0.
chart1.ChartAreas(0).AxisY.MajorGrid.IntervalOffset = Math.Abs(chart1.ChartAreas(0).AxisY.Minimum)
```

BTW, care to report back on this thread and this one? Did you find a solution for the questions you asked?
Thursday, October 06, 2011 10:24 AM
• This worked...

```            // add horizontal line at point 0
StripLine stripLine3 = new StripLine();

// Set threshold line so that it is only shown once
stripLine3.Interval = 0;

// Set the threshold line to be drawn at the calculated mean of the first series
stripLine3.IntervalOffset = 0;

stripLine3.BackColor = Color.DarkGreen;
stripLine3.StripWidth = 10;

// Add strip line to the chart