Articles in this section
Category / Section

How to use up down bar for Excel chart in C#, VB.NET?

3 mins read

Syncfusion Excel (XlsIO) library is a .NET Excel library used to create, read, and edit Excel documents. Also, converts Excel documents to PDF files.

 

This article explains how to use Up/Down Bars in chart using XlsIO.

What are Up/Down Bars?

1.  Up bars connect points on the first series in the chart group with higher values on the last series in the chart group (the lines go up from the first series).

2.  Down bars connect points on the first series in the chart group with lower values on the last series in the chart group (the lines go down from the first series).

3.  In XlsIO we can format the up or down bar by using FirstDropBar and SecondDropBar properties in SeriesFormat respectively.

 

C:\Users\kondurukeerthi.kondu\AppData\Local\Microsoft\Windows\INetCache\Content.Word\Enable_Up-Down_Drop_Bar.png

        Up/Down bars using XlsIO

 

Note:

Only line charts and stock charts do support Up/Down bars. Trying to use drop bar properties to other charts might throw exception or the changes will not be reflected in the output document because those charts does not support Up/Down bars.

 

Code snippet to use Up/Down Bars

//Chart up/down bar
IChartDropBar upBar = chart.Series[0].SerieFormat.CommonSerieOptions.FirstDropBar;
upBar.Gap = 100;
IChartDropBar downbar = chart.Series[0].SerieFormat.CommonSerieOptions.SecondDropBar;
downbar.Fill.ForeColorIndex = ExcelKnownColors.Light_orange;

 

Download Complete Sample

 

Download input file with data

 

To know more about creating charts with various settings using XlsIO, please refer the documentation.

 

The following C#/ VB.NET complete code snippet shows how to use up/down bars in chart using XlsIO.

C#

using Syncfusion.XlsIO;
using System.Reflection;
using System.IO;
 
namespace ChartSample
{
    class Program
    {
        static void Main(string[] args)
        {
            using (ExcelEngine excelEngine = new ExcelEngine())
            {
                IApplication application = excelEngine.Excel;
                application.DefaultVersion = ExcelVersion.Excel2016;
 
                //Open existing workbook with data entered
                Assembly assembly = typeof(Program).GetTypeInfo().Assembly;
                Stream fileStream = assembly.GetManifestResourceStream("ChartSample.InputTemplate.xlsx");
                IWorkbook workbook = application.Workbooks.Open(fileStream);
                IWorksheet worksheet = workbook.Worksheets[0];
 
                //Initialize chart and assign data
                IChartShape chart = worksheet.Charts.Add();
                chart.ChartType = ExcelChartType.Line;
 
                //Assign data
                chart.DataRange = worksheet["A1:D6"];
                chart.IsSeriesInRows = false;
 
                //Apply chart elements
                //Set chart title
                chart.ChartTitle = "Line Chart";
 
                //Chart up/down bar
                IChartDropBar upBar = chart.Series[0].SerieFormat.CommonSerieOptions.FirstDropBar;
                upBar.Gap = 100;
                IChartDropBar downbar = chart.Series[0].SerieFormat.CommonSerieOptions.SecondDropBar;
                downbar.Fill.ForeColorIndex = ExcelKnownColors.Light_orange;
                
                //Positioning the chart in the worksheet
                chart.TopRow = 8;
                chart.LeftColumn = 1;
                chart.BottomRow = 23;
                chart.RightColumn = 8;
 
                //Saving the workbook
                Stream stream = File.Create("Output.xlsx");
                workbook.SaveAs(stream);
            }
        }
    }
}

VB

Imports Syncfusion.XlsIO
Imports System.Reflection
Imports System.IO
 
Namespace ChartSample
 
    Class Program
 
        Public Shared Sub Main(ByVal args() As String)
            Using excelEngine As ExcelEngine = New ExcelEngine
                Dim application As IApplication = excelEngine.Excel
                application.DefaultVersion = ExcelVersion.Excel2016
 
                'Open existing workbook with data entered
                Dim assembly As Assembly = GetType(Program).GetTypeInfo.Assembly
                Dim fileStream As Stream = assembly.GetManifestResourceStream("ChartSample.InputTemplate.xlsx")
                Dim workbook As IWorkbook = application.Workbooks.Open(fileStream)
                Dim worksheet As IWorksheet = workbook.Worksheets(0)
 
                'Initialize chart and assign data
                Dim chart As IChartShape = worksheet.Charts.Add
                chart.ChartType = ExcelChartType.Line
 
                'Assign data
                chart.DataRange = worksheet("A1:D6")
                chart.IsSeriesInRows = False
 
                'Apply chart elements
                'Set chart title
                chart.ChartTitle = "Line Chart"
 
                'Chart up/down bar
                Dim upBar As IChartDropBar = chart.Series(0).SerieFormat.CommonSerieOptions.FirstDropBar
                upBar.Gap = 100
                Dim downbar As IChartDropBar = chart.Series(0).SerieFormat.CommonSerieOptions.SecondDropBar
                downbar.Fill.ForeColorIndex = ExcelKnownColors.Light_orange
 
                'Positioning the chart in the worksheet
                chart.TopRow = 8
                chart.LeftColumn = 1
                chart.BottomRow = 23
                chart.RightColumn = 8
 
                'Saving the workbook
                Dim stream As Stream = File.Create("Output.xlsx")
                workbook.SaveAs(stream)
            End Using
        End Sub
    End Class
End Namespace

 

Conclusion

 

I hope you enjoyed learning about how to use up down bar for Excel chart in C#, VB.NET.

 

You can refer to our WinForms Excel’s feature tour page to know about its other groundbreaking feature representations. You can also explore our WinForms Excel documentation to understand how to present and manipulate data.

For current customers, you can check out our WinForms components from the License and Downloads page. If you are new to Syncfusion, you can try our 30-day free trial to check out our WinForms Excel and other WinForms components.

If you have any queries or require clarifications, please let us know in comments below. You can also contact us through our support forumsDirect-Trac, or feedback portal. We are always happy to assist you!

 

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments (0)
Please sign in to leave a comment
Access denied
Access denied