dotdata_widgets 0.1.0 → 0.1.1
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/README.md +19 -7
- package/css/colors.css +120 -0
- package/css/typography.css +35 -0
- package/css/widget.css +53 -3
- package/dist/index.js +2 -2
- package/lib/components/accordion/Accordion.js +18 -0
- package/lib/components/accordion/index.js +1 -0
- package/lib/components/input/index.js +1 -0
- package/lib/components/input/input.js +6 -0
- package/lib/extension.js +1 -14
- package/lib/feature-descriptor/feature-details/FeatureCorrelatedFeaturesTable.js +14 -0
- package/lib/feature-descriptor/feature-details/FeatureDistributionChart.js +190 -0
- package/lib/feature-descriptor/feature-details/FeatureStatisticsTable.js +36 -0
- package/lib/feature-descriptor/feature-details/index.js +3 -0
- package/lib/feature-descriptor/feature-explanation/FeatureExplanation.js +40 -0
- package/lib/feature-descriptor/feature-explanation/components/ColoredExplanationBlock.js +28 -0
- package/lib/feature-descriptor/feature-explanation/components/ColumnExplanationBlock.js +4 -0
- package/lib/feature-descriptor/feature-explanation/components/DataSlotExplanationBlock.js +4 -0
- package/lib/feature-descriptor/feature-explanation/components/PetExplanationBlock.js +3 -0
- package/lib/feature-descriptor/feature-explanation/components/TextExplanationBlock.js +2 -0
- package/lib/feature-descriptor/feature-explanation/components/TextWithDataSlotContextExplanationBlock.js +2 -0
- package/lib/feature-descriptor/feature-explanation/components/TopicExplanationBlock.js +2 -0
- package/lib/feature-descriptor/feature-explanation/components/UnknownExplanationBlock.js +2 -0
- package/lib/feature-descriptors-domain/exploration-path/exploration-path-header.js +13 -0
- package/lib/feature-descriptors-domain/exploration-path/exploration-path-join-list.js +8 -0
- package/lib/feature-descriptors-domain/exploration-path/index.js +2 -0
- package/lib/feature-descriptors-domain/grouped-domains-descriptions-list.js +47 -0
- package/lib/index.js +2 -15
- package/lib/models/column/column.js +1 -0
- package/lib/models/column/index.js +1 -0
- package/lib/models/feature/feature-histogram.js +16 -0
- package/lib/models/feature/feature-leaderboard.js +1 -0
- package/lib/models/feature/feature.js +12 -0
- package/lib/models/feature/index.js +2 -0
- package/lib/models/feature-descriptors-domain/fd-domain-description.js +1 -0
- package/lib/models/feature-descriptors-domain/fd-grouped-domain-descriptions.js +1 -0
- package/lib/models/feature-descriptors-domain/index.js +2 -0
- package/lib/models/feature-explanation/feature-explanation.model.js +26 -0
- package/lib/models/feature-explanation/index.js +1 -0
- package/lib/models/feature-leaderboard/feature-leaderboard.js +1 -0
- package/lib/models/feature-leaderboard/index.js +1 -0
- package/lib/models/feature-space/feature-space.js +1 -0
- package/lib/models/feature-space/index.js +1 -0
- package/lib/models/index.js +1 -0
- package/lib/plugin.js +7 -29
- package/lib/utils/asserations.js +5 -0
- package/lib/utils/index.js +3 -0
- package/lib/utils/localize.js +14 -0
- package/lib/utils/object/extract-property.js +6 -0
- package/lib/utils/object/index.js +2 -0
- package/lib/utils/object/is-set.js +6 -0
- package/lib/version.js +2 -6
- package/lib/widgets/FeatureLeaderboardWidget.js +63 -0
- package/lib/widgets/FeatureSpaceWidget.js +50 -0
- package/lib/widgets/feature-leaderboard/FeatureLeaderboardEntries.js +10 -0
- package/lib/widgets/feature-leaderboard/FeatureLeaderboardOverview.js +20 -0
- package/lib/widgets/feature-leaderboard/FeatureLeaderboardView.js +19 -0
- package/lib/widgets/feature-leaderboard/entry-item/FeatureLeaderboardEntryDetails.js +15 -0
- package/lib/widgets/feature-leaderboard/entry-item/FeatureLeaderboardEntryItem.js +20 -0
- package/lib/widgets/feature-space/FeatureExplorationPaths.js +37 -0
- package/lib/widgets/feature-space/FeatureSpaceDomainsDescriptions.js +53 -0
- package/lib/widgets/feature-space/FeatureSpaceView.js +9 -0
- package/lib/widgets/index.js +4 -0
- package/package.json +60 -37
package/README.md
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
|
|
2
|
-
#
|
|
2
|
+
# Dotdata widgets
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
[](https://codecov.io/gh/dotdata/dotdata_widgets)
|
|
4
|
+
A dotdata widget
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
### Prerequisites
|
|
7
|
+
1. nodejs >= 18
|
|
8
|
+
2. yarn (npm install yarn -g)
|
|
9
|
+
3. python 3
|
|
9
10
|
|
|
10
11
|
## Installation
|
|
11
12
|
|
|
@@ -25,8 +26,7 @@ jupyter nbextension enable --py [--sys-prefix|--user|--system] dotdata_widgets
|
|
|
25
26
|
|
|
26
27
|
Create a dev environment:
|
|
27
28
|
```bash
|
|
28
|
-
|
|
29
|
-
conda activate dotdata_widgets-dev
|
|
29
|
+
python -m venv venv/
|
|
30
30
|
```
|
|
31
31
|
|
|
32
32
|
Install the python. This will also build the TS package.
|
|
@@ -54,6 +54,18 @@ the `install` command every time that you rebuild your extension. For certain in
|
|
|
54
54
|
you might also need another flag instead of `--sys-prefix`, but we won't cover the meaning
|
|
55
55
|
of those flags here.
|
|
56
56
|
|
|
57
|
+
### Watch Mode
|
|
58
|
+
```bash
|
|
59
|
+
yarn run watch
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Docker
|
|
63
|
+
```bash
|
|
64
|
+
git clone ...
|
|
65
|
+
|
|
66
|
+
docker run -it --name dotdata_widget -v $(pwd)/dotdata_widgets:/dotdata_widgets -p 8889:8888 jupyter/scipy-notebook
|
|
67
|
+
```
|
|
68
|
+
|
|
57
69
|
### How to see your changes
|
|
58
70
|
#### Typescript:
|
|
59
71
|
If you use JupyterLab to develop then you can watch the source directory and run JupyterLab at the same time in different
|
package/css/colors.css
ADDED
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--c-red-50: #ffebee;
|
|
3
|
+
--c-red-100: #ffcdd2;
|
|
4
|
+
--c-red-200: #ef9a9a;
|
|
5
|
+
--c-red-300: #e57373;
|
|
6
|
+
--c-red-400: #ef5350;
|
|
7
|
+
--c-red-500: #f44336;
|
|
8
|
+
--c-red-600: #e53935;
|
|
9
|
+
--c-red-700: #d32f2f;
|
|
10
|
+
--c-red-800: #c62828;
|
|
11
|
+
--c-red-900: #b71c1c;
|
|
12
|
+
--c-purple-50: #f3e5f5;
|
|
13
|
+
--c-purple-100: #e1bee7;
|
|
14
|
+
--c-purple-200: #ce93d8;
|
|
15
|
+
--c-purple-300: #ba68c8;
|
|
16
|
+
--c-purple-400: #ab47bc;
|
|
17
|
+
--c-purple-500: #9c27b0;
|
|
18
|
+
--c-purple-600: #8e24aa;
|
|
19
|
+
--c-purple-700: #7b1fa2;
|
|
20
|
+
--c-purple-800: #6a1b9a;
|
|
21
|
+
--c-purple-900: #4a148c;
|
|
22
|
+
--c-cyan-50: #e0f7fa;
|
|
23
|
+
--c-cyan-100: #b2ebf2;
|
|
24
|
+
--c-cyan-200: #80deea;
|
|
25
|
+
--c-cyan-300: #4dd0e1;
|
|
26
|
+
--c-cyan-400: #26c6da;
|
|
27
|
+
--c-cyan-500: #00bcd4;
|
|
28
|
+
--c-cyan-600: #00acc1;
|
|
29
|
+
--c-cyan-700: #0097a7;
|
|
30
|
+
--c-cyan-800: #00838f;
|
|
31
|
+
--c-cyan-900: #006064;
|
|
32
|
+
--c-blue-50: #e3f2fd;
|
|
33
|
+
--c-blue-100: #bbdefb;
|
|
34
|
+
--c-blue-200: #90caf9;
|
|
35
|
+
--c-blue-300: #64b5f6;
|
|
36
|
+
--c-blue-400: #42a5f5;
|
|
37
|
+
--c-blue-500: #2196f3;
|
|
38
|
+
--c-blue-600: #1e88e5;
|
|
39
|
+
--c-blue-700: #1976d2;
|
|
40
|
+
--c-blue-800: #1565c0;
|
|
41
|
+
--c-blue-900: #0d47a1;
|
|
42
|
+
--c-light-blue-50: #e1f5fe;
|
|
43
|
+
--c-light-blue-100: #b3e5fc;
|
|
44
|
+
--c-light-blue-200: #81d4fa;
|
|
45
|
+
--c-light-blue-300: #4fc3f7;
|
|
46
|
+
--c-light-blue-400: #29b6f6;
|
|
47
|
+
--c-light-blue-500: #03a9f4;
|
|
48
|
+
--c-light-blue-600: #039be5;
|
|
49
|
+
--c-light-blue-700: #0288d1;
|
|
50
|
+
--c-light-blue-800: #0277bd;
|
|
51
|
+
--c-light-blue-900: #01579b;
|
|
52
|
+
--c-green-50: #e8f5e9;
|
|
53
|
+
--c-green-100: #c8e6c9;
|
|
54
|
+
--c-green-200: #a5d6a7;
|
|
55
|
+
--c-green-300: #81c784;
|
|
56
|
+
--c-green-400: #66bb6a;
|
|
57
|
+
--c-green-500: #4caf50;
|
|
58
|
+
--c-green-600: #43a047;
|
|
59
|
+
--c-green-700: #388e3c;
|
|
60
|
+
--c-green-800: #2e7d32;
|
|
61
|
+
--c-light-green-50: #f1f8e9;
|
|
62
|
+
--c-light-green-100: #dcedc8;
|
|
63
|
+
--c-light-green-200: #c5e1a5;
|
|
64
|
+
--c-light-green-300: #aed581;
|
|
65
|
+
--c-light-green-400: #9ccc65;
|
|
66
|
+
--c-light-green-500: #8bc34a;
|
|
67
|
+
--c-light-green-600: #7cb342;
|
|
68
|
+
--c-light-green-700: #689f38;
|
|
69
|
+
--c-light-green-800: #558b2f;
|
|
70
|
+
--c-light-green-900: #33691e;
|
|
71
|
+
--c-yellow-50: #fffde7;
|
|
72
|
+
--c-yellow-100: #fff9c4;
|
|
73
|
+
--c-yellow-200: #fff59d;
|
|
74
|
+
--c-yellow-300: #fff176;
|
|
75
|
+
--c-yellow-400: #ffee58;
|
|
76
|
+
--c-yellow-500: #ffeb3b;
|
|
77
|
+
--c-yellow-600: #fdd835;
|
|
78
|
+
--c-yellow-700: #fbc02d;
|
|
79
|
+
--c-yellow-800: #f9a825;
|
|
80
|
+
--c-yellow-900: #f57f17;
|
|
81
|
+
--c-amber-100: #ffecb3;
|
|
82
|
+
--c-amber-200: #ffe082;
|
|
83
|
+
--c-amber-300: #ffd54f;
|
|
84
|
+
--c-amber-400: #ffca28;
|
|
85
|
+
--c-amber-500: #ffc107;
|
|
86
|
+
--c-amber-600: #ffb300;
|
|
87
|
+
--c-amber-700: #ffa000;
|
|
88
|
+
--c-amber-800: #ff8f00;
|
|
89
|
+
--c-amber-900: #ff6f00;
|
|
90
|
+
--c-orange-50: #fff3e0;
|
|
91
|
+
--c-orange-100: #ffe0b2;
|
|
92
|
+
--c-orange-200: #ffcc80;
|
|
93
|
+
--c-orange-300: #ffb74d;
|
|
94
|
+
--c-orange-400: #ffa726;
|
|
95
|
+
--c-orange-500: #ff9800;
|
|
96
|
+
--c-orange-600: #fb8c00;
|
|
97
|
+
--c-orange-700: #f57c00;
|
|
98
|
+
--c-orange-800: #ef6c00;
|
|
99
|
+
--c-orange-900: #e65100;
|
|
100
|
+
--c-brown-50: #efebe9;
|
|
101
|
+
--c-brown-100: #d7ccc8;
|
|
102
|
+
--c-brown-200: #bcaaa4;
|
|
103
|
+
--c-brown-300: #a1887f;
|
|
104
|
+
--c-brown-400: #8d6e63;
|
|
105
|
+
--c-brown-500: #795548;
|
|
106
|
+
--c-brown-600: #6d4c41;
|
|
107
|
+
--c-brown-700: #5d4037;
|
|
108
|
+
--c-brown-800: #4e342e;
|
|
109
|
+
--c-brown-900: #3e2723;
|
|
110
|
+
--c-grey-50: #fafafa;
|
|
111
|
+
--c-grey-100: #f5f5f5;
|
|
112
|
+
--c-grey-200: #eee;
|
|
113
|
+
--c-grey-300: #e0e0e0;
|
|
114
|
+
--c-grey-400: #bdbdbd;
|
|
115
|
+
--c-grey-500: #9e9e9e;
|
|
116
|
+
--c-grey-600: #757575;
|
|
117
|
+
--c-grey-700: #616161;
|
|
118
|
+
--c-grey-800: #424242;
|
|
119
|
+
--c-grey-900: #212121;
|
|
120
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
h1,
|
|
2
|
+
.h1 {
|
|
3
|
+
font-size: 24px;
|
|
4
|
+
font-weight: 400;
|
|
5
|
+
line-height: 20px;
|
|
6
|
+
letter-spacing: 0;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
h2,
|
|
10
|
+
.h2 {
|
|
11
|
+
font-size: 20px;
|
|
12
|
+
font-weight: 400;
|
|
13
|
+
line-height: 30px;
|
|
14
|
+
letter-spacing: 0;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
h3,
|
|
18
|
+
.h3 {
|
|
19
|
+
font-size: 18px;
|
|
20
|
+
font-weight: 400;
|
|
21
|
+
line-height: 26px;
|
|
22
|
+
letter-spacing: 0;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.label {
|
|
26
|
+
font-size: 14px;
|
|
27
|
+
font-weight: 400;
|
|
28
|
+
line-height: 20px;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.label-bold {
|
|
32
|
+
font-size: 14px;
|
|
33
|
+
font-weight: 500;
|
|
34
|
+
line-height: 20px;
|
|
35
|
+
}
|
package/css/widget.css
CHANGED
|
@@ -1,4 +1,54 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
@import url('~@fontsource/roboto');
|
|
2
|
+
@import url('~@fontsource/roboto/500.css');
|
|
3
|
+
|
|
4
|
+
@import url('colors.css');
|
|
5
|
+
@import url('typography.css');
|
|
6
|
+
|
|
7
|
+
@import url('../src/components/accordion/accordion.css');
|
|
8
|
+
@import url('../src/components/input/input.css');
|
|
9
|
+
|
|
10
|
+
:root {
|
|
11
|
+
--c-text: var(--c-grey-900);
|
|
12
|
+
|
|
13
|
+
/* TABLE */
|
|
14
|
+
--table-border-color: var(--c-grey-300);
|
|
15
|
+
--table-header-color: var(--c-grey-600);
|
|
16
|
+
--table-row-height: 30px;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.dotdata-widget {
|
|
20
|
+
font-family: Roboto, serif;
|
|
21
|
+
font-size: 14px;
|
|
22
|
+
line-height: 20px;
|
|
23
|
+
color: var(--c-text);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
h1,
|
|
27
|
+
h2,
|
|
28
|
+
h3 {
|
|
29
|
+
margin-block: 0.4em;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.grey-label {
|
|
33
|
+
color: var(--c-grey-700);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.table {
|
|
37
|
+
border-collapse: collapse;
|
|
38
|
+
border-spacing: 0;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.table :is(th, td) {
|
|
42
|
+
padding: 0.3rem;
|
|
43
|
+
min-width: 50px;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.table :is(tr) {
|
|
47
|
+
height: var(--table-row-height);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.table th {
|
|
51
|
+
color: var(--table-header-color);
|
|
52
|
+
border-bottom: 1px solid var(--c-grey-300);
|
|
53
|
+
text-align: start;
|
|
4
54
|
}
|