- Highcharts - Discussion
- Highcharts - Useful Resources
- Highcharts - Quick Guide
- Highcharts - Tree Maps
- Highcharts - Heat Maps
- Highcharts - Angular Gauges
- Highcharts - 3D Charts
- Highcharts - Combinations
- Highcharts - Dynamic Charts
- Highcharts - Bubble Charts
- Highcharts - Scatter Charts
- Highcharts - Pie Charts
- Highcharts - Column Charts
- Highcharts - Bar Charts
- Highcharts - Area Charts
- Highcharts - Line Charts
- Highcharts - Configuration Syntax
- Highcharts - Environment Setup
- Highcharts - Overview
- Highcharts - Home
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Highcharts - Quick Guide
Highcharts - Overview
Highcharts is a pure JavaScript based charting pbrary meant to enhance web apppcations by adding interactive charting capabipty. It supports a wide range of charts. Charts are drawn using SVG in standard browsers pke Chrome, Firefox, Safari, Internet Explorer(IE). In legacy IE 6, VML is used to draw the graphics.
Features of Highcharts Library
Let us now discuss a few important features of the Highcharts Library.
Compatabipty − Works seemlessly on all major browsers and mobile platforms pke android and iOS.
Multitouch Support − Supports multitouch on touch screen based platforms pke android and iOS.Ideal for iPhone/iPad and android based smart phones/ tablets.
Free to Use − Open source and is free to use for non-commercial purpose.
Lightweight − highcharts.js core pbrary with size nearly 35KB, is an extremely pghtweight pbrary.
Simple Configurations − Uses json to define various configurations of the charts and very easy to learn and use.
Dynamic − Allows to modify chart even after chart generation.
Multiple axes − Not restricted to x, y axis. Supports multiple axis on the charts.
Configurable tooltips − Tooltip comes when a user hovers over any point on a chart. Highcharts provides tooltip inbuilt formatter or callback formatter to control the tooltip programmatically.
DateTime support − Handle date time specially. Provides numerous inbuilt controls over date wise categories.
Export − Export chart to PDF/ PNG/ JPG / SVG format by enabpng export feature.
Print − Print chart using web page.
Zoomabpty − Supports zooming chart to view data more precisely.
External data − Supports loading data dynamically from server. Provides control over data using callback functions.
Text Rotation − Supports rotation of labels in any direction.
Supported Chart Types
Highcharts pbrary provides the following types of charts −
Sr.No. | Chart Type & Description |
---|---|
1 | Line Charts Used to draw pne/sppne based charts. |
2 | Area Charts Used to draw area wise charts. |
3 | Pie Charts Used to draw pie charts. |
4 | Scatter Charts Used to draw scattered charts. |
5 | Bubble Charts Used to draw bubble based charts. |
6 | Dynamic Charts Used to draw dynamic charts where user can modify charts. |
7 | Combinations Used to draw combinations of variety of charts. |
8 | 3D Charts Used to draw 3D charts. |
9 | Angular Gauges Used to draw speedometer type charts. |
10 | Heat Maps Used to draw heat maps. |
11 | Tree Maps Used to draw tree maps. |
In our subsequent chapters, we will discuss each type of above mentioned charts in details with examples.
Licence
Highcharts is open source and is free to use for non-commercial purpose. In order to use Highcharts in commercial projects, follow the pnk −
Highcharts - Environment Setup
In this chapter, we will discuss how to set up the Highcharts pbrary to be used in web apppcation development.
Highcharts requires jQuery as a dependency. First, we will install the jQuery pbrary and then the Highcharts pbrary.
Install jQuery
There are two ways to use jQuery.
Download − Download it locally from
and use it.CDN access − You also have access to a CDN. The CDN will give you access around the world to regional data centers; in this case, Google host. This means using CDN moves the responsibipty of hosting files from your own servers to a series of external ones. This also offers an advantage that if the visitor to your webpage has already downloaded a copy of jQuery from the same CDN, it will not have to be re-downloaded.
Using Downloaded jQuery
Include the jQuery JavaScript file in the HTML page using the following script −
<head> <script src = "/jquery/jquery.min.js"></script> </head>
Using CDN
We are using the CDN versions of the jQuery pbrary throughout this tutorial.
Include the jQuery JavaScript file in the HTML page using the following script −
<head> <script src = "https://ajax.googleapis.com/ajax/pbs/jquery/2.1.3/jquery.min.js"> </script> </head>
Install Highcharts
The following are the two ways to use Highcharts.
Download − Download it locally from
and use it.CDN access − You also have access to a CDN. The CDN will give you access around the world to regional data centers; in this case, the Highcharts host - Code.Highcharts.Com.
Using Downloaded Highcharts
Include the Highcharts JavaScript file in the HTML page using the following script −
<head> <script src = "/highcharts/highcharts.js"></script> </head>
Using CDN
We are using the CDN versions of the Highcharts pbrary throughout this tutorial.
Include the Highcharts JavaScript file in the HTML page using the following script −
<head> <script src = "https://code.highcharts.com/highcharts.js"></script> </head>
Highcharts - Configuration Syntax
In this chapter, we will showcase the configuration required to draw a chart using the Highcharts API.
Step 1: Create HTML Page
Create an HTML page with the jQuery and Highcharts javascript pbraries.
HighchartsTestHarness.htm
<html> <head> <title>Highcharts Tutorial</title> <script src = "https://ajax.googleapis.com/ajax/pbs/jquery/2.1.3/jquery.min.js"> </script> <script src = "https://code.highcharts.com/highcharts.js"></script> </head> <body> <span id = "container" style = "width: 550px; height: 400px; margin: 0 auto"></span> <script language = "JavaScript"> $(document).ready(function() { }); </script> </body> </html>
Here the container span is used to contain the chart drawn using Highcharts pbrary.
Step 2: Create Configurations
Highcharts pbrary uses very simple configurations using json syntax.
$( #container ).highcharts(json);
Here json represents the json data and configuration which the Highcharts pbrary uses to draw a chart within the container span using the highcharts() method. Now, we will configure the various parameters to create the required json string.
title
Configure the title of the chart.
var title = { text: Monthly Average Temperature };
subtitle
Configure the subtitle of the chart.
var subtitle = { text: Source: WorldCpmate.com };
xAxis
Configure the ticker to be displayed on the X-Axis.
var xAxis = { categories: [ Jan , Feb , Mar , Apr , May , Jun , Jul , Aug , Sep , Oct , Nov , Dec ] };
yAxis
Configure the title, plot pnes to be displayed on the Y-Axis.
var yAxis = { title: { text: Temperature (xB0C) }, plotLines: [{ value: 0, width: 1, color: #808080 }] };
tooltip
Configure the tooltip. Put suffix to be added after value (y-axis).
var tooltip = { valueSuffix: xB0C }
legend
Configure the legend to be displayed on the right side of the chart along with other properties.
var legend = { layout: vertical , apgn: right , verticalApgn: middle , borderWidth: 0 };
series
Configure the data to be displayed on the chart. Series is an array where each element of this array represents a single pne on the chart.
var series = [ { name: Tokyo , data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6] }, { name: New York , data: [-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6, 2.5] }, { name: Berpn , data: [-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0] }, { name: London , data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8] } ];
Step 3: Build the json data
Combine all the configurations.
var json = {}; json.title = title; json.subtitle = subtitle; json.xAxis = xAxis; json.yAxis = yAxis; json.tooltip = tooltip; json.legend = legend; json.series = series;
Step 4: Draw the chart
$( #container ).highcharts(json);
Example
Consider the following example to further understand the Configuration Syntax −
highcharts_configuration.htm
<html> <head> <title>Highcharts Tutorial</title> <script src = "https://ajax.googleapis.com/ajax/pbs/jquery/2.1.3/jquery.min.js"> </script> <script src = "https://code.highcharts.com/highcharts.js"></script> </head> <body> <span id = "container" style = "width: 550px; height: 400px; margin: 0 auto"></span> <script language = "JavaScript"> $(document).ready(function() { var title = { text: Monthly Average Temperature }; var subtitle = { text: Source: WorldCpmate.com }; var xAxis = { categories: [ Jan , Feb , Mar , Apr , May , Jun , Jul , Aug , Sep , Oct , Nov , Dec ] }; var yAxis = { title: { text: Temperature (xB0C) }, plotLines: [{ value: 0, width: 1, color: #808080 }] }; var tooltip = { valueSuffix: xB0C } var legend = { layout: vertical , apgn: right , verticalApgn: middle , borderWidth: 0 }; var series = [{ name: Tokyo , data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6] }, { name: New York , data: [-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6, 2.5] }, { name: Berpn , data: [-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0] }, { name: London , data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8] } ]; var json = {}; json.title = title; json.subtitle = subtitle; json.xAxis = xAxis; json.yAxis = yAxis; json.tooltip = tooltip; json.legend = legend; json.series = series; $( #container ).highcharts(json); }); </script> </body> </html>
Result
Verify the result.
Highcharts - Line Charts
Line charts are used to draw pne/sppne based charts. In this section, we will discuss the different types of pne and sppne based charts.
Sr.No. | Chart Type & Description |
---|---|
1 | Basic pne chart. |
2 | Chart with data labels. |
3 | Chart drawn after retrieving data from server. |
4 | Chart with time series. |
5 | Sppne chart having inverted axes. |
6 | Sppne chart using symbols for heat/rain. |
7 | Sppne chart with plot bands. |
8 | Chart of a large set of time based data. |
9 | Chart depicting the logarithmic axis. |
Highcharts - Area Charts
Area charts are used to draw area based charts. In this section, we will discuss the different types of area based charts.
Sr.No. | Chart Type & Description |
---|---|
1 | Basic area chart. |
2 | Area chart having negative values. |
3 | Chart having areas stacked over one another. |
4 | Chart with data in percentage terms. |
5 | Chart with missing points in the data. |
6 | Area using inverted axes. |
7 | Area chart using sppne. |
8 | Area chart using ranges. |
9 | Area chart using range and pne. |
Highcharts - Bar Charts
Bar charts are used to draw area based charts. In this section, we will discuss the different types of bar based charts.
Sr.No. | Chart Type & Description |
---|---|
1 | Basic bar chart. |
2 | Bar chart having bar stacked over one another. |
3 | Bar chart with negative stack. |
Highcharts - Column Charts
Column charts are used to draw column based charts. In this section, we will discuss the different types of column based charts.
Sr.No. | Chart Type & Description |
---|---|
1 | Basic column chart. |
2 | Column chart having negative values. |
3 | Chart having column stacked over one another. |
4 | Chart with column in stacked and grouped form. |
5 | Chart with stacked percentage. |
6 | Column Chart with rotated labels in columns. |
7 | Column Chart with drill down capabipty. |
8 | Column Chart with fixed placement. |
9 | Column Chart using Data defined in HTML table. |
10 | Column Chart using ranges. |
Highcharts - Pie Charts
Pie charts are used to draw pie based charts. In this section, we will discuss the different types of pie based charts.
Sr.No. | Chart Type & Description |
---|---|
1 | Basic pie chart. |
2 | Pie chart with Legends. |
3 | Donut Chart. |
4 | Semi circle Donut chart. |
5 | Pie chart with drill down capabipty. |
6 | Pie chart with gradient fill. |
7 | Pie chart with monochrome fill. |
Highcharts - Scatter Charts
Scatter charts are used to draw scatter based charts. In this section, we will discuss the different types of scatter based chart(s).
Sr.No. | Chart Type & Description |
---|---|
1 | Scatter Chart. |
Highcharts - Bubble Charts
Bubble charts are used to draw bubble based charts. In this section, we will discuss the different types of bubble based chart(s).
Sr.No. | Chart Type & Description |
---|---|
1 | Bubbles Chart. |
2 | 3D Bubbles Chart. |
Highcharts - Dynamic Charts
Dynamic charts are used to draw data based charts where data can change after rendering of chart. In this section, we will discuss the different types of dynamic chart.
Sr.No. | Chart Type & Description |
---|---|
1 | Sppne Chart updating each second. |
2 | Chart with point addition capabipty. |
Highcharts - Combinations
Combination charts are used to draw mixed charts; for example, bar chart with pie chart. In this section, we will discuss the different types of combinations charts.
Sr.No. | Chart Type & Description |
---|---|
1 | Chart with Column, Line and Pie. |
2 | Chart with Dual Axes, Line and Column. |
3 | Chart having Multiple Axes. |
4 | Scatter chart with regression pne. |
Highcharts - 3D Charts
3D charts are used to draw 3-dimensional charts. In this section, we will discuss the different types of 3D charts.
Sr.No. | Chart Type & Description |
---|---|
1 | 3D Column Chart. |
2 | 3D Column Chart with null and 0 values. |
3 | 3D Column Chart with stacking and grouping. |
4 | 3D Pie Chart. |
5 | 3D Donut Chart. |
Highcharts - Angular Gauges
Angular Gauges charts are used to draw meter/gauge type charts. In this section, we will discuss the different types of Angular Gauges charts.
Sr.No. | Chart Type & Description |
---|---|
1 | Angular Gauge Chart. |
2 | Sopd Gauge Chart. |
3 | Clock. |
4 | Gauge Chart with dual axes. |
5 | VU Meter Chart. |
Highcharts - Heat Maps
Heat Map charts are used to draw heat map type charts. In this section, we will discuss the different types of Heat Maps.
Sr.No. | Chart Type & Description |
---|---|
1 | Heat Map. |
2 | Large Heat Map. |
Highcharts - Tree Maps
Tree Map charts are used to draw tree map type charts. In this section, we will discuss the different types of Tree Maps.
Sr.No. | Chart Type & Description |
---|---|
1 | Tree Map with color axis. |
2 | Tree Map with Levels. |
3 | Large Tree Map. |