We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

Trusted by the world’s leading companies

Syncfusion Trusted Companies

Overview

The JavaScript Pivot Table is a powerful control used to organize and summarize business data and display the result in a cross-table format. It includes major functionalities: data binding, drilling up and down, Excel-like filtering and sorting, editing, Excel and PDF exporting, several built-in aggregations, field lists, and calculated fields. A high volume of data can be loaded without any performance degradation by using row and column virtualization.


Why choose Syncfusion JavaScript Pivot Table?

JavaScript Pivot Table High performance

High performance

Well thought-out and focused on fast-paced performance to load millions of records in just a second.

JavaScript Pivot Table data binding

Seamless data binding

Bind data seamlessly with various local and remote data sources such as JSON, OData, WCF, and RESTful web services with the help of a data manager.

JavaScript Pivot Table editing

Flexible editing

Users can perform actions on raw data at runtime, including create, read, update, and delete. Through an interactive user interface, the control provides several edit modes, including inline, dialog, batch, and column.

JavaScript Pivot Table chart integration

Integration with charts

You can easily integrate your Pivot Table with independently rendered pivot data. It has support for more than 20 chart types.

JavaScript Pivot Table formatting

Conditional formatting

Users can easily change a Pivot Table cell value’s appearance(background color, font color, font family, and font size) as required.

JavaScript Pivot Table adaptive layout

Adapts to any resolution

Pivot Table has a highly responsive layout and an optimized design for desktops, touchscreens, and smart phones. It works well on all mobile phones that use iOS, Android, or Windows OS.

JavaScript Pivot Table themes

Attractive, customizable themes

Cutting-edge design with several built-in themes, such as Fluent, Tailwind CSS, Bootstrap, Material, and Fabric. Utilize the online Theme Studio tool to customize themes easily.

JavaScript Pivot Table globalization

Globalization and localization

Enables users from different locales to use the component by formatting dates, currency, and numbering to suit preferences.


JavaScript Pivot Table code example

Easily get started with the JavaScript Pivot Table (pivot grid) using a few simple lines of HTML and TypeScript code, as demonstrated in the following. Also explore our JavaScript Pivot Table example that shows you how to render and configure the Pivot Table in JavaScript.

<html>

<head>
  <link href="https://cdn.syncfusion.com/ej2/material.css" rel="stylesheet">
</head>

<body>
  <div id="PivotView">
  </div>
</body>

</html>
import { PivotView, IDataSet } from '@syncfusion/ej2-pivotview';

let pivotObj: PivotView = new PivotView({
  dataSourceSettings: {
    columns: [{ name: 'Year' }, { name: 'Quarter' }],
    values: [
      { name: 'Sold', caption: 'Units Sold' },
      { name: 'Amount', caption: 'Sold Amount' }
    ],
    dataSource: getPivotData(),
    rows: [{ name: 'Country' }, { name: 'Products' }]
  },
  width: '100%',
  height: 290
});
pivotObj.appendTo('#PivotView');

function getPivotData() : IDataSet[] {
  let pivotData: IDataSet[] = [
    { Sold: 31, Amount: 52824, Country: 'France', Products: 'Mountain Bikes', Year: 'FY 2015', Quarter: 'Q1'},
    { Sold: 51, Amount: 86904, Country: 'France', Products: 'Mountain Bikes', Year: 'FY 2015', Quarter: 'Q2'},
    { Sold: 21, Amount: 33505.5, Country: 'Germany', Products: 'Touring Bikes', Year: 'FY 2015', Quarter: 'Q1'},
    { Sold: 74, Amount: 126096, Country: 'Germany', Products: 'Mountain Bikes', Year: 'FY 2015', Quarter: 'Q1'},
    { Sold: 77, Amount: 131208, Country: 'United Kingdom', Products: 'Mountain Bikes', Year: 'FY 2015', Quarter: 'Q1'},
    { Sold: 92, Amount: 156768, Country: 'United Kingdom', Products: 'Mountain Bikes', Year: 'FY 2015', Quarter: 'Q2'},
    { Sold: 43, Amount: 73272, Country: 'United States', Products: 'Mountain Bikes', Year: 'FY 2015', Quarter: 'Q1'},
    { Sold: 43, Amount: 73272, Country: 'United States', Products: 'Mountain Bikes', Year: 'FY 2015', Quarter: 'Q2'}
  ];

  return pivotData;
}

JS Pivot Table and Pivot Chart

