ChartDesigner

Provides a settings panel to configure a Chart, with a live preview.

Chart designer
//<code-header>
fiddle.title = 'Chart designer';
//</code-header>
class QuarterlySales extends Model {
    static fields = [{
        name : 'quarter'
    }, {
        name : 'month',
        type : 'number'
    }, {
        name : 'sku1',
        type : 'number'
    }, {
        name : 'sku2',
        type : 'number'
    }];
}

const data = [
    { quarter : 'Q1', month : 1, sku1 : 3, sku2 : 5 },
    { quarter : 'Q2', month : 4, sku1 : 6, sku2 : 4 },
    { quarter : 'Q3', month : 7, sku1 : 4, sku2 : 7 },
    { quarter : 'Q4', month : 10, sku1 : 8, sku2 : 9 }
].map(data => new QuarterlySales(data));

new ChartDesigner({
    appendTo      : targetElement,
    width         : '100%',
    height        : '400px',
    chartTitle    : 'Sales',
    chartSubtitle : 'By SKU, All Regions',
    showSubtitle  : true,
    style         : 'font-size: 14px',
    data,
    series        : [
        {
            field : 'sku1',
            label : 'Product 1'
        },
        {
            field : 'sku2',
            label : 'Product 2'
        }
    ],
    labelsSeriesOptions : [{
        field : 'quarter',
        label : 'Quarter'
    }, {
        field : 'month',
        label : 'Month'
    }]
});

Requires one or more data series to be configured, as well as one or more data objects to provide data for the preview. See Chart for details on chart setup.

The designer is organized into three tabs:

  • Layout: Choose the major chart type (line, bar, etc.) and chart components (title, legend).
  • Data: Specify which data series will be used in the chart, and how.
  • Appearance: Customize the look and feel of various chart components, including colors, fonts, and spacing.

Configs

136

Common

Get/set the title.

chartType: line | lineWithPoints | bar | barHorizontal | pie | donut | scatter | bubble | radar= lineAlso a property

Get/set which predefined chart type is selected in the designer. Options include all types in chartType and additional pre-configured subtypes such as lineWithPoints and barHorizontal.

listenersEvents

Data

data: Model[] | Object[]= []Also a property

The sample data to use as data in the chart preview.

The available series (drawn from series) that can be chosen as the labels series.

The series ID (field name) of the series currently selected for use as the labels series.

The currently selected series IDs (field names) for inclusion in the chart. See series.

The available series that can be chosen as the data series for the chart.

Layout

minimal: Boolean= falseAlso a property

Whether to display in minimal mode, where chart preview occupies full area and settings panel is minimized.

alignSelfWidget
chartPaddingDesignableChartConfig
dockWidget
flexWidget
heightWidget
hiddenWidget
hideWhenEmptyContainer
layoutContainer
layoutStyleContainer
marginWidget
maxHeightWidget
maxWidthWidget
minHeightWidget
minWidthWidget
subtitlePaddingDesignableChartConfig
textAlignWidget
titlePaddingDesignableChartConfig
weightWidget
widthWidget

Styling

Set the font families available for selection.

backgroundDesignableChartConfig
gridColorDesignableChartConfig
subtitleFontDesignableChartConfig
titleFontDesignableChartConfig

Accessibility

ariaLabelWidget
keyMapKeyMap

Axis styling

axisColorDesignableChartConfig
axisLabelColorDesignableChartConfig
maxTickLabelRotationDesignableChartConfig
minTickLabelRotationDesignableChartConfig

Chart elements

showLegendDesignableChartConfig
showSubtitleDesignableChartConfig
showTitleDesignableChartConfig

Content

bbarPanel
defaultsContainer
footerPanel
headerPanel
itemsContainer
lazyItemsContainer
namedItemsContainer
stripsPanel
tbarPanel
textContentContainer
toolsPanel

CSS

bodyClsPanel
borderContainer
clsWidget
colorWidget
htmlClsWidget
itemClsContainer
styleWidget
uiPanel

DOM

adoptWidget
appendToWidget
contentWidget
datasetWidget
htmlWidget
idWidget
tagWidget

Float & align

alignWidget
anchorWidget
centeredWidget
draggableWidget
floatingWidget
xWidget
yWidget

misc

tabBarItemsContainer

Misc

dataFieldWidget
disabledWidget
iconPanel
localeClassLocalizable
localizableLocalizable
maskedWidget
ownerWidget
readOnlyWidget
refWidget
rippleWidget
tabWidget
titlePanel
tooltipWidget

Other

columnWidget
defaultFocusContainer
drawerPanel
labelPositionContainer
renditionContainer
rtlRTL
spanWidget

