Skip to main content

Highcharts API Overview

The Highcharts API provides a comprehensive set of classes, methods, and configuration options for creating interactive charts. This reference documentation is generated from the TypeScript source code.

Core API Classes

Highcharts exposes several key classes that form the foundation of the charting library:

Chart

The main Chart class is the entry point for creating charts. It manages the entire chart lifecycle, rendering, and interactions.
const chart = Highcharts.chart('container', {
  title: { text: 'My Chart' },
  series: [{ data: [1, 3, 2, 4] }]
});
View Chart API →

Series

Series objects represent data visualizations within a chart. Each series type (line, column, pie, etc.) extends the base Series class.
chart.addSeries({
  type: 'line',
  name: 'Sales',
  data: [29.9, 71.5, 106.4, 129.2]
});
View Series API →

Axis

Axis objects control the x-axis, y-axis, and other dimensional axes. They handle scaling, labeling, and positioning.
chart.xAxis[0].setExtremes(0, 100);
View Axis API →

Point

Point objects represent individual data points in a series. They provide methods for updating, selecting, and removing data.
point.update({ y: 150, color: 'red' });
View Point API →

Configuration Options

Highcharts uses a declarative configuration system with deep option objects:

Methods & Utilities

Highcharts provides utility functions and event handling:

Factory Pattern

Highcharts uses a factory pattern for instantiation:
// Using the factory function (recommended)
const chart = Highcharts.chart('container', options);

// Using the constructor
const chart = new Highcharts.Chart('container', options);

// With callback
Highcharts.chart('container', options, function(chart) {
  console.log('Chart loaded:', chart);
});

TypeScript Support

The API is written in TypeScript and provides full type definitions:
import * as Highcharts from 'highcharts';

const options: Highcharts.Options = {
  chart: { type: 'line' },
  series: [{ type: 'line', data: [1, 2, 3] }]
};

const chart: Highcharts.Chart = Highcharts.chart('container', options);

Global Namespace

All Highcharts functionality is exposed through the Highcharts global object:
Highcharts.chart()      // Create a chart
Highcharts.seriesTypes  // Registry of series types
Highcharts.charts       // Array of all chart instances
Highcharts.dateFormat() // Utility functions

Source Code Location

The core API is implemented in:
  • Chart: ts/Core/Chart/Chart.ts:285
  • Series: ts/Core/Series/Series.ts:255
  • Axis: ts/Core/Axis/Axis.ts:190
  • Point: ts/Core/Series/Point.ts:120

Next Steps

Chart Class

Explore Chart methods and properties

Series Class

Learn about data visualization

Configuration

Configure chart options

Events

Handle user interactions

Build docs developers (and LLMs) love