Getting started with EJ2 TypeScript 3D Circular Chart control
31 Jul 20267 minutes to read
This document explains how to create a simple 3D Circular Chart and configure its features in TypeScript using the Essential JS 2 webpack quickstart seed repository.
This application is integrated with the
webpack.config.jsconfiguration and uses the latest version of the webpack-cli. Ensure that Node.js is installed on your machine. For more information about webpack and its features, refer to the webpack getting-started guide.
Prerequisites
Before you begin, ensure you have the following installed on your machine:
- Node.js
- Visual Studio Code (or any text editor)
- Git for cloning the quickstart repository
- A modern web browser (Chrome, Edge, Firefox, or Safari) to view the result
Dependencies
The 3D Circular Chart control is included in the @syncfusion/ej2-charts package. Below is the list of core and optional dependencies used by the package.
|-- @syncfusion/ej2-charts
|-- @syncfusion/ej2-base
|-- @syncfusion/ej2-data
|-- @syncfusion/ej2-pdf-export
|-- @syncfusion/ej2-file-utils
|-- @syncfusion/ej2-compression
|-- @syncfusion/ej2-svg-base
Quick Setup
Step 1: Open Command Prompt
Open the command prompt and navigate to the directory where you want to create the project.
-
For Windows: Open Command Prompt (cmd) or PowerShell and use the
cdcommand to navigate to your desired directory. -
For macOS/Linux: Open Terminal and use the
cdcommand to navigate to your desired directory.
Step 2: Clone the Quickstart Repository
Run the following command to clone the Syncfusion JavaScript (Essential JS 2) quickstart project from GitHub.
git clone https://github.com/SyncfusionExamples/ej2-quickstart-webpack ej2-quickstartStep 3: Navigate to Project Folder
After cloning the application in the ej2-quickstart folder, run the following command to navigate to the project directory.
cd ej2-quickstartStep 4: Install Required Packages
Syncfusion JavaScript (Essential JS 2) packages are available on the npmjs.com public registry. You can install all Syncfusion JavaScript (Essential JS 2) controls in a single @syncfusion/ej2 package or individual packages for each control.
The quickstart application is already preconfigured with the dependent @syncfusion/ej2 package in the ~/package.json file. Use the following command to install all the dependent npm packages from the command prompt:
npm installThis command will download and install all necessary dependencies for your project.
Step 5: Update the HTML Template
Open the ej2-quickstart folder in Visual Studio Code or any text editor of your choice.
Locate the ~/src/index.html file in the project. Preserve any existing <link> and <script> tags that were generated by the seed, and add the HTML div tag with its id attribute as element inside <body> to initialize the 3D Circular Chart container.
<!DOCTYPE html>
<html lang="en">
<head>
<title>Essential JS 2 3D Circular Chart</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="TypeScript UI Controls" />
<meta name="author" content="Syncfusion" />
<!-- existing head content from the seed template remains here -->
</head>
<body>
<h1>Syncfusion 3D Circular Chart</h1>
<!--container which is going to render the 3D Circular Chart-->
<div id='element'>
</div>
</body>
</html>Step 6: Create the 3D Circular Chart Component with Data
Locate the src/app/app.ts file in your project and add the 3D Circular Chart component with module injection and sample data.
Module Injection: The 3D Circular Chart component requires specific feature modules to be injected. For rendering a pie series, inject the PieSeries3D module.
Populate 3D Circular Chart with Data: Assign a dataSource array (each item has an x and a y) to the series array and map the field names to the series’ xName and yName properties. Set the chart’s title and an optional tilt (in degrees) to rotate the 3D view. Change series[].type to 'Doughnut' to render a doughnut instead.
import { CircularChart3D, PieSeries3D } from '@syncfusion/ej2-charts';
CircularChart3D.Inject(PieSeries3D);
let circularchart: CircularChart3D = new CircularChart3D({
series: [
{
dataSource: [
{ x: 'Chrome', y: 62.92 },
{ x: 'Internet Explorer', y: 6.12 },
{ x: 'Opera', y: 3.15 },
{ x: 'Edge', y: 5.5 },
{ x: 'Safari', y: 19.97 },
{ x: 'Others', y: 2.34 }
],
xName: 'x',
yName: 'y'
}
],
tilt: -45,
title: 'Browser Market Shares in November 2023'
}, '#element');Step 7: Run the Application
Open the integrated terminal in Visual Studio Code or use your command prompt to run the application. Use the npm run start command:
npm run startThe application will compile and automatically start in your default web browser. The application typically runs at http://localhost:4000. You should see the Syncfusion® 3D Circular Chart control displayed on the page. To stop the dev server, press Ctrl+C in the terminal. For a production build, use npm run build.
Output
The 3D Circular Chart shows browser market-share data rendered as a 3D pie with six slices (Chrome, Internet Explorer, Opera, Edge, Safari, Others) tilted by -45°. The chart is initially positioned slightly above the canvas.
Troubleshooting
-
Blank page, no 3D Circular Chart — The npm package failed to load. Verify the network tab and that
npm installfinished successfully. -
Cannot find module '@syncfusion/ej2-charts'— Dependencies were not installed. Re-runnpm install. -
CircularChart3D is undefined—CircularChart3D.Inject(...)was not called before thenew CircularChart3D(...)call. Add theInjectline at the top ofapp.ts. -
Chart renders without data — Mismatched
xName/yNameand data-source fields. Ensure the field names match the keys in your dataset. -
TypeScript compile errors after
npm install— Runnpm run buildto view the complete error details. Common causes include missing dependencies, incorrect import statements, or mismatched Syncfusion package versions.