From 012e5dcbc0b536e66537ee5dd0982262ad4cdea3 Mon Sep 17 00:00:00 2001
From: Yaozong Liu <750188453@qq.com>
Date: Mon, 10 May 2021 23:19:24 +0800
Subject: [PATCH] feat(plugin-chart-echarts): Echarts Treemap (#1094)
* feat(plugin-chart-echarts): add echarts treemap plugin
* fix(plugin-chart-echarts): add sort descending
* fix(plugin-chart-echarts): add label position and set clear before setOption
* fix(plugin-chart-echarts): metric -> metrics
* fix(plugin-chart-echarts): change thumbnail.
* fix(plugin-chart-echarts): fix treemap transformProps test
* fix(plugin-chart-echarts): clear nouse types
* fix(plugin-chart-echarts): storybook data
* fix(plugin-chart-echarts): remove features
* fix(plugin-chart-echarts): add forceClear
* fix(plugin-chart-echarts): change storybook data
* fix(plugin-chart-echarts): enhancements
* fix(plugin-chart-echarts): enhancements for color and fix ci
---
.../superset-ui-demo/.storybook/preview.js | 3 +-
.../plugin-chart-echarts/Treemap/Stories.tsx | 35 +++
.../plugin-chart-echarts/Treemap/data.ts | 50 ++++
.../src/Treemap/EchartsTreemap.tsx | 25 ++
.../src/Treemap/buildQuery.ts | 27 ++
.../src/Treemap/controlPanel.tsx | 161 ++++++++++++
.../src/Treemap/images/thumbnail.png | Bin 0 -> 167011 bytes
.../plugin-chart-echarts/src/Treemap/index.ts | 55 ++++
.../src/Treemap/transformProps.ts | 235 ++++++++++++++++++
.../plugin-chart-echarts/src/Treemap/types.ts | 62 +++++
.../src/components/Echart.tsx | 5 +
.../plugins/plugin-chart-echarts/src/index.ts | 1 +
.../plugins/plugin-chart-echarts/src/types.ts | 1 +
.../test/Treemap/buildQuery.test.ts | 36 +++
.../test/Treemap/transformProps.test.ts | 74 ++++++
.../plugin-chart-echarts/test/index.test.ts | 2 +
16 files changed, 771 insertions(+), 1 deletion(-)
create mode 100644 superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Treemap/Stories.tsx
create mode 100644 superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Treemap/data.ts
create mode 100644 superset-frontend/temporary_superset_ui/superset-ui/plugins/plugin-chart-echarts/src/Treemap/EchartsTreemap.tsx
create mode 100644 superset-frontend/temporary_superset_ui/superset-ui/plugins/plugin-chart-echarts/src/Treemap/buildQuery.ts
create mode 100644 superset-frontend/temporary_superset_ui/superset-ui/plugins/plugin-chart-echarts/src/Treemap/controlPanel.tsx
create mode 100644 superset-frontend/temporary_superset_ui/superset-ui/plugins/plugin-chart-echarts/src/Treemap/images/thumbnail.png
create mode 100644 superset-frontend/temporary_superset_ui/superset-ui/plugins/plugin-chart-echarts/src/Treemap/index.ts
create mode 100644 superset-frontend/temporary_superset_ui/superset-ui/plugins/plugin-chart-echarts/src/Treemap/transformProps.ts
create mode 100644 superset-frontend/temporary_superset_ui/superset-ui/plugins/plugin-chart-echarts/src/Treemap/types.ts
create mode 100644 superset-frontend/temporary_superset_ui/superset-ui/plugins/plugin-chart-echarts/test/Treemap/buildQuery.test.ts
create mode 100644 superset-frontend/temporary_superset_ui/superset-ui/plugins/plugin-chart-echarts/test/Treemap/transformProps.test.ts
diff --git a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-demo/.storybook/preview.js b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-demo/.storybook/preview.js
index 45f793ead2b1..49d62d221f80 100644
--- a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-demo/.storybook/preview.js
+++ b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-demo/.storybook/preview.js
@@ -1,6 +1,7 @@
import { addParameters, addDecorator } from '@storybook/react';
import { jsxDecorator } from 'storybook-addon-jsx';
import categoricalD3 from '@superset-ui/core/lib/color/colorSchemes/categorical/d3';
+import categoricalSuperset from '@superset-ui/core/lib/color/colorSchemes/categorical/superset';
import sequentialCommon from '@superset-ui/core/lib/color/colorSchemes/sequential/common';
import sequentialD3 from '@superset-ui/core/lib/color/colorSchemes/sequential/d3';
import {
@@ -55,7 +56,7 @@ configure();
// Register color schemes
const categoricalSchemeRegistry = getCategoricalSchemeRegistry();
-[categoricalD3].forEach(group => {
+[categoricalD3, categoricalSuperset].forEach(group => {
group.forEach(scheme => {
categoricalSchemeRegistry.registerValue(scheme.id, scheme);
});
diff --git a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Treemap/Stories.tsx b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Treemap/Stories.tsx
new file mode 100644
index 000000000000..1e960215ea05
--- /dev/null
+++ b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Treemap/Stories.tsx
@@ -0,0 +1,35 @@
+import React from 'react';
+import { SuperChart, getChartTransformPropsRegistry } from '@superset-ui/core';
+import { boolean, withKnobs, select } from '@storybook/addon-knobs';
+import { EchartsTreemapChartPlugin } from '@superset-ui/plugin-chart-echarts';
+import transformProps from '@superset-ui/plugin-chart-echarts/lib/Treemap/transformProps';
+import data from './data';
+import { withResizableChartDemo } from '../../../../shared/components/ResizableChartDemo';
+
+new EchartsTreemapChartPlugin().configure({ key: 'echarts-treemap' }).register();
+
+getChartTransformPropsRegistry().registerValue('echarts-treemap', transformProps);
+
+export default {
+ title: 'Chart Plugins|plugin-chart-echarts/Treemap',
+ decorators: [withKnobs, withResizableChartDemo],
+};
+
+export const Treemap = ({ width, height }) => {
+ return (
+
%LfvYN4t`ALRwXFxgLf2eFK!0X}_`MP$)O)S>erBxhmwc&y>4kIT{&&&(S~T
zRcP Zqq3mEw
zxlGBtK33c&UHl}^Y<)f$yLKya860Aox#qRP-;R~RT|DgJ@1U&)bFH5kBT7@vj8CWL
z59rs3qlM`}B2@Tb(Sn&(1qcQnMVVTQq-txTEKHF-X~MB+(T8xS{_;lJ@K;ejM!PpL
z9oMQ9^!cNuoicvQ(O?F}PAapsbCdT&qii*Dw_BtoVKyP`eB1SM2$GEsTtC8%5qy)L
zxuM+tSE~xKnf*+K%DmQ|vAqbz3`$spmGZn*_)#f@F~VS6=Dp6|j+ctv0ckH?dSpjs
zWFifZ
z-vGg%Bz+2tsr2sO*bJ@|S~5Pf94A>I=pwJ(1jGy;GU-
z){Xf7HP5KbyuH>B0DzqEuU-7vB8UvF-JbA`vZev38QHn0FT}2_dTVW7&cJzv*Ph=^
zJ8DwYFVg}5=-|KoljZmQmCVFD$s9<(I+RDj!|vi
nrRL&@#Q7p0iJV#QGGSjXuYlzRO;v6im|
zr(r%8bHc|K@jhi|h`q$Yzi!VXmvZ6FD3RlcLk20p?^HA+^M;`NnWyG^)w
_flPkq!f-A=1LRN4)ydJr#
zCfNU~EgO~9x6bTG4Gw&%BXD13d{{7AgD@)=