@deephaven/chart 0.63.1-beta.1 → 0.63.1-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import type { Axis, AxisFormatType, AxisPosition, AxisType, Chart, dh as DhType, Figure, Series, SeriesDataSource } from '@deephaven/jsapi-types';
1
+ import type { Axis, AxisFormatType, AxisPosition, AxisType, Chart, dh as DhType, Figure, Series, SeriesDataSource, SeriesPlotStyle } from '@deephaven/jsapi-types';
2
2
  declare class ChartTestUtils {
3
3
  static DEFAULT_FIGURE_TITLE: string;
4
4
  static DEFAULT_CHART_TITLE: string;
@@ -21,11 +21,11 @@ declare class ChartTestUtils {
21
21
  }): SeriesDataSource;
22
22
  makeDefaultSources(): SeriesDataSource[];
23
23
  makeSeries({ name, plotStyle, sources, lineColor, shapeColor, }?: {
24
- name?: string | undefined;
25
- plotStyle?: null | undefined;
26
- sources?: SeriesDataSource[] | undefined;
27
- lineColor?: null | undefined;
28
- shapeColor?: null | undefined;
24
+ name?: string | null;
25
+ lineColor?: string | null;
26
+ plotStyle?: SeriesPlotStyle | null;
27
+ shapeColor?: string | null;
28
+ sources?: SeriesDataSource[];
29
29
  }): Series;