Pivot Chart

The JavaScript Pivot Chart can easily be integrated with pivot data rendered independently and includes support for plotting more than 20 chart types. The end-user experience is greatly enhanced with a set of user-interaction features such as drill up, drill down, zoom, pan, crosshair, trackball, events, selection, and tooltip. Highly interactive field list options are available for generating reports from the relational data dynamically.


Virtual scrolling

Large amounts of data can be divided and displayed in the rows and columns of the current viewport using the virtual scrolling feature. You can navigate to a desired view by scrolling the vertical and horizontal scrollbars.

Virtual scrolling in JavaScript Pivot Table control


Paging in JavaScript Pivot Table control

Paging

Large amounts of data can be divided and displayed page by page with the paging feature. The pager UI allows you to navigate to a desired page using the navigation buttons or an input text box. You can change the row and column page sizes independently at runtime. Furthermore, you can toggle the position of the row and column pagers, modify their visibility, and visualize them using a compact view mode.


Pivot table field list and group fields

The JavaScript Pivot Table field list and group fields option are automatically populated with fields from the bound data source. They allow end users to drag, filter, and sort fields, as well as create pivot reports at runtime.

JavaScript Pivot Table control along with field list and grouping bar


JavaScript Pivot Table control renders with olap data source

OLAP data binding

The JavaScript Pivot Table can be connected to an OLAP cube, and its result can be visualized in both tabular and graphical formats.


Defer layout update

Users can refresh the control on demand instead of during every UI interaction in the Pivot Table.

JavaScript Pivot Table with defer layout update support


Drill up and drill down support in Pivot Table JS

Drill down and drill up

Provides built-in drill-down (expand) and drill-up (collapse) capabilities to visualize data in detailed views and abstract views, respectively. By default, the data is displayed in a grouped manner.


Editing and updating

Users can perform create, read, update, and delete operations for raw data at runtime and update their changes to the underlying data source, thereby reflecting the information in all corresponding cells. The Pivot Table control in JS supports various edit modes such as inline, dialog, batch edit, and column edit through an interactive UI.

JavaScript Pivot Table with editing and updating support


Filtering

Built-in member function and Excel-like filters with advanced filtering options can be used to easily filter and view data as required. It is also possible to filter data programmatically in the Pivot Table.

JavaScript Pivot Table normal filter

Header filtering

Display only selected values for a field. This can be achieved either through the UI or code-behind.

JavaScript Pivot Table label filtering

Label filtering

Use Excel-like filtering options across column and row headers based on label text, date, or number.

JavaScript Pivot Table value filtering

Value filtering

Use Excel-like filtering options across column and row headers based on grand total values.


Sorting

In JavaScript PDF Viewer, you can use sorting support to order rows and columns based on either labels or values.

Normal sorting in ascending and descending order using JavaScript Pivot Table

Header sorting

Order column and row header text either in ascending or descending order.

Column sorting in ascending and descending order using JS Pivot Table

Column sorting

Column sorting, also known as value sorting, orders the column values either in ascending or descending order. It is performed by clicking the header of the column you wish to sort.

Arrange field headers according to the user-defined order in Pivot Table control

Custom sorting

Arrange field headers in column and row axes according to the user-defined order.


Aggregation support in JavaScript Pivot Table control

Aggregation

Users can perform calculations on a group of values using the aggregation option. By default, values are added together. The other aggregation types are average, minimum, maximum, count, distinct count, product, index, population standard deviation, sample standard deviation, population variance, sample variance, running totals, difference from, percent of difference from, and percent of grand total.


Calculated fields

Calculated fields, otherwise known as unbound fields, generate unique fields with your own calculated values by executing a simple, user-defined formula.

Calculated field, user-defined field in JavaScript Pivot Table control


JavaScript Pivot Table with drill through

Drill through

The drill through feature easily obtains a list of raw items for a particular value cell or summary cell.


Totals

Subtotals and grand totals are calculated automatically by the pivot engine inside the control and displayed in the Pivot Table to help users make decisions more quickly. Also, users can show or hide subtotals and grand totals for rows and columns.

Totals in JavaScript Pivot Table control


Conditional formatting support in JavaScript Pivot Table control

Conditional formatting

Users can define conditions that, when met, format font style, text color, background color, and font size for values and summary cells.


Number and date formatting

Number and date formatting helps transform the appearance of the actual cell value.

Number and date formatting in JavaScript Pivot Table control


