Skip to main content

Angular charts


Nowadays, Data analysis is a crucial part of any business application. This helps businesses to make important decisions. It is important to represent a large amount of data in an easy to understand and interactive way.

Charts are very useful for beautiful, easy to understand and interactive data representation and visualization. 

There are different open-source and paid chart libraries available in javascript (with angular wrapper) for beautiful data representation.

In this article, we will see the best angular chart libraries for beautiful and interactive data representation.

First, we will see open-source angular chart libraries, late on we will look into other paid chart libraries for angular

These are the best open-source angular chart libraries available with angular wrapper.

NPM Downloads : Last one year angular chart libraries trend
NPM Downloads : Last one year angular chart libraries trend
ngx-charts : Grouped Vertical Bar Chart
ngx-charts : Grouped Vertical Bar Chart
GitHub stars GitHub forks NPM NPM Downloads

ngx-charts is a declarative charting framework for angular2+.

It is using Angular to render and animate the SVG elements with all of its binding and speed goodness and uses d3 for the excellent math functions, scales, axis and shape generators, etc.

By having Angular do all of the renderings it opens us up to endless possibilities the Angular platform provides such as AoT, Universal, etc.

ngx-charts allows us to customize the styles using CSS. We can also create custom charts using ngx-charts components.

It has an active developer community.

Check out this article, How to use ngx-charts in angular application ?

Ngx-charts Features

  • Chart Types
  • Horizontal & Vertical Bar Charts (Standard, Grouped, Stacked, Normalized)
  • Line
  • Area (Standard, Stacked, Normalized)
  • Pie (Explodable, Grid, Custom legends)
  • Bubble
  • Doughnut
  • Gauge (Linear & Radial)
  • Heatmap
  • Treemap
  • Number Cards
  • Customization
  • Autoscaling
  • Timeline Filtering
  • Line Interpolation
  • Configurable Axis Labels
  • Legends (Labels & Gradient)
  • Advanced Label Positioning
  • Real-time data support
  • Advanced Tooltips
  • Data point Event Handlers
  • Theming
  • Works with ngUpgrade
ngx-echarts : chart types
ngx-echarts : chart types
GitHub stars GitHub forks NPM NPM Downloads

ngx-echarts is an Angular (ver >= 2.x) directive for ECharts (ver >= 3.x)

ECharts is an open-sourced, web-based, cross-platform framework that supports the rapid construction of interactive visualization. 

It has 39.6k stars and 13.2k forks on github, ECharts is regarded as a leading visualization development tool in the world, and ranks the third in the GitHub visualization tab.

– Source

It can run fluently on PC and mobile devices. It is compatible with most modern Web Browsers, e.g., IE8/9/10/11, Chrome, Firefox, Safari and so on. ECharts depends on ZRender, a graphic rendering engine, to create intuitive, interactive, and highly-customizable charts.

Ngx-echarts Features

  • Chart Types

Line series, bar series, scatter series, pie charts, candle-stick series, boxplot series for statistics, map series, heatmap series, line series for directional information, graph series for relationships, treemap series, sunburst series, parallel series for multi-dimensional data, funnel series, gauge series

Besides the built-in chart types, ECharts also provide the custom series for users to create a specific chart type.

  • Customization
  • Loading Handling
  • Event Handling
  • Real-time data update
  • Initial Options
  • Auto Resize
  • Theming
  • Connect Charts
  • Draggable Charts
  • 3D Charts

Refer ECharts Documentation for more customization.

ng2-charts : line chart
ng2-charts : line chart
GitHub stars GitHub forks NPM NPM Downloads

ng2-charts is an Angular2 directive for Chart.js

Chart.js is a popular opensource javascript charting library

Chart.js uses HTML5 canvas which provides great rendering performance across all modern browsers(IE11+).

It provides schematics for easy integration in angular application.

ng2-charts Features

  • Chart Types

ng2-charts supports 8 chart types: line chart, bar chart, radar chart, pie chart, polar-area chart, doughnut chart, bubble chart and scatter chart.

  • Customization
angular-plotly.js : chart types
angular-plotly.js : chart types
GitHub stars GitHub forks NPM NPM Downloads

Angular-plotly.js is a plotly.js angular component from plotly.

It supports Angular 9.x, If you want to use with Angular 8.x, please use version angular-plotly.js@1.x

Built on top of d3.js and stack.glplotly.js is a high-level, declarative charting library. plotly.js ships with over 40 chart types, including scientific charts, 3D graphs, statistical charts, SVG maps, financial charts, and more.

Plotly.js has 11.2k stars and 1.3k forks on github.

– Source

angular-plotly.js Features

  • Chart Types

Basic Charts:  Scatter Plots, Bar Charts, Line Charts, Pie Charts, Bubble Charts, Dot Plots, Filled Area Plot, Horizontal bar charts, Sunburst Charts, Sankey Diagram, Point Cloud, Multi Chart Types

Statistical Charts: Error Bars, Box Plots, Histograms, 2D density plots, parallel categories diagram.

