Introducing Essential JS 2 Bullet Chart | Syncfusion Blogs
Live Chat Icon For mobile
Live Chat Icon
Popular Categories.NET  (181).NET Core  (28).NET MAUI  (227)Angular  (113)ASP.NET  (49)ASP.NET Core  (81)ASP.NET MVC  (87)Azure  (42)Black Friday Deal  (1)Blazor  (236)BoldSign  (14)DocIO  (24)Essential JS 2  (110)Essential Studio  (200)File Formats  (73)Flutter  (136)JavaScript  (226)Microsoft  (122)PDF  (83)Python  (1)React  (105)Streamlit  (1)Succinctly series  (131)Syncfusion  (964)TypeScript  (33)Uno Platform  (3)UWP  (3)Vue  (46)Webinar  (53)Windows Forms  (59)WinUI  (72)WPF  (163)Xamarin  (159)XlsIO  (38)Other CategoriesBarcode  (5)BI  (29)Bold BI  (8)Bold Reports  (2)Build conference  (11)Business intelligence  (55)Button  (4)C#  (164)Chart  (147)Chart of the week  (58)Cloud  (15)Company  (440)Dashboard  (8)Data Science  (3)Data Validation  (8)DataGrid  (73)Development  (681)Doc  (7)DockingManager  (1)eBook  (99)Enterprise  (22)Entity Framework  (7)Essential Tools  (13)Excel  (43)Extensions  (23)File Manager  (7)Gantt  (21)Gauge  (12)Git  (5)Grid  (31)HTML  (13)Installer  (2)Knockout  (2)Language  (1)LINQPad  (1)Linux  (2)M-Commerce  (1)Metro Studio  (11)Mobile  (522)Mobile MVC  (9)OLAP server  (2)Open source  (1)Orubase  (12)Partners  (21)PDF viewer  (45)Performance  (13)PHP  (2)PivotGrid  (5)Predictive Analytics  (6)Report Server  (3)Reporting  (8)Reporting / Back Office  (9)Rich Text Editor  (12)Road Map  (12)Scheduler  (54)Security  (5)SfDataGrid  (9)Silverlight  (21)Sneak Peek  (32)Solution Services  (4)Spreadsheet  (11)SQL  (15)Stock Chart  (1)Surface  (4)Tablets  (5)Theme  (12)Tips and Tricks  (112)UI  (406)Uncategorized  (68)Unix  (2)User interface  (68)Visual State Manager  (2)Visual Studio  (31)Visual Studio Code  (19)Web  (628)What's new  (341)Windows 8  (19)Windows App  (2)Windows Phone  (15)Windows Phone 7  (9)WinRT  (26)
Essential JS 2 Bullet Chart

Introducing Essential JS 2 Bullet Chart

We are happy to introduce the new Bullet Chart control for the Essential JS 2 suite. It comes with the following functionalities:

  • Web accessibility
  • Touch-friendly features
  • Right-to-left rendering
  • Lightweight UIs

Bullet charts are used to visually compare measures, like the commonly used bar chart. They display one or more measures and compare them with a target value. You can also display measures in a range of performance such as poor, satisfactory, and good.Essential JS 2 Bullet Chart

In this blog, we will provide a walk-through on the Bullet Chart control and its features.


The Bullet Chart component renders in both vertical and horizontal directions, which will be helpful when viewing a chart on different devices.Horizontal and Vertical Orientation of Bullet Chart

Multiple targets

The Bullet Chart allows us to compare the measures with multiple targets.Multiple targets in the Bullet Chart for JavaScript

Multiple measures

Bullet chart allows the comparison of several measures at once.Multiple measures in JavaScript Bullet Chart


The qualitative ranges in a bullet chart help measure the performance of data. Each color of the range represents a quality such as good, bad, and acceptable.Ranges in JavaScript Bullet Chart

Labels and ticks

Ticks are the major scale indicators of a bullet chart, and labels will be placed on the major ticks. You can apply a range’s color to the ticks and labels that are associated with it.Labels and Ticks in JavaScript Bullet Chart


The Bullet Chart lets you display details about measures and targets through a tooltip that appears when hovering the mouse over the measures.Tooltip in JavaScript Bullet Chart


We can configure the look and feel of a bullet chart to match requirements using several built-in options. The control supports the following themes:

  • Fabric
  • Material
  • High contrast
  • Bootstrap

Getting started with the Bullet Chart in TypeScript

Let’s create a bullet chart to visualize and compare measures. The Bullet Chart control can be configured in TypeScript as follows:

  1. Clone the Essential JS 2 quick-start seed repository and configure the necessary package in the config.js file.
    "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js",
    "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js",
    "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js",
    "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js"
  2. Install the NPM packages by using the following command.
    npm install
  3. Add the HTML input element that needs to be initialized as a component in the htmlfile.
  4. Initialize the component in the ts file as shown in the following code.
    import { BulletChart } from '@syncfusion/ej2-charts';
    // initialize bullet chart component
    let chart: BulletChart = new BulletChart(
         dataSource: [{ value: 270, target: 250 }],
         valueField: 'value',
         targetField: 'target',
         ranges: [{end : 150}, {end : 250}, {end : 300}],
         title: Revenue YTD,
    // render initialized bullet chart

JavaScript Bullet ChartYou can find the live demo of this project here.


We hope you will find the Bullet Chart component user-friendly, and we look forward to you trying it out. You can find the Essential JS 2 install download link on our website. Also, you can check out the Bullet Chart source on GitHub. Please take a look at our live demos in our sample browser, and customization features in our documentation.

The JavaScript Bullet Chart component is also available for the ReactAngularASP.NET Core,  Blazor and MVC frameworks, built from their own TypeScript libraries.

If you wish to send us feedback or would like to ask any questions, please feel free to post in the comments section below, or contact us through our support forum, Direct-Trac, or feedback portal.

If you like this blog post, we think you’ll also like the following free ebooks!


Share this post:

Popular Now

Be the first to get updates

Subscribe RSS feed

Be the first to get updates

Subscribe RSS feed