@visactor/vseed 0.3.1 → 0.3.2
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.
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/dataReshape/constant.d.ts +1 -0
- package/dist/esm/dataReshape/constant.js +2 -1
- package/dist/esm/dataReshape/constant.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js +2 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/boxplot.js +2 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/boxplot.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js +2 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js +2 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js +2 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/histogram.js +2 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/histogram.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/line.js +2 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/line.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/pie.js +2 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/pie.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/radar.js +2 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/radar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js +2 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js +2 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js +7 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js +7 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/dualAxis.js +3 -1
- package/dist/esm/pipeline/spec/chart/pipeline/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dual/adjustXField.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/dual/adjustXField.js +17 -0
- package/dist/esm/pipeline/spec/chart/pipes/dual/adjustXField.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/dual/dualChartType.js +3 -5
- package/dist/esm/pipeline/spec/chart/pipes/dual/dualChartType.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dual/index.d.ts +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/dual/index.js +2 -1
- package/dist/esm/pipeline/spec/chart/pipes/legend/colorLegend.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.d.ts +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js +9 -4
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js +8 -2
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js.map +1 -1
- package/dist/esm/theme/common/axes.js +0 -4
- package/dist/esm/theme/common/axes.js.map +1 -1
- package/dist/umd/index.js +77 -34
- package/dist/umd/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.ts"],"sourcesContent":["import { pipe, uniqueBy, isNullish } from 'remeda'\nimport { createFormatterByMeasure, findMeasureById } from '../../../../utils'\nimport type {\n Dimension,\n Dimensions,\n Encoding,\n VChartSpecPipe,\n Tooltip,\n Measures,\n FoldInfo,\n UnfoldInfo,\n} from 'src/types'\nimport type { Datum, ISpec, ITooltipLinePattern, ITooltipLineActual, TooltipData } from '@visactor/vchart'\nimport {\n ColorEncoding,\n LowerWhisker,\n MeasureId,\n MeasureName,\n MedianMeasureId,\n OutliersMeasureId,\n Q1MeasureValue,\n Q3MeasureValue,\n UpperWhisker,\n XEncoding,\n} from 'src/dataReshape'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { intl } from 'src/i18n'\nimport { updateTooltipElement } from './tooltipElement'\n\nconst boxPlotMeasureKeys = [UpperWhisker, Q3MeasureValue, MedianMeasureId, Q1MeasureValue, LowerWhisker]\nconst VCHART_OUTLIER_KEY = '__VCHART_BOX_PLOT_OUTLIER_VALUE'\n\nexport const tooltipBoxplot: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed, vseed } = context\n const { chartType, dimensions = [], encoding, datasetReshapeInfo } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType as 'boxPlot'] as { tooltip: Tooltip }\n const { tooltip = { enable: true } } = baseConfig\n const { enable } = tooltip\n const meas = (vseed.measures ?? []) as Measures\n const valueMeasure = meas.find((item) => item.encoding === 'value' || isNullish(item.encoding))\n const defaultFormatter = valueMeasure ? createFormatterByMeasure(valueMeasure) : (v: unknown) => v\n const measureAliasMapping: Record<string, string> = {\n [OutliersMeasureId]: intl.i18n`异常点`,\n [UpperWhisker]: intl.i18n`上边界`,\n [Q3MeasureValue]: intl.i18n`上四分位数`,\n [MedianMeasureId]: intl.i18n`中位数`,\n [Q1MeasureValue]: intl.i18n`下四分位数`,\n [LowerWhisker]: intl.i18n`下边界`,\n }\n const { unfoldInfo } = datasetReshapeInfo[0] as unknown as {\n foldInfo: FoldInfo\n unfoldInfo: UnfoldInfo\n }\n\n result.tooltip = {\n visible: enable,\n style: getTooltipStyle(tooltip),\n mark: {\n title: {\n visible: false,\n },\n content: createMarkContent(encoding.tooltip || [], dimensions, encoding as Encoding),\n updateContent: (prev: ITooltipLineActual[] | undefined, data: TooltipData | undefined) => {\n const datum = (data as any)?.[0]?.datum?.[0]\n\n if (!isNullish(datum?.[VCHART_OUTLIER_KEY])) {\n const tooltipItems: ITooltipLineActual[] = (prev ?? []).filter(\n (item: any) => !boxPlotMeasureKeys.includes(item.key as string),\n )\n const outerlierMeasure = meas.find((item) => item.id === OutliersMeasureId)\n const formatter = outerlierMeasure ? createFormatterByMeasure(outerlierMeasure) : defaultFormatter\n\n tooltipItems.push({\n ...(tooltipItems[0] as any),\n key: outerlierMeasure?.alias ?? measureAliasMapping[OutliersMeasureId],\n value: formatter(datum?.[VCHART_OUTLIER_KEY] as number) as string,\n } as ITooltipLineActual)\n\n return tooltipItems\n }\n\n return (prev ?? []).map((entry) => {\n if (boxPlotMeasureKeys.includes((entry as any).key as string)) {\n const mea = meas.find((item) => item.id === (entry as any).key)\n const formatter = mea ? createFormatterByMeasure(mea) : defaultFormatter\n\n return {\n ...(entry as any),\n value: formatter(datum?.[(entry as any).key] as number) as string,\n key: mea?.alias ?? measureAliasMapping[entry?.key as string] ?? (entry as any).key,\n }\n }\n\n return entry\n }) as ITooltipLineActual[]\n },\n },\n dimension: {\n title: {\n visible: true,\n },\n content: createDimensionContent(dimensions, meas, unfoldInfo, measureAliasMapping[MedianMeasureId]),\n },\n updateElement: updateTooltipElement,\n }\n return result as unknown as ISpec\n}\n\nconst createMarkContent = (tooltip: string[], dimensions: Dimensions, encoding: Encoding) => {\n const dims = pipe(\n dimensions.filter((item) => tooltip.includes(item.id)),\n uniqueBy((item: Dimension) => item.id),\n uniqueBy((item: Dimension) => item.alias),\n )\n\n const dimContent = dims.map((item: Dimension) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: item.alias ?? item.id,\n value: (datum: Datum | undefined) => {\n if (!isNullish(datum?.[VCHART_OUTLIER_KEY])) {\n if (encoding.color?.includes(item.id)) {\n return datum?.[ColorEncoding] as string\n }\n if (encoding.x?.includes(item.id)) {\n return datum?.[XEncoding] as string\n }\n }\n\n return datum?.[item.id] as string\n },\n }))\n\n const defaultContent = boxPlotMeasureKeys.map((key: string) => {\n return {\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key,\n value: (datum: Datum | undefined) => {\n if (!datum) {\n return ''\n }\n return datum[key] as string | number\n },\n }\n })\n\n return [...dimContent, defaultContent] as ITooltipLinePattern[]\n}\n\nconst createDimensionContent = (\n dimensions: Dimensions,\n measures: Measures,\n unfoldInfo: UnfoldInfo,\n medianAlias: string,\n) => {\n const { encodingColor } = unfoldInfo\n\n return [\n {\n visible: true,\n shapeType: 'rectRound',\n hasShape: true,\n key: dimensions.some((d) => d.encoding === 'color')\n ? (v: unknown) => {\n const datum = v as Datum\n const key = (datum && (datum[encodingColor] as string)) || ''\n return `${unfoldInfo.colorIdMap[key].alias ?? key}(${medianAlias})`\n }\n : (v: unknown) => {\n const datum = v as Datum\n return `${datum[MeasureName] ?? datum[MeasureId]}(${medianAlias})`\n },\n value: (v: unknown) => {\n const datum = v as Datum\n if (!datum) {\n return ''\n }\n const value = datum[MedianMeasureId] as string | number // dimension tooltip 中默认显示中位数\n const id = datum[MeasureId] as string\n const measure = findMeasureById(measures, id)\n const formatter = createFormatterByMeasure(measure)\n return formatter(value)\n },\n },\n ]\n}\n"],"names":["boxPlotMeasureKeys","UpperWhisker","Q3MeasureValue","MedianMeasureId","Q1MeasureValue","LowerWhisker","VCHART_OUTLIER_KEY","tooltipBoxplot","spec","context","result","advancedVSeed","vseed","chartType","dimensions","encoding","datasetReshapeInfo","baseConfig","tooltip","enable","meas","valueMeasure","item","isNullish","defaultFormatter","createFormatterByMeasure","v","measureAliasMapping","OutliersMeasureId","intl","unfoldInfo","getTooltipStyle","createMarkContent","prev","data","datum","tooltipItems","outerlierMeasure","formatter","entry","mea","createDimensionContent","updateTooltipElement","dims","pipe","uniqueBy","dimContent","ColorEncoding","XEncoding","defaultContent","key","measures","medianAlias","encodingColor","d","MeasureName","MeasureId","value","id","measure","findMeasureById"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.ts"],"sourcesContent":["import { pipe, uniqueBy, isNullish } from 'remeda'\nimport { createFormatterByMeasure, findMeasureById } from '../../../../utils'\nimport type {\n Dimension,\n Dimensions,\n Encoding,\n VChartSpecPipe,\n Tooltip,\n Measures,\n FoldInfo,\n UnfoldInfo,\n} from 'src/types'\nimport type { Datum, ISpec, ITooltipLinePattern, ITooltipLineActual, TooltipData } from '@visactor/vchart'\nimport {\n ColorEncoding,\n LowerWhisker,\n MeasureId,\n MeasureName,\n MedianMeasureId,\n OutliersMeasureId,\n Q1MeasureValue,\n Q3MeasureValue,\n UpperWhisker,\n XEncoding,\n} from 'src/dataReshape'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { intl } from 'src/i18n'\nimport { updateTooltipElement } from './tooltipElement'\n\nconst boxPlotMeasureKeys = [UpperWhisker, Q3MeasureValue, MedianMeasureId, Q1MeasureValue, LowerWhisker]\nconst VCHART_OUTLIER_KEY = '__VCHART_BOX_PLOT_OUTLIER_VALUE'\n\nexport const tooltipBoxplot: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed, vseed } = context\n const { chartType, dimensions = [], encoding, datasetReshapeInfo } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType as 'boxPlot'] as { tooltip: Tooltip }\n const { tooltip = { enable: true } } = baseConfig\n const { enable } = tooltip\n const meas = (vseed.measures ?? []) as Measures\n const valueMeasure = meas.find((item) => item.encoding === 'value' || isNullish(item.encoding))\n const defaultFormatter = valueMeasure ? createFormatterByMeasure(valueMeasure) : (v: unknown) => v\n const measureAliasMapping: Record<string, string> = {\n [OutliersMeasureId]: intl.i18n`异常点`,\n [UpperWhisker]: intl.i18n`上边界`,\n [Q3MeasureValue]: intl.i18n`上四分位数`,\n [MedianMeasureId]: intl.i18n`中位数`,\n [Q1MeasureValue]: intl.i18n`下四分位数`,\n [LowerWhisker]: intl.i18n`下边界`,\n }\n const { unfoldInfo } = datasetReshapeInfo[0] as unknown as {\n foldInfo: FoldInfo\n unfoldInfo: UnfoldInfo\n }\n\n result.tooltip = {\n visible: enable,\n style: getTooltipStyle(tooltip),\n mark: {\n title: {\n visible: false,\n },\n content: createMarkContent(encoding.tooltip || [], dimensions, encoding as Encoding),\n updateContent: (prev: ITooltipLineActual[] | undefined, data: TooltipData | undefined) => {\n const datum = (data as any)?.[0]?.datum?.[0]\n\n if (!isNullish(datum?.[VCHART_OUTLIER_KEY])) {\n const tooltipItems: ITooltipLineActual[] = (prev ?? []).filter(\n (item: any) => !boxPlotMeasureKeys.includes(item.key as string),\n )\n const outerlierMeasure = meas.find((item) => item.id === OutliersMeasureId)\n const formatter = outerlierMeasure ? createFormatterByMeasure(outerlierMeasure) : defaultFormatter\n\n tooltipItems.push({\n ...(tooltipItems[0] as any),\n key: outerlierMeasure?.alias ?? measureAliasMapping[OutliersMeasureId],\n value: formatter(datum?.[VCHART_OUTLIER_KEY] as number) as string,\n } as ITooltipLineActual)\n\n return tooltipItems\n }\n\n return (prev ?? []).map((entry) => {\n if (boxPlotMeasureKeys.includes((entry as any).key as string)) {\n const mea = meas.find((item) => item.id === (entry as any).key)\n const formatter = mea ? createFormatterByMeasure(mea) : defaultFormatter\n\n return {\n ...(entry as any),\n value: formatter(datum?.[(entry as any).key] as number) as string,\n key: mea?.alias ?? measureAliasMapping[entry?.key as string] ?? (entry as any).key,\n }\n }\n\n return entry\n }) as ITooltipLineActual[]\n },\n },\n dimension: {\n title: {\n visible: true,\n },\n content: createDimensionContent(dimensions, meas, unfoldInfo, measureAliasMapping[MedianMeasureId]),\n },\n updateElement: updateTooltipElement,\n }\n return result as unknown as ISpec\n}\n\nconst createMarkContent = (tooltip: string[], dimensions: Dimensions, encoding: Encoding) => {\n const dims = pipe(\n dimensions.filter((item) => tooltip.includes(item.id)),\n uniqueBy((item: Dimension) => item.id),\n uniqueBy((item: Dimension) => item.alias),\n )\n\n const dimContent = dims.map((item: Dimension) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: item.alias ?? item.id,\n value: (datum: Datum | undefined) => {\n if (!isNullish(datum?.[VCHART_OUTLIER_KEY])) {\n if (encoding.color?.includes(item.id)) {\n return datum?.[ColorEncoding] as string\n }\n if (encoding.x?.includes(item.id)) {\n return datum?.[XEncoding] as string\n }\n }\n\n return datum?.[item.id] as string\n },\n }))\n\n const defaultContent = boxPlotMeasureKeys.map((key: string) => {\n return {\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key,\n value: (datum: Datum | undefined) => {\n if (!datum) {\n return ''\n }\n return datum[key] as string | number\n },\n }\n })\n\n return [...dimContent, defaultContent] as ITooltipLinePattern[]\n}\n\nconst createDimensionContent = (\n dimensions: Dimensions,\n measures: Measures,\n unfoldInfo: UnfoldInfo,\n medianAlias: string,\n hasMultiMeasureGroup?: boolean,\n) => {\n const { encodingColor } = unfoldInfo\n\n return [\n {\n visible: true,\n shapeType: 'rectRound',\n hasShape: true,\n key: dimensions.some((d) => d.encoding === 'color')\n ? (v: unknown) => {\n const datum = v as Datum\n const key = (datum && (datum[encodingColor] as string)) || ''\n const colorKey = `${unfoldInfo.colorIdMap[key].alias ?? key}(${medianAlias})`\n\n if (hasMultiMeasureGroup) {\n const id = datum[MeasureId] as string\n const measure = findMeasureById(measures, id)\n\n return measure ? `${colorKey}-${measure.alias ?? id}` : colorKey\n }\n\n return colorKey\n }\n : (v: unknown) => {\n const datum = v as Datum\n return `${datum[MeasureName] ?? datum[MeasureId]}(${medianAlias})`\n },\n value: (v: unknown) => {\n const datum = v as Datum\n if (!datum) {\n return ''\n }\n const value = datum[MedianMeasureId] as string | number // dimension tooltip 中默认显示中位数\n const id = datum[MeasureId] as string\n const measure = findMeasureById(measures, id)\n const formatter = createFormatterByMeasure(measure)\n return formatter(value)\n },\n },\n ]\n}\n"],"names":["boxPlotMeasureKeys","UpperWhisker","Q3MeasureValue","MedianMeasureId","Q1MeasureValue","LowerWhisker","VCHART_OUTLIER_KEY","tooltipBoxplot","spec","context","result","advancedVSeed","vseed","chartType","dimensions","encoding","datasetReshapeInfo","baseConfig","tooltip","enable","meas","valueMeasure","item","isNullish","defaultFormatter","createFormatterByMeasure","v","measureAliasMapping","OutliersMeasureId","intl","unfoldInfo","getTooltipStyle","createMarkContent","prev","data","datum","tooltipItems","outerlierMeasure","formatter","entry","mea","createDimensionContent","updateTooltipElement","dims","pipe","uniqueBy","dimContent","ColorEncoding","XEncoding","defaultContent","key","measures","medianAlias","hasMultiMeasureGroup","encodingColor","d","colorKey","id","MeasureId","measure","findMeasureById","MeasureName","value"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ const tooltipOfDualAxisSeries = (options)=>(spec, context)=>{
|
|
|
6
6
|
...spec
|
|
7
7
|
};
|
|
8
8
|
const { advancedVSeed, vseed } = context;
|
|
9
|
-
const { measures = [], datasetReshapeInfo, chartType, dimensions = [], encoding } = advancedVSeed;
|
|
9
|
+
const { measures = [], datasetReshapeInfo, chartType, dimensions = [], encoding, reshapeMeasures = [] } = advancedVSeed;
|
|
10
10
|
const baseConfig = advancedVSeed.config[chartType];
|
|
11
11
|
const { tooltip = {
|
|
12
12
|
enable: true
|
|
@@ -25,7 +25,7 @@ const tooltipOfDualAxisSeries = (options)=>(spec, context)=>{
|
|
|
25
25
|
title: {
|
|
26
26
|
visible: true
|
|
27
27
|
},
|
|
28
|
-
content: createDimensionContent(dimensions, measures, options.foldInfo, unfoldInfo)
|
|
28
|
+
content: createDimensionContent(dimensions, measures, options.foldInfo, unfoldInfo, reshapeMeasures.length > 1)
|
|
29
29
|
}
|
|
30
30
|
};
|
|
31
31
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.ts"],"sourcesContent":["import { createDimensionContent, createMarkContent } from './tooltip'\nimport type { VChartSpecPipe, Tooltip, Measures, DualAxisOptions } from 'src/types'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { updateTooltipElement } from './tooltipElement'\n\nexport const tooltipOfDualAxisSeries = (options: DualAxisOptions): VChartSpecPipe => {\n return (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed, vseed } = context\n const {
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.ts"],"sourcesContent":["import { createDimensionContent, createMarkContent } from './tooltip'\nimport type { VChartSpecPipe, Tooltip, Measures, DualAxisOptions } from 'src/types'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { updateTooltipElement } from './tooltipElement'\n\nexport const tooltipOfDualAxisSeries = (options: DualAxisOptions): VChartSpecPipe => {\n return (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed, vseed } = context\n const {\n measures = [],\n datasetReshapeInfo,\n chartType,\n dimensions = [],\n encoding,\n reshapeMeasures = [],\n } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { tooltip: Tooltip }\n const { tooltip = { enable: true } } = baseConfig\n const { enable } = tooltip\n\n const unfoldInfo = datasetReshapeInfo[0].unfoldInfo\n\n result.tooltip = {\n visible: enable,\n mark: {\n title: {\n visible: false,\n },\n content: createMarkContent(\n encoding.tooltip || [],\n dimensions,\n vseed.measures as Measures,\n options.foldInfo,\n unfoldInfo,\n ),\n },\n dimension: {\n title: {\n visible: true,\n },\n content: createDimensionContent(dimensions, measures, options.foldInfo, unfoldInfo, reshapeMeasures.length > 1),\n },\n }\n return result\n }\n}\n\nexport const tooltipDualAxis: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed } = context\n const { chartType } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { tooltip: Tooltip }\n const { tooltip = { enable: true } } = baseConfig\n\n result.tooltip = {\n style: getTooltipStyle(tooltip),\n updateElement: updateTooltipElement,\n }\n return result\n}\n"],"names":["tooltipOfDualAxisSeries","options","spec","context","result","advancedVSeed","vseed","measures","datasetReshapeInfo","chartType","dimensions","encoding","reshapeMeasures","baseConfig","tooltip","enable","unfoldInfo","createMarkContent","createDimensionContent","tooltipDualAxis","getTooltipStyle","updateTooltipElement"],"mappings":";;;AAKO,MAAMA,0BAA0B,CAACC,UAC/B,CAACC,MAAMC;QACZ,MAAMC,SAAS;YAAE,GAAGF,IAAI;QAAC;QACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;QACjC,MAAM,EACJI,WAAW,EAAE,EACbC,kBAAkB,EAClBC,SAAS,EACTC,aAAa,EAAE,EACfC,QAAQ,EACRC,kBAAkB,EAAE,EACrB,GAAGP;QACJ,MAAMQ,aAAaR,cAAc,MAAM,CAACI,UAAU;QAClD,MAAM,EAAEK,UAAU;YAAE,QAAQ;QAAK,CAAC,EAAE,GAAGD;QACvC,MAAM,EAAEE,MAAM,EAAE,GAAGD;QAEnB,MAAME,aAAaR,kBAAkB,CAAC,EAAE,CAAC,UAAU;QAEnDJ,OAAO,OAAO,GAAG;YACf,SAASW;YACT,MAAM;gBACJ,OAAO;oBACL,SAAS;gBACX;gBACA,SAASE,kBACPN,SAAS,OAAO,IAAI,EAAE,EACtBD,YACAJ,MAAM,QAAQ,EACdL,QAAQ,QAAQ,EAChBe;YAEJ;YACA,WAAW;gBACT,OAAO;oBACL,SAAS;gBACX;gBACA,SAASE,uBAAuBR,YAAYH,UAAUN,QAAQ,QAAQ,EAAEe,YAAYJ,gBAAgB,MAAM,GAAG;YAC/G;QACF;QACA,OAAOR;IACT;AAGK,MAAMe,kBAAkC,CAACjB,MAAMC;IACpD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEM,SAAS,EAAE,GAAGJ;IACtB,MAAMQ,aAAaR,cAAc,MAAM,CAACI,UAAU;IAClD,MAAM,EAAEK,UAAU;QAAE,QAAQ;IAAK,CAAC,EAAE,GAAGD;IAEvCT,OAAO,OAAO,GAAG;QACf,OAAOgB,gBAAgBN;QACvB,eAAeO;IACjB;IACA,OAAOjB;AACT"}
|
|
@@ -11,7 +11,6 @@ const getLightLinearAxis = ()=>({
|
|
|
11
11
|
},
|
|
12
12
|
title: {
|
|
13
13
|
visible: false,
|
|
14
|
-
titleText: '',
|
|
15
14
|
titleColor: '#606773',
|
|
16
15
|
titleFontSize: 12,
|
|
17
16
|
titleFontWeight: 400
|
|
@@ -57,7 +56,6 @@ const getLightBandAxis = ()=>({
|
|
|
57
56
|
},
|
|
58
57
|
title: {
|
|
59
58
|
visible: false,
|
|
60
|
-
titleText: '',
|
|
61
59
|
titleColor: '#606773',
|
|
62
60
|
titleFontSize: 12,
|
|
63
61
|
titleFontWeight: 400
|
|
@@ -95,7 +93,6 @@ const getDarkLinearAxis = ()=>({
|
|
|
95
93
|
},
|
|
96
94
|
title: {
|
|
97
95
|
visible: false,
|
|
98
|
-
titleText: '',
|
|
99
96
|
titleColor: '#BBBDC3',
|
|
100
97
|
titleFontSize: 12,
|
|
101
98
|
titleFontWeight: 400
|
|
@@ -141,7 +138,6 @@ const getDarkBandAxis = ()=>({
|
|
|
141
138
|
},
|
|
142
139
|
title: {
|
|
143
140
|
visible: false,
|
|
144
|
-
titleText: '',
|
|
145
141
|
titleColor: '#BBBDC3',
|
|
146
142
|
titleFontSize: 12,
|
|
147
143
|
titleFontWeight: 400
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme/common/axes.js","sources":["webpack://@visactor/vseed/./src/theme/common/axes.ts"],"sourcesContent":["import type { YBandAxis, YLinearAxis } from 'src/types'\n\nexport const getLightLinearAxis = (): YLinearAxis => ({\n nice: true,\n zero: true,\n inverse: false,\n label: {\n visible: true,\n labelAngle: 0,\n labelColor: '#8F959E',\n labelFontSize: 12,\n labelFontWeight: 400,\n },\n title: {\n visible: false,\n
|
|
1
|
+
{"version":3,"file":"theme/common/axes.js","sources":["webpack://@visactor/vseed/./src/theme/common/axes.ts"],"sourcesContent":["import type { YBandAxis, YLinearAxis } from 'src/types'\n\nexport const getLightLinearAxis = (): YLinearAxis => ({\n nice: true,\n zero: true,\n inverse: false,\n label: {\n visible: true,\n labelAngle: 0,\n labelColor: '#8F959E',\n labelFontSize: 12,\n labelFontWeight: 400,\n },\n title: {\n visible: false,\n titleColor: '#606773',\n titleFontSize: 12,\n titleFontWeight: 400,\n },\n grid: {\n visible: true,\n gridColor: '#E3E5EB',\n gridWidth: 0.5,\n gridLineDash: [4, 2],\n },\n tick: {\n visible: false,\n tickInside: false,\n tickSize: 4,\n tickColor: '#E3E5EB',\n },\n line: {\n visible: false,\n lineColor: '#E3E5EB',\n lineWidth: 1,\n },\n})\n\nexport const getLightBandAxis = (): YBandAxis => ({\n labelAutoHide: true,\n labelAutoHideGap: 4,\n labelAutoLimit: true,\n labelAutoLimitLength: 80,\n labelAutoRotate: false,\n labelAutoRotateAngleRange: [0, -45, -90],\n label: {\n visible: true,\n labelAngle: 0,\n labelColor: '#8F959E',\n labelFontSize: 12,\n labelFontWeight: 400,\n },\n title: {\n visible: false,\n titleColor: '#606773',\n titleFontSize: 12,\n titleFontWeight: 400,\n },\n grid: {\n visible: false,\n gridColor: '#E3E5EB',\n gridWidth: 0.5,\n gridLineDash: [4, 2],\n },\n tick: {\n visible: false,\n tickInside: false,\n tickSize: 4,\n tickColor: '#E3E5EB',\n },\n line: {\n visible: true,\n lineColor: '#E3E5EB',\n lineWidth: 1,\n },\n})\n\nexport const getDarkLinearAxis = (): YLinearAxis => ({\n nice: true,\n zero: true,\n label: {\n visible: true,\n labelAngle: 0,\n labelColor: '#888C93',\n labelFontSize: 12,\n labelFontWeight: 400,\n },\n title: {\n visible: false,\n titleColor: '#BBBDC3',\n titleFontSize: 12,\n titleFontWeight: 400,\n },\n grid: {\n visible: true,\n gridColor: '#303339',\n gridWidth: 0.5,\n gridLineDash: [4, 2],\n },\n tick: {\n visible: false,\n tickInside: false,\n tickSize: 4,\n tickColor: '#303339',\n },\n line: {\n visible: false,\n lineColor: '#303339',\n lineWidth: 1,\n },\n})\n\nexport const getDarkBandAxis = (): YBandAxis => ({\n labelAutoHide: true,\n labelAutoHideGap: 4,\n labelAutoLimit: true,\n labelAutoLimitLength: 80,\n labelAutoRotate: false,\n labelAutoRotateAngleRange: [0, -45, -90],\n label: {\n visible: true,\n labelAngle: 0,\n labelColor: '#888C93',\n labelFontSize: 12,\n labelFontWeight: 400,\n },\n title: {\n visible: false,\n titleColor: '#BBBDC3',\n titleFontSize: 12,\n titleFontWeight: 400,\n },\n grid: {\n visible: false,\n gridColor: '#303339',\n gridWidth: 0.5,\n gridLineDash: [4, 2],\n },\n tick: {\n visible: false,\n tickInside: false,\n tickSize: 4,\n tickColor: '#303339',\n },\n line: {\n visible: true,\n lineColor: '#303339',\n lineWidth: 1,\n },\n})\n"],"names":["getLightLinearAxis","getLightBandAxis","getDarkLinearAxis","getDarkBandAxis"],"mappings":"AAEO,MAAMA,qBAAqB,IAAoB;QACpD,MAAM;QACN,MAAM;QACN,SAAS;QACT,OAAO;YACL,SAAS;YACT,YAAY;YACZ,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,OAAO;YACL,SAAS;YACT,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;YACX,cAAc;gBAAC;gBAAG;aAAE;QACtB;QACA,MAAM;YACJ,SAAS;YACT,YAAY;YACZ,UAAU;YACV,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;IACF;AAEO,MAAMC,mBAAmB,IAAkB;QAChD,eAAe;QACf,kBAAkB;QAClB,gBAAgB;QAChB,sBAAsB;QACtB,iBAAiB;QACjB,2BAA2B;YAAC;YAAG;YAAK;SAAI;QACxC,OAAO;YACL,SAAS;YACT,YAAY;YACZ,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,OAAO;YACL,SAAS;YACT,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;YACX,cAAc;gBAAC;gBAAG;aAAE;QACtB;QACA,MAAM;YACJ,SAAS;YACT,YAAY;YACZ,UAAU;YACV,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;IACF;AAEO,MAAMC,oBAAoB,IAAoB;QACnD,MAAM;QACN,MAAM;QACN,OAAO;YACL,SAAS;YACT,YAAY;YACZ,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,OAAO;YACL,SAAS;YACT,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;YACX,cAAc;gBAAC;gBAAG;aAAE;QACtB;QACA,MAAM;YACJ,SAAS;YACT,YAAY;YACZ,UAAU;YACV,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;IACF;AAEO,MAAMC,kBAAkB,IAAkB;QAC/C,eAAe;QACf,kBAAkB;QAClB,gBAAgB;QAChB,sBAAsB;QACtB,iBAAiB;QACjB,2BAA2B;YAAC;YAAG;YAAK;SAAI;QACxC,OAAO;YACL,SAAS;YACT,YAAY;YACZ,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,OAAO;YACL,SAAS;YACT,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;YACX,cAAc;gBAAC;gBAAG;aAAE;QACtB;QACA,MAAM;YACJ,SAAS;YACT,YAAY;YACZ,UAAU;YACV,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;IACF"}
|
package/dist/umd/index.js
CHANGED
|
@@ -228,6 +228,7 @@
|
|
|
228
228
|
registerAreaPercent: ()=>registerAreaPercent,
|
|
229
229
|
zMeasureEncoding: ()=>zMeasureEncoding,
|
|
230
230
|
zBarPercent: ()=>zBarPercent,
|
|
231
|
+
DimAxisType: ()=>DimAxisType,
|
|
231
232
|
zTheme: ()=>zTheme,
|
|
232
233
|
zDatum: ()=>zDatum,
|
|
233
234
|
barAdvancedPipeline: ()=>barAdvancedPipeline,
|
|
@@ -1639,6 +1640,7 @@
|
|
|
1639
1640
|
const MeasureName = FoldMeasureName;
|
|
1640
1641
|
const FoldPrimaryMeasureValue = '__MeaPrimaryValue__';
|
|
1641
1642
|
const FoldSecondaryMeasureValue = '__MeaSecondaryValue__';
|
|
1643
|
+
const DimAxisType = '__Dim_AxisType__';
|
|
1642
1644
|
const FoldXMeasureValue = '__MeaXValue__';
|
|
1643
1645
|
const FoldYMeasureValue = '__MeaYValue__';
|
|
1644
1646
|
const FoldXMeasureId = '__MeaXId__';
|
|
@@ -2331,7 +2333,8 @@
|
|
|
2331
2333
|
encoding.tooltip = chunk_QJLMYOTX_i([
|
|
2332
2334
|
...encoding.tooltip || [],
|
|
2333
2335
|
...label,
|
|
2334
|
-
...tooltip
|
|
2336
|
+
...tooltip,
|
|
2337
|
+
...color
|
|
2335
2338
|
]);
|
|
2336
2339
|
};
|
|
2337
2340
|
const pickDimensionsForReshape = (advancedVSeed)=>{
|
|
@@ -2842,8 +2845,8 @@
|
|
|
2842
2845
|
].find((f)=>f.id === id)?.alias || '';
|
|
2843
2846
|
return alias;
|
|
2844
2847
|
}).join(' & ');
|
|
2845
|
-
const
|
|
2846
|
-
const
|
|
2848
|
+
const isNil = (value)=>null == value;
|
|
2849
|
+
const common_isNil = isNil;
|
|
2847
2850
|
const bandAxisStyle = (config)=>{
|
|
2848
2851
|
const { visible = true, label, tick, title, grid, line, labelAutoHide, labelAutoHideGap, labelAutoLimit, labelAutoLimitLength = 80, labelAutoRotate, labelAutoRotateAngleRange } = config;
|
|
2849
2852
|
return {
|
|
@@ -2927,7 +2930,7 @@
|
|
|
2927
2930
|
0.075,
|
|
2928
2931
|
0.1
|
|
2929
2932
|
];
|
|
2930
|
-
if (
|
|
2933
|
+
if (common_isNil(bandAxis.title?.text)) bandAxis.title.text = defaultTitleText(measures, dimensions, encoding.x);
|
|
2931
2934
|
if (onlyMeasureId && bandAxis.label) {
|
|
2932
2935
|
const allDatasetReshapeInfo = pivotAllDatasetReshapeInfo || datasetReshapeInfo;
|
|
2933
2936
|
const colorIdMap = allDatasetReshapeInfo.reduce((prev, cur)=>({
|
|
@@ -3700,7 +3703,7 @@
|
|
|
3700
3703
|
...spec
|
|
3701
3704
|
};
|
|
3702
3705
|
const { advancedVSeed, vseed } = context;
|
|
3703
|
-
const { measures = [], datasetReshapeInfo, chartType, dimensions = [], encoding } = advancedVSeed;
|
|
3706
|
+
const { measures = [], datasetReshapeInfo, chartType, dimensions = [], encoding, reshapeMeasures = [] } = advancedVSeed;
|
|
3704
3707
|
const baseConfig = advancedVSeed.config[chartType];
|
|
3705
3708
|
const { tooltip = {
|
|
3706
3709
|
enable: true
|
|
@@ -3720,13 +3723,13 @@
|
|
|
3720
3723
|
title: {
|
|
3721
3724
|
visible: true
|
|
3722
3725
|
},
|
|
3723
|
-
content: createDimensionContent(dimensions, measures, foldInfo, unfoldInfo)
|
|
3726
|
+
content: createDimensionContent(dimensions, measures, foldInfo, unfoldInfo, reshapeMeasures.length > 1)
|
|
3724
3727
|
},
|
|
3725
3728
|
updateElement: updateTooltipElement
|
|
3726
3729
|
};
|
|
3727
3730
|
return result;
|
|
3728
3731
|
};
|
|
3729
|
-
const createDimensionContent = (dimensions = [], measures = [], foldInfo, unfoldInfo)=>{
|
|
3732
|
+
const createDimensionContent = (dimensions = [], measures = [], foldInfo, unfoldInfo, hasMultiMeasureGroup)=>{
|
|
3730
3733
|
const { measureId, measureValue, foldMap } = foldInfo;
|
|
3731
3734
|
const { encodingColor } = unfoldInfo;
|
|
3732
3735
|
return [
|
|
@@ -3737,7 +3740,12 @@
|
|
|
3737
3740
|
key: dimensions.some((d)=>'color' === d.encoding) ? (v)=>{
|
|
3738
3741
|
const datum = v;
|
|
3739
3742
|
const key = datum && datum[encodingColor] || '';
|
|
3740
|
-
|
|
3743
|
+
const colorKey = `${unfoldInfo.colorIdMap[key].alias ?? key}`;
|
|
3744
|
+
if (hasMultiMeasureGroup) {
|
|
3745
|
+
const mId = datum && datum[measureId] || '';
|
|
3746
|
+
return `${colorKey}-${foldMap[mId] ?? mId}`;
|
|
3747
|
+
}
|
|
3748
|
+
return colorKey;
|
|
3741
3749
|
} : (v)=>{
|
|
3742
3750
|
const datum = v;
|
|
3743
3751
|
const key = datum && datum[measureId] || '';
|
|
@@ -4299,8 +4307,6 @@
|
|
|
4299
4307
|
return fuzzy ? "number" === type : "number" === type || isType(value, "Number");
|
|
4300
4308
|
};
|
|
4301
4309
|
const common_isNumber = isNumber;
|
|
4302
|
-
const isNil = (value)=>null == value;
|
|
4303
|
-
const common_isNil = isNil;
|
|
4304
4310
|
const clamp_clamp = function(input, min, max) {
|
|
4305
4311
|
return input < min ? min : input > max ? max : input;
|
|
4306
4312
|
};
|
|
@@ -5661,7 +5667,8 @@
|
|
|
5661
5667
|
encoding.tooltip = chunk_QJLMYOTX_i([
|
|
5662
5668
|
...encoding.tooltip || [],
|
|
5663
5669
|
...label,
|
|
5664
|
-
...tooltip
|
|
5670
|
+
...tooltip,
|
|
5671
|
+
...color
|
|
5665
5672
|
]);
|
|
5666
5673
|
};
|
|
5667
5674
|
const columnConfig = (advancedVSeed, context)=>{
|
|
@@ -6945,7 +6952,8 @@
|
|
|
6945
6952
|
encoding.tooltip = chunk_QJLMYOTX_i([
|
|
6946
6953
|
...encoding.tooltip || [],
|
|
6947
6954
|
...label,
|
|
6948
|
-
...tooltip
|
|
6955
|
+
...tooltip,
|
|
6956
|
+
...color
|
|
6949
6957
|
]);
|
|
6950
6958
|
};
|
|
6951
6959
|
const sortYBandAxis = (advancedVSeed, context)=>{
|
|
@@ -7117,7 +7125,7 @@
|
|
|
7117
7125
|
0.075,
|
|
7118
7126
|
0.1
|
|
7119
7127
|
];
|
|
7120
|
-
if (
|
|
7128
|
+
if (common_isNil(bandAxis.title?.text)) bandAxis.title.text = defaultTitleText(measures, dimensions, encoding.y);
|
|
7121
7129
|
if (onlyMeasureId && bandAxis.label) {
|
|
7122
7130
|
const allDatasetReshapeInfo = pivotAllDatasetReshapeInfo || datasetReshapeInfo;
|
|
7123
7131
|
const colorIdMap = allDatasetReshapeInfo.reduce((prev, cur)=>({
|
|
@@ -7829,7 +7837,8 @@
|
|
|
7829
7837
|
encoding.tooltip = chunk_QJLMYOTX_i([
|
|
7830
7838
|
...encoding.tooltip || [],
|
|
7831
7839
|
...label,
|
|
7832
|
-
...tooltip
|
|
7840
|
+
...tooltip,
|
|
7841
|
+
...color
|
|
7833
7842
|
]);
|
|
7834
7843
|
};
|
|
7835
7844
|
const scatterConfig = (advancedVSeed, context)=>{
|
|
@@ -8804,7 +8813,8 @@
|
|
|
8804
8813
|
encoding.tooltip = chunk_QJLMYOTX_i([
|
|
8805
8814
|
...encoding.tooltip || [],
|
|
8806
8815
|
...label,
|
|
8807
|
-
...tooltip
|
|
8816
|
+
...tooltip,
|
|
8817
|
+
...color
|
|
8808
8818
|
]);
|
|
8809
8819
|
};
|
|
8810
8820
|
const reshapeWithDualEncoding = (advancedVSeed, context)=>{
|
|
@@ -8831,6 +8841,9 @@
|
|
|
8831
8841
|
foldMeasureValue: FoldPrimaryMeasureValue,
|
|
8832
8842
|
colorMeasureId: getColorMeasureId(advancedVSeed, vseed)
|
|
8833
8843
|
});
|
|
8844
|
+
primaryResult.dataset.forEach((row)=>{
|
|
8845
|
+
row[DimAxisType] = 'primaryYAxis';
|
|
8846
|
+
});
|
|
8834
8847
|
datasets.push(primaryResult.dataset);
|
|
8835
8848
|
foldInfoList.push(primaryResult.foldInfo);
|
|
8836
8849
|
unfoldInfoList.push(primaryResult.unfoldInfo);
|
|
@@ -8841,6 +8854,9 @@
|
|
|
8841
8854
|
foldMeasureValue: FoldSecondaryMeasureValue,
|
|
8842
8855
|
colorMeasureId: getColorMeasureId(advancedVSeed, vseed)
|
|
8843
8856
|
});
|
|
8857
|
+
secondaryResult.dataset.forEach((row)=>{
|
|
8858
|
+
row[DimAxisType] = 'secondaryYAxis';
|
|
8859
|
+
});
|
|
8844
8860
|
datasets.push(secondaryResult.dataset);
|
|
8845
8861
|
foldInfoList.push(secondaryResult.foldInfo);
|
|
8846
8862
|
unfoldInfoList.push(secondaryResult.unfoldInfo);
|
|
@@ -8896,6 +8912,9 @@
|
|
|
8896
8912
|
colorMeasureId: getColorMeasureId(advancedVSeed, vseed),
|
|
8897
8913
|
omitIds: allMeasuresIds
|
|
8898
8914
|
});
|
|
8915
|
+
primaryResult.dataset.forEach((row)=>{
|
|
8916
|
+
row[DimAxisType] = 'primaryYAxis';
|
|
8917
|
+
});
|
|
8899
8918
|
datasets.push(primaryResult.dataset);
|
|
8900
8919
|
foldInfoList.push(primaryResult.foldInfo);
|
|
8901
8920
|
unfoldInfoList.push(primaryResult.unfoldInfo);
|
|
@@ -8907,6 +8926,9 @@
|
|
|
8907
8926
|
colorMeasureId: getColorMeasureId(advancedVSeed, vseed),
|
|
8908
8927
|
omitIds: allMeasuresIds
|
|
8909
8928
|
});
|
|
8929
|
+
secondaryResult.dataset.forEach((row)=>{
|
|
8930
|
+
row[DimAxisType] = 'secondaryYAxis';
|
|
8931
|
+
});
|
|
8910
8932
|
datasets.push(secondaryResult.dataset);
|
|
8911
8933
|
foldInfoList.push(secondaryResult.foldInfo);
|
|
8912
8934
|
unfoldInfoList.push(secondaryResult.unfoldInfo);
|
|
@@ -9087,6 +9109,7 @@
|
|
|
9087
9109
|
break;
|
|
9088
9110
|
case 'column':
|
|
9089
9111
|
result.type = 'bar';
|
|
9112
|
+
result.stack = true;
|
|
9090
9113
|
result.zIndex = 1000;
|
|
9091
9114
|
break;
|
|
9092
9115
|
case 'columnParallel':
|
|
@@ -9126,11 +9149,8 @@
|
|
|
9126
9149
|
zIndex: 1001
|
|
9127
9150
|
};
|
|
9128
9151
|
const { advancedVSeed } = context;
|
|
9129
|
-
const { datasetReshapeInfo
|
|
9130
|
-
|
|
9131
|
-
const chartTypes = reshapeMeasures[index].map((m)=>m.chartType);
|
|
9132
|
-
const type = chartTypes.every((ct)=>'column' === ct) && reshapeMeasures[index].length > 1 && reshapeMeasures[index].some((m)=>'primaryYAxis' === m.encoding) && reshapeMeasures[index].some((m)=>'secondaryYAxis' === m.encoding) ? 'columnParallel' : options.chartType;
|
|
9133
|
-
applyChartType(result, type, datasetReshapeInfo);
|
|
9152
|
+
const { datasetReshapeInfo } = advancedVSeed;
|
|
9153
|
+
applyChartType(result, options.chartType, datasetReshapeInfo);
|
|
9134
9154
|
return result;
|
|
9135
9155
|
};
|
|
9136
9156
|
const datasetDualAxis = (options)=>(spec, context)=>{
|
|
@@ -9192,7 +9212,7 @@
|
|
|
9192
9212
|
...spec
|
|
9193
9213
|
};
|
|
9194
9214
|
const { advancedVSeed, vseed } = context;
|
|
9195
|
-
const { measures = [], datasetReshapeInfo, chartType, dimensions = [], encoding } = advancedVSeed;
|
|
9215
|
+
const { measures = [], datasetReshapeInfo, chartType, dimensions = [], encoding, reshapeMeasures = [] } = advancedVSeed;
|
|
9196
9216
|
const baseConfig = advancedVSeed.config[chartType];
|
|
9197
9217
|
const { tooltip = {
|
|
9198
9218
|
enable: true
|
|
@@ -9211,7 +9231,7 @@
|
|
|
9211
9231
|
title: {
|
|
9212
9232
|
visible: true
|
|
9213
9233
|
},
|
|
9214
|
-
content: createDimensionContent(dimensions, measures, options.foldInfo, unfoldInfo)
|
|
9234
|
+
content: createDimensionContent(dimensions, measures, options.foldInfo, unfoldInfo, reshapeMeasures.length > 1)
|
|
9215
9235
|
}
|
|
9216
9236
|
};
|
|
9217
9237
|
return result;
|
|
@@ -9248,6 +9268,19 @@
|
|
|
9248
9268
|
if ('area' === spec.type) return pipe(spec, context);
|
|
9249
9269
|
return spec;
|
|
9250
9270
|
};
|
|
9271
|
+
const adjustXField = (spec)=>{
|
|
9272
|
+
const result = {
|
|
9273
|
+
...spec
|
|
9274
|
+
};
|
|
9275
|
+
const chartTypes = (spec.series ?? []).map((s)=>s.type);
|
|
9276
|
+
if (chartTypes.length > 1 && chartTypes.filter((type)=>'bar' === type).length > 1) result.series.forEach((s)=>{
|
|
9277
|
+
if ('bar' === s.type && !Array.isArray(s.xField)) s.xField = [
|
|
9278
|
+
s.xField,
|
|
9279
|
+
DimAxisType
|
|
9280
|
+
];
|
|
9281
|
+
});
|
|
9282
|
+
return result;
|
|
9283
|
+
};
|
|
9251
9284
|
const yLinearPrimary = (spec, context)=>{
|
|
9252
9285
|
const result = {
|
|
9253
9286
|
...spec
|
|
@@ -9429,6 +9462,7 @@
|
|
|
9429
9462
|
lineStyleFilter(colorLineStyleFill(lineStyle_lineStyle)),
|
|
9430
9463
|
areaStyleFilter(colorAreaStyleFill(areaStyle_areaStyle))
|
|
9431
9464
|
]),
|
|
9465
|
+
adjustXField,
|
|
9432
9466
|
xBand,
|
|
9433
9467
|
yLinearPrimary,
|
|
9434
9468
|
yLinearSecondary,
|
|
@@ -9465,6 +9499,7 @@
|
|
|
9465
9499
|
lineStyleFilter(colorLineStyleFill(lineStyle_lineStyle)),
|
|
9466
9500
|
areaStyleFilter(colorAreaStyleFill(areaStyle_areaStyle))
|
|
9467
9501
|
]),
|
|
9502
|
+
adjustXField,
|
|
9468
9503
|
xBand,
|
|
9469
9504
|
yLinearPrimary,
|
|
9470
9505
|
pivotAxisStyle(yLinearSecondary),
|
|
@@ -9552,7 +9587,8 @@
|
|
|
9552
9587
|
encoding.tooltip = chunk_QJLMYOTX_i([
|
|
9553
9588
|
...encoding.tooltip || [],
|
|
9554
9589
|
...label,
|
|
9555
|
-
...tooltip
|
|
9590
|
+
...tooltip,
|
|
9591
|
+
...color
|
|
9556
9592
|
]);
|
|
9557
9593
|
};
|
|
9558
9594
|
const pieAdvancedPipeline = [
|
|
@@ -9882,7 +9918,8 @@
|
|
|
9882
9918
|
encoding.tooltip = chunk_QJLMYOTX_i([
|
|
9883
9919
|
...encoding.tooltip || [],
|
|
9884
9920
|
...label,
|
|
9885
|
-
...tooltip
|
|
9921
|
+
...tooltip,
|
|
9922
|
+
...color
|
|
9886
9923
|
]);
|
|
9887
9924
|
};
|
|
9888
9925
|
const roseAdvancedPipeline = [
|
|
@@ -10231,7 +10268,8 @@
|
|
|
10231
10268
|
encoding.tooltip = chunk_QJLMYOTX_i([
|
|
10232
10269
|
...encoding.tooltip || [],
|
|
10233
10270
|
...label,
|
|
10234
|
-
...tooltip
|
|
10271
|
+
...tooltip,
|
|
10272
|
+
...color
|
|
10235
10273
|
]);
|
|
10236
10274
|
};
|
|
10237
10275
|
const radarAdvancedPipeline = [
|
|
@@ -10446,7 +10484,8 @@
|
|
|
10446
10484
|
encoding.tooltip = chunk_QJLMYOTX_i([
|
|
10447
10485
|
...encoding.tooltip || [],
|
|
10448
10486
|
...label,
|
|
10449
|
-
...tooltip
|
|
10487
|
+
...tooltip,
|
|
10488
|
+
...color
|
|
10450
10489
|
]);
|
|
10451
10490
|
};
|
|
10452
10491
|
const funnelAdvancedPipeline = [
|
|
@@ -11030,7 +11069,8 @@
|
|
|
11030
11069
|
encoding.tooltip = chunk_QJLMYOTX_i([
|
|
11031
11070
|
...encoding.tooltip || [],
|
|
11032
11071
|
...label,
|
|
11033
|
-
...tooltip
|
|
11072
|
+
...tooltip,
|
|
11073
|
+
...color
|
|
11034
11074
|
]);
|
|
11035
11075
|
};
|
|
11036
11076
|
function toNumber(a) {
|
|
@@ -11500,7 +11540,7 @@
|
|
|
11500
11540
|
defaultContent
|
|
11501
11541
|
];
|
|
11502
11542
|
};
|
|
11503
|
-
const tooltipBoxplot_createDimensionContent = (dimensions, measures, unfoldInfo, medianAlias)=>{
|
|
11543
|
+
const tooltipBoxplot_createDimensionContent = (dimensions, measures, unfoldInfo, medianAlias, hasMultiMeasureGroup)=>{
|
|
11504
11544
|
const { encodingColor } = unfoldInfo;
|
|
11505
11545
|
return [
|
|
11506
11546
|
{
|
|
@@ -11510,7 +11550,13 @@
|
|
|
11510
11550
|
key: dimensions.some((d)=>'color' === d.encoding) ? (v)=>{
|
|
11511
11551
|
const datum = v;
|
|
11512
11552
|
const key = datum && datum[encodingColor] || '';
|
|
11513
|
-
|
|
11553
|
+
const colorKey = `${unfoldInfo.colorIdMap[key].alias ?? key}(${medianAlias})`;
|
|
11554
|
+
if (hasMultiMeasureGroup) {
|
|
11555
|
+
const id = datum[MeasureId];
|
|
11556
|
+
const measure = findMeasureById(measures, id);
|
|
11557
|
+
return measure ? `${colorKey}-${measure.alias ?? id}` : colorKey;
|
|
11558
|
+
}
|
|
11559
|
+
return colorKey;
|
|
11514
11560
|
} : (v)=>{
|
|
11515
11561
|
const datum = v;
|
|
11516
11562
|
return `${datum[MeasureName] ?? datum[MeasureId]}(${medianAlias})`;
|
|
@@ -11902,7 +11948,8 @@
|
|
|
11902
11948
|
encoding.tooltip = chunk_QJLMYOTX_i([
|
|
11903
11949
|
...encoding.tooltip || [],
|
|
11904
11950
|
...label,
|
|
11905
|
-
...tooltip
|
|
11951
|
+
...tooltip,
|
|
11952
|
+
...color
|
|
11906
11953
|
]);
|
|
11907
11954
|
};
|
|
11908
11955
|
const subBin = (data, options)=>{
|
|
@@ -13121,7 +13168,6 @@
|
|
|
13121
13168
|
},
|
|
13122
13169
|
title: {
|
|
13123
13170
|
visible: false,
|
|
13124
|
-
titleText: '',
|
|
13125
13171
|
titleColor: '#606773',
|
|
13126
13172
|
titleFontSize: 12,
|
|
13127
13173
|
titleFontWeight: 400
|
|
@@ -13167,7 +13213,6 @@
|
|
|
13167
13213
|
},
|
|
13168
13214
|
title: {
|
|
13169
13215
|
visible: false,
|
|
13170
|
-
titleText: '',
|
|
13171
13216
|
titleColor: '#606773',
|
|
13172
13217
|
titleFontSize: 12,
|
|
13173
13218
|
titleFontWeight: 400
|
|
@@ -13205,7 +13250,6 @@
|
|
|
13205
13250
|
},
|
|
13206
13251
|
title: {
|
|
13207
13252
|
visible: false,
|
|
13208
|
-
titleText: '',
|
|
13209
13253
|
titleColor: '#BBBDC3',
|
|
13210
13254
|
titleFontSize: 12,
|
|
13211
13255
|
titleFontWeight: 400
|
|
@@ -13251,7 +13295,6 @@
|
|
|
13251
13295
|
},
|
|
13252
13296
|
title: {
|
|
13253
13297
|
visible: false,
|
|
13254
|
-
titleText: '',
|
|
13255
13298
|
titleColor: '#BBBDC3',
|
|
13256
13299
|
titleFontSize: 12,
|
|
13257
13300
|
titleFontWeight: 400
|