Financial Charts: Waterfall Charts, Indicators, CandleStick charts, Funnel and Funnel Area Charts.

Maps: Mapbox map layers, Mapbox density heatmap, Choropleth mapbox, lines on maps etc.

3D Charts: 3D Scatter Plots, Ribbon Plots, 3D Surface plots, 3D mesh plots etc

  • Customization
  • Download as SVG / PNG
  • Data export
  • Events Handling
  • Auto Resize
  • Scroll
  • Zoom
  • Filter
  • Animation
  • Group by
Refer Plotly.js documentation for more customization details
PrimeNG Charts : Bar Chart
PrimeNG Charts : Bar Chart
GitHub stars GitHub forks NPM NPM Downloads

Note: These states are for the PrimeNG complete UI collection package.

PrimeNg chart components are based on Charts.js 2.7.x, an open-source HTML5 based charting library.

PrimeNG is a collection of rich UI components for Angular. All widgets are open source and free to use under MIT License.

PrimeNG Chart Features

  • Chart Types

Currently, there are 6 options available; pie chart, doughnut chart, line(line or horizontal bar) chart, bar chart, radar chart, and polar area chart.

  • Customization
Google Charts : Pie Chart
Google Charts : Pie Chart
GitHub stars GitHub forks NPM Downloads

angular-google-charts is a wrapper of the Google Charts library written for Angular 6 & 7.

Google chart tools are powerful, simple to use, and free.

Note: Google Charts is free, but not open-source. Google’s licensingdoes not allow you to host their JS files on your server. So if you are an enterprise and have some sensitive data, Google Charts might not be the best option.

HighCharts Angular : Line Chart
HighCharts Angular : Line Chart
GitHub stars GitHub forks NPM Downloads

Highcharts Angular is an official Highcharts wrapper for angular.

Highcharts is a modern SVG-based, multi-platform charting library. It has a rich set of chart collection.

Highcharts is free for non-commercial use and paid for commercial use.

Fusion Charts : Bar Chart
Fusion Charts : Bar Chart
GitHub stars GitHub forks NPM Downloads

angular-fusioncharts is a simple and lightweight official Angular component for FusionCharts JavaScript charting library. angular-fusioncharts enables you to add JavaScript charts in your Angular application without any hassle.

FusionCharts is a javascript chart library and has charts like pie, column, area, line, radar, and over 150 other charts for web application.

Fusion charts provides paid licance for commercial use.

Comments

Popular posts from this blog

How to use Ngx-Charts in Angular ?

Charts helps us to visualize large amount of data in an easy to understand and interactive way. This helps businesses to grow more by taking important decisions from the data. For example, e-commerce can have charts or reports for product sales, with various categories like product type, year, etc. In angular, we have various charting libraries to create charts.  Ngx-charts  is one of them. Check out the list of  best angular chart libraries .  In this article, we will see data visualization with ngx-charts and how to use ngx-charts in angular application ? We will see, How to install ngx-charts in angular ? Create a vertical bar chart Create a pie chart, advanced pie chart and pie chart grid Introduction ngx-charts  is an open-source and declarative charting framework for angular2+. It is maintained by  Swimlane . It is using Angular to render and animate the SVG elements with all of its binding and speed goodness and uses d3 for the excellent math functions, scales, axis and shape ge

JavaScript new features in ES2019(ES10)

The 2019 edition of the ECMAScript specification has many new features. Among them, I will summarize the ones that seem most useful to me. First, you can run these examples in  node.js ≥12 . To Install Node.js 12 on Ubuntu-Debian-Mint you can do the following: $sudo apt update $sudo apt -y upgrade $sudo apt update $sudo apt -y install curl dirmngr apt-transport-https lsb-release ca-certificates $curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash - $sudo apt -y install nodejs Or, in  Chrome Version ≥72,  you can try those features in the developer console(Alt +j). Array.prototype.flat && Array.prototype. flatMap The  flat()  method creates a new array with all sub-array elements concatenated into it recursively up to the specified depth. let array1 = ['a','b', [1, 2, 3]]; let array2 = array1.flat(); //['a', 'b', 1, 2, 3] We should also note that the method excludes gaps or empty elements in the array: let array1

Understand Angular’s forRoot and forChild

  forRoot   /   forChild   is a pattern for singleton services that most of us know from routing. Routing is actually the main use case for it and as it is not commonly used outside of it, I wouldn’t be surprised if most Angular developers haven’t given it a second thought. However, as the official Angular documentation puts it: “Understanding how  forRoot()  works to make sure a service is a singleton will inform your development at a deeper level.” So let’s go. Providers & Injectors Angular comes with a dependency injection (DI) mechanism. When a component depends on a service, you don’t manually create an instance of the service. You  inject  the service and the dependency injection system takes care of providing an instance. import { Component, OnInit } from '@angular/core'; import { TestService } from 'src/app/services/test.service'; @Component({ selector: 'app-test', templateUrl: './test.component.html', styleUrls: ['./test.component