Search results

Getting started with Blazor Bullet Chart component

08 Apr 2021 / 3 minutes to read

This section briefly explains how to include a Bullet Chart in your Blazor server-side application. You can refer Getting Started with Syncfusion Blazor for Server-Side in Visual Studio 2019 page for introduction and configuring common specifications.

Importing Syncfusion Blazor component in the application

  1. Install Syncfusion.Blazor NuGet package to the application by using the NuGet Package Manager.
  2. You can add the client-side resources through CDN or from NuGet package in the HEAD element of the ~/Pages/_Host.cshtml page.
Copied to clipboard
<head>
<link href="_content/Syncfusion.Blazor.Themes/bootstrap4.css" rel="stylesheet" />
<!---CDN--->
@*<link href="https://cdn.syncfusion.com/blazor/18.4.42/styles/bootstrap4.css" rel="stylesheet" />*@
</head>

For Internet Explorer 11, kindly refer the polyfills. Refer the documentation for more information.

Copied to clipboard
<head>
<link href="https://cdn.syncfusion.com/blazor/18.4.42/styles/bootstrap4.css" rel="stylesheet" />
<script src="https://github.com/Daddoon/Blazor.Polyfill/releases/download/3.0.1/blazor.polyfill.min.js"></script>
</head>

Adding component package to the application

Open **~/_Imports.razor file and include the Syncfusion.Blazor.Charts namespace.

Copied to clipboard
@using Syncfusion.Blazor.Charts

Add SyncfusionBlazor service in Startup.cs

Open the Startup.cs file and add services required by Syncfusion components using services.AddSyncfusionBlazor() method. Add this method in the ConfigureServices function as follows.

Copied to clipboard
using Syncfusion.Blazor;
namespace BlazorApplication
{
public class Startup
{
    ....
    ....
    public void ConfigureServices(IServiceCollection services)
    {
        ....
        ....
        services.AddSyncfusionBlazor();
    }
}
}

To enable custom client-side source loading from CRG or CDN, please refer to the section about custom resources in Blazor application.

Add Bullet Chart component

To initialize the Bullet Chart component, add the below code to your Index.razor view page under ~/Pages folder. In a new application, if Index.razor page has any default content template, then those content can be completely removed and following code can be added.

Copied to clipboard
@page "/"

<SfBulletChart DataSource="@BulletChartData" ValueField="FieldValue" TargetField="TargetValue" Minimum="0" Maximum="300" Interval="50">
</SfBulletChart>

@code{
public class ChartData
{
    public double FieldValue { get; set; }
    public double TargetValue { get; set; }
}
public List<ChartData> BulletChartData = new List<ChartData>
{
    new ChartData { FieldValue = 270, TargetValue = 250 }
};
}

On successful compilation of your application, the Syncfusion Blazor Bullet Chart component will render in the web browser as shown below.

Bullet Chart

Add Title

You can add a title by using Title property in the Bullet Chart, to provide quick information to the user about the data plotted in the component.

Copied to clipboard
@page "/"

<SfBulletChart DataSource="@BulletChartData" ValueField="FieldValue" TargetField="TargetValue" Minimum="0" Maximum="300" Interval="50" Title="Revenue">
</SfBulletChart>

@code{
public class ChartData
{
    public double FieldValue { get; set; }
    public double TargetValue { get; set; }
}
public List<ChartData> BulletChartData = new List<ChartData>
{
    new ChartData { FieldValue = 270, TargetValue = 250 }
};
}

Bullet Chart

Ranges

You can add ranges by using BulletChartRangeCollection to measure the qualitative state by observing the distance between each range.

Copied to clipboard
@page "/"

<SfBulletChart DataSource="@BulletChartData" ValueField="FieldValue" TargetField="TargetValue" Minimum="0" Maximum="300" Interval="50" Title="Revenue">
<BulletChartRangeCollection>
    <BulletChartRange End=150> </BulletChartRange>
    <BulletChartRange End=250></BulletChartRange>
    <BulletChartRange End=300></BulletChartRange>
</BulletChartRangeCollection>
</SfBulletChart>

@code{
public class ChartData
{
    public double FieldValue { get; set; }
    public double TargetValue { get; set; }
}
public List<ChartData> BulletChartData = new List<ChartData>
{
    new ChartData { FieldValue = 270, TargetValue = 250 }
};
}

Bullet Chart

Tooltip

You can use the tooltip to show the measure values by setting the Enable property as true in BulletChartTooltip.

Copied to clipboard
@page "/"

<SfBulletChart DataSource="@BulletChartData" ValueField="FieldValue" TargetField="TargetValue" Minimum="0" Maximum="300" Interval="50" Title="Revenue">
<BulletChartTooltip TValue="ChartData" Enable="true"></BulletChartTooltip>
<BulletChartRangeCollection>
    <BulletChartRange End=150> </BulletChartRange>
    <BulletChartRange End=250></BulletChartRange>
    <BulletChartRange End=300></BulletChartRange>
</BulletChartRangeCollection>
</SfBulletChart>

@code{
public class ChartData
{
    public double FieldValue { get; set; }
    public double TargetValue { get; set; }
}
public List<ChartData> BulletChartData = new List<ChartData>
{
    new ChartData { FieldValue = 270, TargetValue = 250 }
};
}

Bullet Chart