Skip to main content

Pentaho+ documentation has moved!

The new product documentation portal is here. Check it out now at


Hitachi Vantara Lumada and Pentaho Documentation

Visualization API

pentaho. visual

The visual namespace contains the types that constitute the Pentaho Visualization API.


The Visualization API provides a unified way to visualize data across the Hitachi Vantara suite (e.g. Analyzer, PDI, CDF).

Essentially, it is a set of abstractions that enables safe, isolated operation between applications, visualizations and business logic.

A visualization is constituted by:

  • One Model, which identifies the visualization and defines it in terms of its data requirements, such as the visual degrees of freedom it has (e.g. X position, color and size) and any major options that affect its rendering.

  • One IView (at least), which implements the actual rendering using chosen technologies (e.g. HTML, SVG, D3), and handle user interaction, by dispatching actions on the associated model and, for example, showing tooltips. The standard data actions are Select and Execute.

The Visualization API is built on top of other Platform JavaScript APIs:

  • The Data API ensures seamless integration with data sources in the Pentaho platform, as well as with other client-side component frameworks.

  • The Type API provides to visualizations out-of-the-box features such as class inheritance, metadata support, configuration, validation and serialization.

  • The Core APIs provide to visualizations features such as localization, theming and service registration and consumption.

A set of stock visualizations is included, covering the most common chart types. Based on the CCC charting library, they're customizable and extensible to fit your organization's desired look and feel.

Source: doc-js/pentaho/visual/_namespace.jsdoc, line 17

Child Namespaces

Name Summary

The action namespace contains the standard action types used by visualizations.


The color namespace contains color-related classes and utilities.


The impl namespace contains implementation types of the pentaho.visual namespace.


The role namespace contains classes for describing visual roles — an important type of property of visualization models.


The scene namespace contains classes for describing visual scenes.


The visual.spec namespace contains specification interfaces and type definitions.


The pentaho/visual/util contains utilities for dealing with visualizations.


Name Summary

The AbstractModel class is the abstract base class of visualization models.


The type class of pentaho.visual.AbstractModel.


The base class of visual applications.


The base type class of visual application types.


The DefaultViewAnnotation marks the existence of a View module and makes it be the default view to use for the annotated model.


The Model class is the required, base class of visualization models.


The base class of visual model types.


Name Summary

The IView interface describes the contract of a visualization view.


Name Description
KeyTypes : string

The KeyTypes enum is the class of names of visual key types.

Members Details

KeyTypes: string

The KeyTypes enum is the class of names of visual key types.

The type of visual key determines how a visualization identifies the rendered visual elements.

Name Default Value Description
dataOrdinal : string dataOrdinal

In visualizations having this type of visual key, visual elements are identified by the ordinal of the corresponding data row, possibly with the add of the values of some of the fields (used, for example, for splitting data between multiple small charts).

Typically, a Flat Table or a Scatter chart has this type of visual key.

dataKey : string dataKey

In visualizations having this type of visual key, visual elements are identified by the values of the key columns of the corresponding data row.

Typically, a Bar chart or Line chart has this type of visual key.

When a visualization has this type of visual key, the key fields of the provided data must be exactly the fields mapped to key visual roles (isVisualKey).

Source: javascript/web/pentaho/visual/KeyTypes.js, line 30