JavaScript Pivot Table grouping dates and numbers

Grouping date and number

The Pivot Table control automatically groups dates and numbers, so the date type can be formatted and displayed based on year, quarter, month, day, and more. The number type can be grouped by range, such as 1-5 or 6-10.


Frozen headers

You can freeze row and column headers to compare them with cell values.

Freezes row and column headers in JavaScript Pivot Table control


Columns and rows

Resizes columns in JavaScript Pivot Table control

Resize

Resizing allows changing column width at runtime by simply dragging the rightmost boundary of the column header. A scroll bar will appear when the content width exceeds the control width.

Reorders columns in JavaScript Pivot Table control

Reorder

You can reorder columns either on user interaction or programmatically. Simply dragging and dropping a column header into the desired column position will reorder the columns.

Hyperlink in Pivot Table JS control

Users can retrieve information about a particular cell on clicking a hyperlink cell. It later allows them to perform custom operations programmatically.

Cell selection in JavaScript Pivot Table control

Cell selection

Select a range of cells.

Tooltip in JavaScript Pivot Table control

Tooltip

A tooltip provides basic information about a cell while hovering over it with the pointer.

Cell template support in JavaScript Pivot Table control

Cell templates

With cell templates, users can add features like images, checkboxes, and text nodes to any cell with ease.


Toolbar option in JavaScript Pivot Table control

Toolbar

The toolbar feature provides a built-in interface to select frequently used features interactively. These features include new report, save report, save as report, rename report, delete report, report list, show grid, show chart, show or hide totals, export reports, and more.


Exporting

Export the JavaScript Pivot Table data to Excel, PDF, and CSV formats. You can also customize the exported document by adding header, footer, and cell properties like type, style, and position programmatically.

Exports report to Excel, PDF and CSV in JavaScript Pivot Table control


Optimized for mobile devices

Touch support for HTML5 Pivot Table control

Touch support

All features will work on touch devices with ease. Features such as drilling up, drilling down, filtering, sorting, and report manipulation can be done on the fly.

Responsive view of JavaScript Pivot Table control

Responsiveness

Responsive support allows the control to be viewed on various devices.


Accessibility

Keyboard navigation in JavaScript Pivot Table

Keyboard navigation

The JavaScript Pivot Table ensures that every cell is keyboard accessible. Major features like sorting, selection, and editing can be performed using keyboard commands alone; no mouse interaction required. This helps in creating highly accessible applications using this component.

Right to left, RTL support in JavaScript Pivot Table control

Right to left (RTL)

Supports right-to-left rendering and allows the text direction and layout of the control to be displayed from right to left.





Other supported frameworks

The Pivot Table component is also available in Blazor, Angular, React, and Vue frameworks. Check out the Pivot Table in different platforms from the links below.

Supported browser

JavaScript Pivot Table works well with all modern web browsers such as Chrome, Firefox, Microsoft Edge, Safari, and Opera.

JavaScript Pivot Table supports many browsers

85+ JAVASCRIPT UI CONTROLS

Frequently Asked Questions

The Syncfusion JavaScript Pivot Table supports the following features:

  • High performance pivot engine and virtualization that help load large volumes of data quickly.
  • Support for both relational and OLAP data sources. The relational data source can use input data via JSON, RESTful services, OData services, WCF services, and more.
  • A grid and chart can organize and summarize pivot data.
  • Pivot data can be easily filtered, sorted, aggregated, and grouped.
  • Detailed or abstract data can be viewed using drill down or up.
  • Experience seamless interaction and editing capabilities.
  • Simple configuration and API.
  • Support for all modern browsers.
  • Touch-friendly and responsive.
  • Expansive learning resources such as demos and documentation to get started quickly with JavaScript Pivot Table.

You can find our JavaScript Pivot Table demo, which demonstrates how to render and configure the Pivot Table.

No, this is a commercial product and requires a paid license. However, a free community license is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue, 5 or fewer developers, and 10 or fewer total employees.

A good place to start would be our comprehensive getting started documentation.

Our Customers Love Us

Having an excellent set of tools and a great support team, Syncfusion reduces customers’ development time.
Here are some of their experiences.

Rated by users across the globe

Transform your applications today by downloading our free evaluation version Download Free Trial

Awards

Greatness—it’s one thing to say you have it, but it means more when others recognize it. Syncfusion is proud to hold the following industry awards.

Up arrow icon
Live Chat Icon For mobile