30
30
  makeChart({ title, series, axes, showLegend, rowspan, colspan, row, column, }?: {
31
31
  title?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ChartTestUtils.d.ts","sourceRoot":"","sources":["../src/ChartTestUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,KAAK,EACL,EAAE,IAAI,MAAM,EACZ,MAAM,EACN,MAAM,EACN,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAEhC,cAAM,cAAc;IAClB,MAAM,CAAC,oBAAoB,SAAkB;IAE7C,MAAM,CAAC,mBAAmB,SAAiB;IAE3C,MAAM,CAAC,eAAe,SAAY;IAElC,MAAM,CAAC,eAAe,SAAY;IAElC,MAAM,CAAC,mBAAmB,SAAc;IAExC,OAAO,CAAC,EAAE,CAAS;gBAEP,EAAE,EAAE,MAAM;IAItB,QAAQ,CAAC,EACP,KAAc,EACd,IAAgB,EAChB,QAAoB,EACpB,UAAsB,EACtB,aAA6B,EAC7B,GAAW,GACZ,GAAE;QACD,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,QAAQ,CAAC;QAChB,QAAQ,CAAC,EAAE,YAAY,CAAC;QACxB,UAAU,CAAC,EAAE,cAAc,CAAC;QAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,GAAG,CAAC,EAAE,OAAO,CAAC;KACV,GAAG,IAAI;IAab,eAAe,IAAI,IAAI,EAAE;IAczB,UAAU,CAAC,EAAE,IAAsB,EAAE,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,gBAAgB;IAKxE,kBAAkB,IAAI,gBAAgB,EAAE;IAKxC,UAAU,CAAC,EACT,IAAyC,EACzC,SAAgB,EAChB,OAAmC,EACnC,SAAgB,EAChB,UAAiB,GAClB;;;;;;KAAK,GAAG,MAAM;IAYf,SAAS,CAAC,EACR,KAA0C,EAC1C,MAA4B,EAC5B,IAA6B,EAC7B,UAAiB,EACjB,OAAW,EACX,OAAW,EACX,GAAO,EACP,MAAU,GACX,GAAE;QACD,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;QACd,UAAU,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;KACZ,GAAG,KAAK;IAcd,UAAU,CAAC,EACT,KAA2C,EAC3C,MAA2B,EAC3B,IAAQ,EACR,IAAQ,EACR,MAAW,GACZ;;;;;;KAAK,GAAG,MAAM;CAUhB;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"ChartTestUtils.d.ts","sourceRoot":"","sources":["../src/ChartTestUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,KAAK,EACL,EAAE,IAAI,MAAM,EACZ,MAAM,EACN,MAAM,EACN,gBAAgB,EAChB,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAEhC,cAAM,cAAc;IAClB,MAAM,CAAC,oBAAoB,SAAkB;IAE7C,MAAM,CAAC,mBAAmB,SAAiB;IAE3C,MAAM,CAAC,eAAe,SAAY;IAElC,MAAM,CAAC,eAAe,SAAY;IAElC,MAAM,CAAC,mBAAmB,SAAc;IAExC,OAAO,CAAC,EAAE,CAAS;gBAEP,EAAE,EAAE,MAAM;IAItB,QAAQ,CAAC,EACP,KAAc,EACd,IAAgB,EAChB,QAAoB,EACpB,UAAsB,EACtB,aAA6B,EAC7B,GAAW,GACZ,GAAE;QACD,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,QAAQ,CAAC;QAChB,QAAQ,CAAC,EAAE,YAAY,CAAC;QACxB,UAAU,CAAC,EAAE,cAAc,CAAC;QAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,GAAG,CAAC,EAAE,OAAO,CAAC;KACV,GAAG,IAAI;IAab,eAAe,IAAI,IAAI,EAAE;IAczB,UAAU,CAAC,EAAE,IAAsB,EAAE,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,gBAAgB;IAKxE,kBAAkB,IAAI,gBAAgB,EAAE;IAKxC,UAAU,CAAC,EACT,IAAyC,EACzC,SAAgB,EAChB,OAAmC,EACnC,SAAgB,EAChB,UAAiB,GAClB,GAAE;QACD,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,SAAS,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;QACnC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAC;KACzB,GAAG,MAAM;IAYf,SAAS,CAAC,EACR,KAA0C,EAC1C,MAA4B,EAC5B,IAA6B,EAC7B,UAAiB,EACjB,OAAW,EACX,OAAW,EACX,GAAO,EACP,MAAU,GACX,GAAE;QACD,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;QACd,UAAU,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;KACZ,GAAG,KAAK;IAcd,UAAU,CAAC,EACT,KAA2C,EAC3C,MAA2B,EAC3B,IAAQ,EACR,IAAQ,EACR,MAAW,GACZ;;;;;;KAAK,GAAG,MAAM;CAUhB;AAED,eAAe,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChartTestUtils.js","names":["ChartTestUtils","constructor","dh","_defineProperty","makeAxis","label","type","undefined","position","formatType","formatPattern","log","arguments","length","Axis","plot","AxisType","X","AxisPosition","BOTTOM","FORMAT_TYPE_NUMBER","makeDefaultAxes","DEFAULT_X_TITLE","DEFAULT_Y_TITLE","Y","makeSource","_ref","axis","SeriesDataSource","makeDefaultSources","axes","map","makeSeries","name","DEFAULT_SERIES_NAME","plotStyle","sources","lineColor","shapeColor","Series","SeriesPlotStyle","SCATTER","makeChart","title","DEFAULT_CHART_TITLE","series","showLegend","rowspan","colspan","row","column","Chart","makeFigure","DEFAULT_FIGURE_TITLE","charts","rows","cols","errors","Figure"],"sources":["../src/ChartTestUtils.ts"],"sourcesContent":["import type {\n Axis,\n AxisFormatType,\n AxisPosition,\n AxisType,\n Chart,\n dh as DhType,\n Figure,\n Series,\n SeriesDataSource,\n} from '@deephaven/jsapi-types';\n\nclass ChartTestUtils {\n static DEFAULT_FIGURE_TITLE = 'Figure Title';\n\n static DEFAULT_CHART_TITLE = 'Chart Title';\n\n static DEFAULT_X_TITLE = 'X Axis';\n\n static DEFAULT_Y_TITLE = 'Y Axis';\n\n static DEFAULT_SERIES_NAME = 'MySeries';\n\n private dh: DhType;\n\n constructor(dh: DhType) {\n this.dh = dh;\n }\n\n makeAxis({\n label = 'Axis',\n type = undefined,\n position = undefined,\n formatType = undefined,\n formatPattern = '###,###0.00',\n log = false,\n }: {\n label?: string;\n type?: AxisType;\n position?: AxisPosition;\n formatType?: AxisFormatType;\n formatPattern?: string;\n log?: boolean;\n } = {}): Axis {\n const { dh } = this;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (dh as any).Axis({\n label,\n type: type ?? dh.plot.AxisType.X,\n position: position ?? dh.plot.AxisPosition.BOTTOM,\n formatType: formatType ?? dh.Axis.FORMAT_TYPE_NUMBER,\n formatPattern,\n log,\n });\n }\n\n makeDefaultAxes(): Axis[] {\n const { dh } = this;\n return [\n this.makeAxis({\n label: ChartTestUtils.DEFAULT_X_TITLE,\n type: dh.plot.AxisType.X,\n }),\n this.makeAxis({\n label: ChartTestUtils.DEFAULT_Y_TITLE,\n type: dh.plot.AxisType.Y,\n }),\n ];\n }\n\n makeSource({ axis = this.makeAxis() }: { axis: Axis }): SeriesDataSource {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).SeriesDataSource({ axis, type: axis.type });\n }\n\n makeDefaultSources(): SeriesDataSource[] {\n const axes = this.makeDefaultAxes();\n return axes.map(axis => this.makeSource({ axis }));\n }\n\n makeSeries({\n name = ChartTestUtils.DEFAULT_SERIES_NAME,\n plotStyle = null,\n sources = this.makeDefaultSources(),\n lineColor = null,\n shapeColor = null,\n } = {}): Series {\n const { dh } = this;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (dh as any).Series(\n name,\n plotStyle ?? dh.plot.SeriesPlotStyle.SCATTER,\n sources,\n lineColor,\n shapeColor\n );\n }\n\n makeChart({\n title = ChartTestUtils.DEFAULT_CHART_TITLE,\n series = [this.makeSeries()],\n axes = this.makeDefaultAxes(),\n showLegend = null,\n rowspan = 1,\n colspan = 1,\n row = 0,\n column = 0,\n }: {\n title?: string;\n series?: Series[];\n axes?: Axis[];\n showLegend?: boolean | null;\n rowspan?: number;\n colspan?: number;\n row?: number;\n column?: number;\n } = {}): Chart {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).Chart({\n title,\n series,\n axes,\n showLegend,\n row,\n column,\n rowspan,\n colspan,\n });\n }\n\n makeFigure({\n title = ChartTestUtils.DEFAULT_FIGURE_TITLE,\n charts = [this.makeChart()],\n rows = 1,\n cols = 1,\n errors = [],\n } = {}): Figure {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).plot.Figure({\n title,\n charts,\n rows,\n cols,\n errors,\n });\n }\n}\n\nexport default ChartTestUtils;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ChartTestUtils.js","names":["ChartTestUtils","constructor","dh","_defineProperty","makeAxis","label","type","undefined","position","formatType","formatPattern","log","arguments","length","Axis","plot","AxisType","X","AxisPosition","BOTTOM","FORMAT_TYPE_NUMBER","makeDefaultAxes","DEFAULT_X_TITLE","DEFAULT_Y_TITLE","Y","makeSource","_ref","axis","SeriesDataSource","makeDefaultSources","axes","map","makeSeries","name","DEFAULT_SERIES_NAME","plotStyle","sources","lineColor","shapeColor","Series","SeriesPlotStyle","SCATTER","makeChart","title","DEFAULT_CHART_TITLE","series","showLegend","rowspan","colspan","row","column","Chart","makeFigure","DEFAULT_FIGURE_TITLE","charts","rows","cols","errors","Figure"],"sources":["../src/ChartTestUtils.ts"],"sourcesContent":["import type {\n Axis,\n AxisFormatType,\n AxisPosition,\n AxisType,\n Chart,\n dh as DhType,\n Figure,\n Series,\n SeriesDataSource,\n SeriesPlotStyle,\n} from '@deephaven/jsapi-types';\n\nclass ChartTestUtils {\n static DEFAULT_FIGURE_TITLE = 'Figure Title';\n\n static DEFAULT_CHART_TITLE = 'Chart Title';\n\n static DEFAULT_X_TITLE = 'X Axis';\n\n static DEFAULT_Y_TITLE = 'Y Axis';\n\n static DEFAULT_SERIES_NAME = 'MySeries';\n\n private dh: DhType;\n\n constructor(dh: DhType) {\n this.dh = dh;\n }\n\n makeAxis({\n label = 'Axis',\n type = undefined,\n position = undefined,\n formatType = undefined,\n formatPattern = '###,###0.00',\n log = false,\n }: {\n label?: string;\n type?: AxisType;\n position?: AxisPosition;\n formatType?: AxisFormatType;\n formatPattern?: string;\n log?: boolean;\n } = {}): Axis {\n const { dh } = this;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (dh as any).Axis({\n label,\n type: type ?? dh.plot.AxisType.X,\n position: position ?? dh.plot.AxisPosition.BOTTOM,\n formatType: formatType ?? dh.Axis.FORMAT_TYPE_NUMBER,\n formatPattern,\n log,\n });\n }\n\n makeDefaultAxes(): Axis[] {\n const { dh } = this;\n return [\n this.makeAxis({\n label: ChartTestUtils.DEFAULT_X_TITLE,\n type: dh.plot.AxisType.X,\n }),\n this.makeAxis({\n label: ChartTestUtils.DEFAULT_Y_TITLE,\n type: dh.plot.AxisType.Y,\n }),\n ];\n }\n\n makeSource({ axis = this.makeAxis() }: { axis: Axis }): SeriesDataSource {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).SeriesDataSource({ axis, type: axis.type });\n }\n\n makeDefaultSources(): SeriesDataSource[] {\n const axes = this.makeDefaultAxes();\n return axes.map(axis => this.makeSource({ axis }));\n }\n\n makeSeries({\n name = ChartTestUtils.DEFAULT_SERIES_NAME,\n plotStyle = null,\n sources = this.makeDefaultSources(),\n lineColor = null,\n shapeColor = null,\n }: {\n name?: string | null;\n lineColor?: string | null;\n plotStyle?: SeriesPlotStyle | null;\n shapeColor?: string | null;\n sources?: SeriesDataSource[];\n } = {}): Series {\n const { dh } = this;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (dh as any).Series(\n name,\n plotStyle ?? dh.plot.SeriesPlotStyle.SCATTER,\n sources,\n lineColor,\n shapeColor\n );\n }\n\n makeChart({\n title = ChartTestUtils.DEFAULT_CHART_TITLE,\n series = [this.makeSeries()],\n axes = this.makeDefaultAxes(),\n showLegend = null,\n rowspan = 1,\n colspan = 1,\n row = 0,\n column = 0,\n }: {\n title?: string;\n series?: Series[];\n axes?: Axis[];\n showLegend?: boolean | null;\n rowspan?: number;\n colspan?: number;\n row?: number;\n column?: number;\n } = {}): Chart {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).Chart({\n title,\n series,\n axes,\n showLegend,\n row,\n column,\n rowspan,\n colspan,\n });\n }\n\n makeFigure({\n title = ChartTestUtils.DEFAULT_FIGURE_TITLE,\n charts = [this.makeChart()],\n rows = 1,\n cols = 1,\n errors = [],\n } = {}): Figure {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).plot.Figure({\n title,\n charts,\n rows,\n cols,\n errors,\n });\n }\n}\n\nexport default ChartTestUtils;\n"],"mappings":";;;AAaA,MAAMA,cAAc,CAAC;EAanBC,WAAWA,CAACC,EAAU,EAAE;IAAAC,eAAA;IACtB,IAAI,CAACD,EAAE,GAAGA,EAAE;EACd;EAEAE,QAAQA,CAAA,EAcM;IAAA,IAdL;MACPC,KAAK,GAAG,MAAM;MACdC,IAAI,GAAGC,SAAS;MAChBC,QAAQ,GAAGD,SAAS;MACpBE,UAAU,GAAGF,SAAS;MACtBG,aAAa,GAAG,aAAa;MAC7BC,GAAG,GAAG;IAQR,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAL,SAAA,GAAAK,SAAA,MAAG,CAAC,CAAC;IACJ,IAAM;MAAEV;IAAG,CAAC,GAAG,IAAI;IACnB;IACA,OAAO,IAAKA,EAAE,CAASY,IAAI,CAAC;MAC1BT,KAAK;MACLC,IAAI,EAAEA,IAAI,aAAJA,IAAI,cAAJA,IAAI,GAAIJ,EAAE,CAACa,IAAI,CAACC,QAAQ,CAACC,CAAC;MAChCT,QAAQ,EAAEA,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAIN,EAAE,CAACa,IAAI,CAACG,YAAY,CAACC,MAAM;MACjDV,UAAU,EAAEA,UAAU,aAAVA,UAAU,cAAVA,UAAU,GAAIP,EAAE,CAACY,IAAI,CAACM,kBAAkB;MACpDV,aAAa;MACbC;IACF,CAAC,CAAC;EACJ;EAEAU,eAAeA,CAAA,EAAW;IACxB,IAAM;MAAEnB;IAAG,CAAC,GAAG,IAAI;IACnB,OAAO,CACL,IAAI,CAACE,QAAQ,CAAC;MACZC,KAAK,EAAEL,cAAc,CAACsB,eAAe;MACrChB,IAAI,EAAEJ,EAAE,CAACa,IAAI,CAACC,QAAQ,CAACC;IACzB,CAAC,CAAC,EACF,IAAI,CAACb,QAAQ,CAAC;MACZC,KAAK,EAAEL,cAAc,CAACuB,eAAe;MACrCjB,IAAI,EAAEJ,EAAE,CAACa,IAAI,CAACC,QAAQ,CAACQ;IACzB,CAAC,CAAC,CACH;EACH;EAEAC,UAAUA,CAAAC,IAAA,EAA+D;IAAA,IAA9D;MAAEC,IAAI,GAAG,IAAI,CAACvB,QAAQ,CAAC;IAAkB,CAAC,GAAAsB,IAAA;IACnD;IACA,OAAO,IAAK,IAAI,CAACxB,EAAE,CAAS0B,gBAAgB,CAAC;MAAED,IAAI;MAAErB,IAAI,EAAEqB,IAAI,CAACrB;IAAK,CAAC,CAAC;EACzE;EAEAuB,kBAAkBA,CAAA,EAAuB;IACvC,IAAMC,IAAI,GAAG,IAAI,CAACT,eAAe,CAAC,CAAC;IACnC,OAAOS,IAAI,CAACC,GAAG,CAACJ,IAAI,IAAI,IAAI,CAACF,UAAU,CAAC;MAAEE;IAAK,CAAC,CAAC,CAAC;EACpD;EAEAK,UAAUA,CAAA,EAYM;IAAA,IAZL;MACTC,IAAI,GAAGjC,cAAc,CAACkC,mBAAmB;MACzCC,SAAS,GAAG,IAAI;MAChBC,OAAO,GAAG,IAAI,CAACP,kBAAkB,CAAC,CAAC;MACnCQ,SAAS,GAAG,IAAI;MAChBC,UAAU,GAAG;IAOf,CAAC,GAAA1B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAL,SAAA,GAAAK,SAAA,MAAG,CAAC,CAAC;IACJ,IAAM;MAAEV;IAAG,CAAC,GAAG,IAAI;IACnB;IACA,OAAO,IAAKA,EAAE,CAASqC,MAAM,CAC3BN,IAAI,EACJE,SAAS,aAATA,SAAS,cAATA,SAAS,GAAIjC,EAAE,CAACa,IAAI,CAACyB,eAAe,CAACC,OAAO,EAC5CL,OAAO,EACPC,SAAS,EACTC,UACF,CAAC;EACH;EAEAI,SAASA,CAAA,EAkBM;IAAA,IAlBL;MACRC,KAAK,GAAG3C,cAAc,CAAC4C,mBAAmB;MAC1CC,MAAM,GAAG,CAAC,IAAI,CAACb,UAAU,CAAC,CAAC,CAAC;MAC5BF,IAAI,GAAG,IAAI,CAACT,eAAe,CAAC,CAAC;MAC7ByB,UAAU,GAAG,IAAI;MACjBC,OAAO,GAAG,CAAC;MACXC,OAAO,GAAG,CAAC;MACXC,GAAG,GAAG,CAAC;MACPC,MAAM,GAAG;IAUX,CAAC,GAAAtC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAL,SAAA,GAAAK,SAAA,MAAG,CAAC,CAAC;IACJ;IACA,OAAO,IAAK,IAAI,CAACV,EAAE,CAASiD,KAAK,CAAC;MAChCR,KAAK;MACLE,MAAM;MACNf,IAAI;MACJgB,UAAU;MACVG,GAAG;MACHC,MAAM;MACNH,OAAO;MACPC;IACF,CAAC,CAAC;EACJ;EAEAI,UAAUA,CAAA,EAMM;IAAA,IANL;MACTT,KAAK,GAAG3C,cAAc,CAACqD,oBAAoB;MAC3CC,MAAM,GAAG,CAAC,IAAI,CAACZ,SAAS,CAAC,CAAC,CAAC;MAC3Ba,IAAI,GAAG,CAAC;MACRC,IAAI,GAAG,CAAC;MACRC,MAAM,GAAG;IACX,CAAC,GAAA7C,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAL,SAAA,GAAAK,SAAA,MAAG,CAAC,CAAC;IACJ;IACA,OAAO,IAAK,IAAI,CAACV,EAAE,CAASa,IAAI,CAAC2C,MAAM,CAAC;MACtCf,KAAK;MACLW,MAAM;MACNC,IAAI;MACJC,IAAI;MACJC;IACF,CAAC,CAAC;EACJ;AACF;AAACtD,eAAA,CA5IKH,cAAc,0BACY,cAAc;AAAAG,eAAA,CADxCH,cAAc,yBAGW,aAAa;AAAAG,eAAA,CAHtCH,cAAc,qBAKO,QAAQ;AAAAG,eAAA,CAL7BH,cAAc,qBAOO,QAAQ;AAAAG,eAAA,CAP7BH,cAAc,yBASW,UAAU;AAqIzC,eAAeA,cAAc"}
@@ -1,6 +1,6 @@
1
1
  import { Formatter } from '@deephaven/jsapi-utils';
2
2
  import type { Axis, AxisPosition, AxisType, Chart, dh as DhType, Figure, Holiday, Series, SeriesDataSource, SeriesPlotStyle, SourceType, TableTemplate, TimeZone } from '@deephaven/jsapi-types';
3
- import type { Layout, PlotData, PlotType, Axis as PlotlyAxis, ErrorBar, LayoutAxis, MarkerSymbol } from 'plotly.js';
3
+ import type { Layout, PlotData, PlotType, Axis as PlotlyAxis, ErrorBar, LayoutAxis, MarkerSymbol, Template } from 'plotly.js';
4
4
  import { Range } from '@deephaven/utils';
5
5
  import { ChartTheme } from './ChartTheme';
6
6
  export type FilterColumnMap = Map<string, {
@@ -83,11 +83,10 @@ declare class ChartUtils {
83
83
  * @param x The main data array
84
84
  * @param xLow The absolute low values
85
85
  * @param xHigh
86
- * @param theme Theme properties for the chart
87
86
  *
88
87
  * @returns The error_x object required by plotly, or null if none is required
89
88
  */
90
- static getPlotlyErrorBars(x: number[], xLow: number[], xHigh: number[], theme: ChartTheme): ErrorBar;
89
+ static getPlotlyErrorBars(x: number[], xLow: number[], xHigh: number[]): ErrorBar;
91
90
  static convertNumberPrefix(prefix: string): string;
92
91
  static getPlotlyNumberFormat(formatter: Formatter | null, columnType: string, formatPattern: string): Partial<LayoutAxis> | null;
93
92
  /**
@@ -169,12 +168,13 @@ declare class ChartUtils {
169
168
  */
170
169
  static groupArray<T, P extends keyof T>(array: T[], property: P): Map<T[P], T[]>;
171
170
  /**
172
- * Parses the colorway property of a theme and returns an array of colors
173
- * Theme could have a single string with space separated colors or an array of strings representing the colorway
174
- * @param theme The theme to get colorway from
175
- * @returns Colorway array for the theme
171
+ * Parses the colorway value of a theme and returns an array of colors
172
+ * Value could be a single string with space separated colors or already be an
173
+ * array of strings representing the colorway
174
+ * @param colorway The colorway value to normalize
175
+ * @returns Colorway array for the theme or undefined
176
176
  */
177
- static getColorwayFromTheme(theme: ChartTheme): string[];
177
+ static normalizeColorway(colorway?: string | string[]): string[] | undefined;
178
178
  static titleFromSettings(settings: ChartModelSettings): string;
179
179
  private dh;
180
180
  private daysOfWeek;
@@ -212,12 +212,11 @@ declare class ChartUtils {
212
212
  * @param series The series to create the series data with
213
213
  * @param axisTypeMap The map of axes grouped by type
214
214
  * @param seriesVisibility Visibility setting for the series
215
- * @param theme The theme properties for the plot. See ChartTheme.js for an example
216
215
  * @returns The series data (trace) object for use with plotly.
217
216
  */
218
- makeSeriesDataFromSeries(series: Series, axisTypeMap: AxisTypeMap, seriesVisibility: boolean | 'legendonly', theme: ChartTheme, showLegend?: boolean | null): Partial<PlotData>;
217
+ makeSeriesDataFromSeries(series: Series, axisTypeMap: AxisTypeMap, seriesVisibility: boolean | 'legendonly', showLegend?: boolean | null): Partial<PlotData>;
219
218
  addSourcesToSeriesData(seriesDataParam: Partial<PlotData>, plotStyle: SeriesPlotStyle, sources: SeriesDataSource[], axisTypeMap: AxisTypeMap): void;
220
- addStylingToSeriesData(seriesDataParam: Partial<PlotData>, plotStyle: SeriesPlotStyle, theme: ChartTheme, lineColor?: string | null, shapeColor?: string | null, shape?: string | null, shapeSize?: number | null, seriesVisibility?: 'legendonly' | boolean | null): void;
219
+ addStylingToSeriesData(seriesDataParam: Partial<PlotData>, plotStyle: SeriesPlotStyle, lineColor?: string | null, shapeColor?: string | null, shape?: string | null, shapeSize?: number | null, seriesVisibility?: 'legendonly' | boolean | null): void;
221
220
  getChartType(plotStyle: SeriesPlotStyle, isBusinessTime: boolean): PlotType | undefined;
222
221
  /**
223
222
  * Return the plotly axis property name
@@ -233,12 +232,11 @@ declare class ChartUtils {
233
232
  * Update the layout with all the axes information for the provided figure
234
233
  * @param figure Figure to update the axes for
235
234
  * @param layoutParam Layout object to update in place
236
- * @param theme Theme used for displaying the plot
237
235
  * @param chartAxisRangeParser Function to retrieve the axis range parser
238
236
  * @param plotWidth Width of the plot in pixels
239
237
  * @param plotHeight Height of the plot in pixels
240
238
  */
241
- updateFigureAxes(layoutParam: Partial<Layout>, figure: Figure, theme: ChartTheme, chartAxisRangeParser?: ChartAxisRangeParser, plotWidth?: number, plotHeight?: number): void;
239
+ updateFigureAxes(layoutParam: Partial<Layout>, figure: Figure, chartAxisRangeParser?: ChartAxisRangeParser, plotWidth?: number, plotHeight?: number): void;
242
240
  getChartBounds(figure: Figure, chart: Chart, plotWidth: number, plotHeight: number): ChartBounds;
243
241
  getPlotlyDateFormat(formatter: Formatter | null, columnType: string, formatPattern: string): Partial<LayoutAxis>;
244
242
  /**
@@ -255,13 +253,12 @@ declare class ChartUtils {
255
253
  * @param layoutParam The layout object to update
256
254
  * @param chartAxes The chart axes to update the layout with
257
255
  * @param figureAxes All figure axes to update the layout with
258
- * @param theme Theme used for displaying the plot
259
256
  * @param plotWidth The width of the plot to calculate the axis sizes for
260
257
  * @param plotHeight The height of the plot to calculate the axis sizes for
261
258
  * @param bounds The bounds for this set of axes
262
259
  * @param axisRangeParser A function to retrieve the range parser for a given axis
263
260
  */
264
- updateLayoutAxes(layoutParam: Partial<Layout>, chartAxes: Axis[], figureAxes: Axis[], theme: ChartTheme, plotWidth?: number, plotHeight?: number, bounds?: ChartBounds, axisRangeParser?: AxisRangeParser): void;
261
+ updateLayoutAxes(layoutParam: Partial<Layout>, chartAxes: Axis[], figureAxes: Axis[], plotWidth?: number, plotHeight?: number, bounds?: ChartBounds, axisRangeParser?: AxisRangeParser): void;
265
262
  /**
266
263
  * Remove any axes from the layout param that no longer belong to any series
267
264
  * @param layoutParam Layout object to remove stale axes from
@@ -377,7 +374,14 @@ declare class ChartUtils {
377
374
  * @param timeZone The time zone if applicable
378
375
  */
379
376
  wrapValue(value: unknown, columnType: string, timeZone?: TimeZone | null): unknown;
380
- makeLayoutAxis(type: AxisType, theme: ChartTheme): Partial<LayoutAxis>;
377
+ makeLayoutAxis(type: AxisType, theme: Partial<ChartTheme>): Partial<LayoutAxis>;
378
+ /**
379
+ * Creates a plotly layout template object based on a given theme.
380
+ * See https://plotly.com/javascript/reference/layout/#layout-template
381
+ * @param theme The theme to use for the layout template
382
+ * @returns The layout template object
383
+ */
384
+ makeDefaultTemplate(theme: ChartTheme): Template;
381
385
  /**
382
386
  * Creates a plotly layout object based on a given theme.
383
387
  * See https://plotly.com/javascript/reference/layout/
@@ -1 +1 @@
1
- {"version":3,"file":"ChartUtils.d.ts","sourceRoot":"","sources":["../src/ChartUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChartUtils.d.ts","sourceRoot":"","sources":["../src/ChartUtils.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
6
6
  import Log from '@deephaven/log';
7
7
  import { TableUtils } from '@deephaven/jsapi-utils';
8
8
  import set from 'lodash.set';
9
- import { assertNotNull } from '@deephaven/utils';
9
+ import { assertNotNull, bindAllMethods } from '@deephaven/utils';
10
10
  var log = Log.module('ChartUtils');
11
11
  var BUSINESS_COLUMN_TYPE = 'io.deephaven.time.DateTime';
12
12
  var MILLIS_PER_HOUR = 3600000;
@@ -30,19 +30,17 @@ class ChartUtils {
30
30
  * @param x The main data array
31
31
  * @param xLow The absolute low values
32
32
  * @param xHigh
33
- * @param theme Theme properties for the chart
34
33
  *
35
34
  * @returns The error_x object required by plotly, or null if none is required
36
35
  */
37
- static getPlotlyErrorBars(x, xLow, xHigh, theme) {
36
+ static getPlotlyErrorBars(x, xLow, xHigh) {
38
37
  var array = xHigh.map((value, i) => value - x[i]);
39
38
  var arrayminus = xLow.map((value, i) => x[i] - value);
40
39
  return {
41
40
  type: 'data',
42
41
  symmetric: false,
43
42
  array,
44
- arrayminus,
45
- color: theme.error_band_line_color
43
+ arrayminus
46
44
  };
47
45
  }
48
46
  static convertNumberPrefix(prefix) {
@@ -295,23 +293,23 @@ class ChartUtils {
295
293
  }
296
294
 
297
295
  /**
298
- * Parses the colorway property of a theme and returns an array of colors
299
- * Theme could have a single string with space separated colors or an array of strings representing the colorway
300
- * @param theme The theme to get colorway from
301
- * @returns Colorway array for the theme
296
+ * Parses the colorway value of a theme and returns an array of colors
297
+ * Value could be a single string with space separated colors or already be an
298
+ * array of strings representing the colorway
299
+ * @param colorway The colorway value to normalize
300
+ * @returns Colorway array for the theme or undefined
302
301
  */
303
- static getColorwayFromTheme(theme) {
304
- var colorway = [];
305
- if (theme.colorway) {
306
- if (Array.isArray(theme.colorway)) {
307
- colorway = theme.colorway;
308
- } else if (typeof theme.colorway === 'string') {
309
- colorway = theme.colorway.split(' ');
310
- } else {
311
- log.warn("Unable to handle colorway property: ".concat(theme.colorway));
312
- }
302
+ static normalizeColorway(colorway) {
303
+ if (colorway == null) {
304
+ return;
305
+ }
306
+ if (Array.isArray(colorway)) {
307
+ return colorway;
308
+ }
309
+ if (typeof colorway === 'string') {
310
+ return colorway.split(' ');
313
311
  }
314
- return colorway;
312
+ log.warn("Unexpected colorway format: ".concat(colorway));
315
313
  }
316
314
  static titleFromSettings(settings) {
317
315
  var {
@@ -326,6 +324,7 @@ class ChartUtils {
326
324
  _defineProperty(this, "daysOfWeek", void 0);
327
325
  this.dh = dh;
328
326
  this.daysOfWeek = Object.freeze(dh.calendar.DayOfWeek.values());
327
+ bindAllMethods(this);
329
328
  }
330
329
 
331
330
  /**
@@ -608,11 +607,10 @@ class ChartUtils {
608
607
  * @param series The series to create the series data with
609
608
  * @param axisTypeMap The map of axes grouped by type
610
609
  * @param seriesVisibility Visibility setting for the series
611
- * @param theme The theme properties for the plot. See ChartTheme.js for an example
612
610
  * @returns The series data (trace) object for use with plotly.
613
611
  */
614
- makeSeriesDataFromSeries(series, axisTypeMap, seriesVisibility, theme) {
615
- var showLegend = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
612
+ makeSeriesDataFromSeries(series, axisTypeMap, seriesVisibility) {
613
+ var showLegend = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
616
614
  var {
617
615
  name,
618
616
  isLinesVisible,
@@ -633,7 +631,7 @@ class ChartUtils {
633
631
  var orientation = this.getPlotlySeriesOrientation(series);
634
632
  var seriesData = ChartUtils.makeSeriesData(type, mode, name, showLegend, orientation);
635
633
  this.addSourcesToSeriesData(seriesData, plotStyle, sources, axisTypeMap);
636
- this.addStylingToSeriesData(seriesData, plotStyle, theme, lineColor, shapeColor, shape, shapeSize, seriesVisibility);
634
+ this.addStylingToSeriesData(seriesData, plotStyle, lineColor, shapeColor, shape, shapeSize, seriesVisibility);
637
635
  return seriesData;
638
636
  }
639
637
  addSourcesToSeriesData(seriesDataParam, plotStyle, sources, axisTypeMap) {
@@ -657,12 +655,12 @@ class ChartUtils {
657
655
  }
658
656
  }
659
657
  }
660
- addStylingToSeriesData(seriesDataParam, plotStyle, theme) {
661
- var lineColor = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
662
- var shapeColor = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
663
- var shape = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
664
- var shapeSize = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
665
- var seriesVisibility = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : null;
658
+ addStylingToSeriesData(seriesDataParam, plotStyle) {
659
+ var lineColor = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
660
+ var shapeColor = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
661
+ var shape = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
662
+ var shapeSize = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
663
+ var seriesVisibility = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
666
664
  var {
667
665
  dh
668
666
  } = this;
@@ -685,32 +683,8 @@ class ChartUtils {
685
683
  // The default histfunc in plotly is 'count', but the data passed up from the API provides explicit x/y values and bins
686
684
  // Since it's converted to bar, just set the widths of each bar
687
685
  seriesData.width = [];
688
- if (seriesData.marker.line !== undefined) {
689
- Object.assign(seriesData.marker.line, {
690
- color: theme.paper_bgcolor,
691
- width: 1
692
- });
693
- }
694
- } else if (plotStyle === dh.plot.SeriesPlotStyle.OHLC) {
695
- seriesData.increasing = {
696
- line: {
697
- color: theme.ohlc_increasing
698
- }
699
- };
700
- seriesData.decreasing = {
701
- line: {
702
- color: theme.ohlc_decreasing
703
- }
704
- };
705
686
  } else if (plotStyle === dh.plot.SeriesPlotStyle.PIE) {
706
687
  seriesData.textinfo = 'label+percent';
707
-
708
- // TODO Open DefinitelyTyped/Plotly PR to mark family and size as optional
709
- // https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/plotly.js/lib/traces/pie.d.ts#L6
710
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
711
- seriesData.outsidetextfont = {
712
- color: theme.title_color
713
- };
714
688
  } else if (plotStyle === dh.plot.SeriesPlotStyle.TREEMAP) {
715
689
  seriesData.hoverinfo = 'text';
716
690
  seriesData.textinfo = 'label+text';
@@ -719,10 +693,6 @@ class ChartUtils {
719
693
  pad: 0
720
694
  };
721
695
  seriesData.textposition = 'middle center';
722
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
723
- seriesData.outsidetextfont = {
724
- color: theme.title_color
725
- };
726
696
  }
727
697
  if (lineColor != null) {
728
698
  if (plotStyle === dh.plot.SeriesPlotStyle.BAR) {
@@ -809,21 +779,20 @@ class ChartUtils {
809
779
  * Update the layout with all the axes information for the provided figure
810
780
  * @param figure Figure to update the axes for
811
781
  * @param layoutParam Layout object to update in place
812
- * @param theme Theme used for displaying the plot
813
782
  * @param chartAxisRangeParser Function to retrieve the axis range parser
814
783
  * @param plotWidth Width of the plot in pixels
815
784
  * @param plotHeight Height of the plot in pixels
816
785
  */
817
- updateFigureAxes(layoutParam, figure, theme, chartAxisRangeParser) {
818
- var plotWidth = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
819
- var plotHeight = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;
786
+ updateFigureAxes(layoutParam, figure, chartAxisRangeParser) {
787
+ var plotWidth = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
788
+ var plotHeight = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
820
789
  var layout = layoutParam;
821
790
  var figureAxes = ChartUtils.getAllAxes(figure);
822
791
  for (var i = 0; i < figure.charts.length; i += 1) {
823
792
  var _chart3 = figure.charts[i];
824
793
  var axisRangeParser = chartAxisRangeParser === null || chartAxisRangeParser === void 0 ? void 0 : chartAxisRangeParser(_chart3);
825
794
  var bounds = this.getChartBounds(figure, _chart3, plotWidth, plotHeight);
826
- this.updateLayoutAxes(layout, _chart3.axes, figureAxes, theme, plotWidth, plotHeight, bounds, axisRangeParser);
795
+ this.updateLayoutAxes(layout, _chart3.axes, figureAxes, plotWidth, plotHeight, bounds, axisRangeParser);
827
796
  }
828
797
  this.removeStaleAxes(layout, figureAxes);
829
798
  }
@@ -934,22 +903,21 @@ class ChartUtils {
934
903
  * @param layoutParam The layout object to update
935
904
  * @param chartAxes The chart axes to update the layout with
936
905
  * @param figureAxes All figure axes to update the layout with
937
- * @param theme Theme used for displaying the plot
938
906
  * @param plotWidth The width of the plot to calculate the axis sizes for
939
907
  * @param plotHeight The height of the plot to calculate the axis sizes for
940
908
  * @param bounds The bounds for this set of axes
941
909
  * @param axisRangeParser A function to retrieve the range parser for a given axis
942
910
  */
943
- updateLayoutAxes(layoutParam, chartAxes, figureAxes, theme) {
944
- var plotWidth = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
945
- var plotHeight = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;
946
- var bounds = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : {
911
+ updateLayoutAxes(layoutParam, chartAxes, figureAxes) {
912
+ var plotWidth = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
913
+ var plotHeight = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
914
+ var bounds = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {
947
915
  left: 0,
948
916
  top: 0,
949
917
  right: 1,
950
918
  bottom: 1
951
919
  };
952
- var axisRangeParser = arguments.length > 7 ? arguments[7] : undefined;
920
+ var axisRangeParser = arguments.length > 6 ? arguments[6] : undefined;
953
921
  var {
954
922
  dh
955
923
  } = this;
@@ -975,7 +943,7 @@ class ChartUtils {
975
943
  var figureAxisIndex = figureTypeAxes.indexOf(_axis2);
976
944
  var axisLayoutProperty = ChartUtils.getAxisLayoutProperty(axisProperty, figureAxisIndex);
977
945
  if (layout[axisLayoutProperty] == null) {
978
- layout[axisLayoutProperty] = this.makeLayoutAxis(axisType, theme);
946
+ layout[axisLayoutProperty] = {};
979
947
  }
980
948
  var layoutAxis = layout[axisLayoutProperty];
981
949
  if (layoutAxis != null) {
@@ -1331,6 +1299,7 @@ class ChartUtils {
1331
1299
  visible: false
1332
1300
  },
1333
1301
  showline: true,
1302
+ ticks: 'outside',
1334
1303
  ticklen: 5,
1335
1304
  // act as padding, can't find a tick padding
1336
1305
  tickcolor: theme.paper_bgcolor,
@@ -1362,6 +1331,65 @@ class ChartUtils {
1362
1331
  return axis;
1363
1332
  }
1364
1333
 
1334
+ /**
1335
+ * Creates a plotly layout template object based on a given theme.
1336
+ * See https://plotly.com/javascript/reference/layout/#layout-template
1337
+ * @param theme The theme to use for the layout template
1338
+ * @returns The layout template object
1339
+ */
1340
+ makeDefaultTemplate(theme) {
1341
+ /* eslint-disable camelcase */
1342
+ var {
1343
+ error_band_line_color,
1344
+ ohlc_increasing,
1345
+ ohlc_decreasing,
1346
+ title_color
1347
+ } = theme;
1348
+ return {
1349
+ data: {
1350
+ bar: [{
1351
+ marker: {
1352
+ line: {
1353
+ color: 'transparent'
1354
+ }
1355
+ }
1356
+ }],
1357
+ scatter: [{
1358
+ error_x: {
1359
+ color: error_band_line_color
1360
+ },
1361
+ error_y: {
1362
+ color: error_band_line_color
1363
+ }
1364
+ }],
1365
+ ohlc: [{
1366
+ increasing: {
1367
+ line: {
1368
+ color: ohlc_increasing
1369
+ }
1370
+ },
1371
+ decreasing: {
1372
+ line: {
1373
+ color: ohlc_decreasing
1374
+ }
1375
+ }
1376
+ }],
1377
+ pie: [{
1378
+ outsidetextfont: {
1379
+ color: title_color
1380
+ }
1381
+ }],
1382
+ treemap: [{
1383
+ outsidetextfont: {
1384
+ color: title_color
1385
+ }
1386
+ }]
1387
+ },
1388
+ /* eslint-enable camelcase */
1389
+ layout: this.makeDefaultLayout(theme)
1390
+ };
1391
+ }
1392
+
1365
1393
  /**
1366
1394
  * Creates a plotly layout object based on a given theme.
1367
1395
  * See https://plotly.com/javascript/reference/layout/
@@ -1388,7 +1416,7 @@ class ChartUtils {
1388
1416
  paper_bgcolor,
1389
1417
  plot_bgcolor,
1390
1418
  autosize: true,
1391
- colorway: ChartUtils.getColorwayFromTheme(theme),
1419
+ colorway: ChartUtils.normalizeColorway(theme === null || theme === void 0 ? void 0 : theme.colorway),
1392
1420
  font: {
1393
1421
  family: "'Fira Sans', sans-serif",
1394
1422
  color: title_color
@@ -1397,6 +1425,8 @@ class ChartUtils {
1397
1425
  font: {
1398
1426
  color: title_color
1399
1427
  },
1428
+ xanchor: 'center',
1429
+ xref: 'paper',
1400
1430
  yanchor: 'top',
1401
1431
  pad: _objectSpread({}, ChartUtils.DEFAULT_TITLE_PADDING),
1402
1432
  y: 1