Record

recordContainer

Scrolling

Series styling

dataPointShapeDesignableChartConfig
seriesLineDashDesignableChartConfig
seriesLineOpacityDesignableChartConfig
seriesLineThicknessDesignableChartConfig

State

stateIdState

Properties

123

Common

Get/set the title.

chartType: line | lineWithPoints | bar | barHorizontal | pie | donut | scatter | bubble | radar= lineAlso a config

Get/set which predefined chart type is selected in the designer. Options include all types in chartType and additional pre-configured subtypes such as lineWithPoints and barHorizontal.

Class hierarchy

isChartDesigner: Boolean= truereadonly
Identifies an object as an instance of ChartDesigner class, or subclass thereof.
isChartDesigner: Boolean= truereadonlystatic
Identifies an object as an instance of ChartDesigner class, or subclass thereof.
isContainerContainer
isDelayableDelayable
isDesignableChartConfigDesignableChartConfig
isEventsEvents
isKeyMapKeyMap
isLocalizableLocalizable
isPanelPanel
isStateState
isToolableToolable
isWidgetWidget

Data

data: Model[] | Object[]= []Also a config

The sample data to use as data in the chart preview.

The available series (drawn from series) that can be chosen as the labels series.

The series ID (field name) of the series currently selected for use as the labels series.

The currently selected series IDs (field names) for inclusion in the chart. See series.

The available series that can be chosen as the data series for the chart.

Layout

minimal: Boolean= falseAlso a config

Whether to display in minimal mode, where chart preview occupies full area and settings panel is minimized.

alignSelfWidget
chartPaddingDesignableChartConfig
flexWidget
heightWidget
layoutContainer
layoutStyleContainer
marginWidget
maxHeightWidget
maxWidthWidget
minHeightWidget
minWidthWidget
subtitlePaddingDesignableChartConfig
titlePaddingDesignableChartConfig
widthWidget

Styling

Set the font families available for selection.

backgroundDesignableChartConfig
gridColorDesignableChartConfig
subtitleFontDesignableChartConfig
titleFontDesignableChartConfig

Accessibility

keyMapKeyMap

Axis styling

axisColorDesignableChartConfig
axisLabelColorDesignableChartConfig
maxTickLabelRotationDesignableChartConfig
minTickLabelRotationDesignableChartConfig

Chart elements

showLegendDesignableChartConfig
showSubtitleDesignableChartConfig
showTitleDesignableChartConfig

Content

bbarPanel
tbarPanel

CSS

clsWidget

DOM

appendToWidget
contentWidget
datasetWidget
elementWidget
htmlWidget
idWidget
styleWidget

Float & align

xWidget
yWidget

Lifecycle

configBase

Misc

cellInfoWidget
disabledWidget
localeHelperLocalizable
localeManagerLocalizable
readOnlyWidget
refWidget
tabWidget
titlePanel
tooltipWidget

Other

$namestaticWidget
columnWidget
firstItemContainer
hasChangesContainer
isValidContainer
itemsContainer
labelPositionContainer
lastItemContainer
renditionContainer
rtlRTL
spanWidget
toolsPanel
typestaticWidget
valuesContainer

Record

recordContainer

Series styling

dataPointShapeDesignableChartConfig
seriesLineDashDesignableChartConfig
seriesLineOpacityDesignableChartConfig
seriesLineThicknessDesignableChartConfig

State

stateState

Visibility

hiddenWidget
isVisibleWidget

Widget hierarchy

ownerWidget
parentWidget
widgetMapContainer

Functions

74

Configuration

applyDefaultsstaticBase

Events

Float & align

alignToWidget
setXYWidget
showByWidget
toFrontWidget

Lifecycle

createstaticWidget
destroystaticBase
initClassstaticWidget

Misc

attachTooltipstaticWidget
fromElementstaticWidget
fromSelectorstaticWidget
getByIdstaticWidget
isOfTypeNamestaticBase
mixinstaticBase
optionalLstaticLocalizable

Other

addContainer
composeWidget
createOnFrameDelayable
disableWidget
enableWidget
focusWidget
getAtContainer
getWidgetByIdContainer
insertContainer
LstaticLocalizable
maskWidget
onEvents
recomposeWidget
relayAllEvents
removeContainer
removeAllContainer
resetValuesContainer
setValuesContainer
triggerEvents
unEvents
unmaskWidget

State

Visibility

hideWidget
showWidget

Widget hierarchy

closestWidget
containsWidget
ownsWidget
queryWidget
queryAllWidget
upWidget

Events

21

Event handlers

21

Typedefs

7

CSS variables

52

Inherited