visualifyjs 2.5.3-2.dev

Sign up to get free protection for your applications and to get access to all the features.
Files changed (147) hide show
  1. package/.github/workflows/static.yml.bak +51 -0
  2. package/LICENSE +674 -0
  3. package/README.md +59 -0
  4. package/config-overrides.js +31 -0
  5. package/dist/visualify.js +188 -0
  6. package/docs/.nojekyll +0 -0
  7. package/docs/docs/CLI.md +34 -0
  8. package/docs/docs/README.md +65 -0
  9. package/docs/docs/Rechart/bar.md +190 -0
  10. package/docs/docs/Rechart/funnel.md +241 -0
  11. package/docs/docs/Rechart/geo.md +0 -0
  12. package/docs/docs/Rechart/line.md +355 -0
  13. package/docs/docs/Rechart/liquidfill.md +0 -0
  14. package/docs/docs/Rechart/pie.md +225 -0
  15. package/docs/docs/Rechart/polar.md +0 -0
  16. package/docs/docs/Rechart/radar.md +253 -0
  17. package/docs/docs/Rechart/sankey.md +0 -0
  18. package/docs/docs/Rechart/scatter.md +298 -0
  19. package/docs/docs/Rechart/sunburst.md +0 -0
  20. package/docs/docs/Rechart/tree.md +0 -0
  21. package/docs/docs/Rechart/wordcloud.md +0 -0
  22. package/docs/docs/_404.md +52 -0
  23. package/docs/docs/_coverpage.md +11 -0
  24. package/docs/docs/_sidebar.md +44 -0
  25. package/docs/docs/components/dotBio.md +34 -0
  26. package/docs/docs/components/echart.md +82 -0
  27. package/docs/docs/components/html.md +34 -0
  28. package/docs/docs/components/macaron.md +145 -0
  29. package/docs/docs/components/markdown.md +0 -0
  30. package/docs/docs/components/more.md +142 -0
  31. package/docs/docs/components/plotly.md +62 -0
  32. package/docs/docs/components/scatterL.md +70 -0
  33. package/docs/docs/components/visium.md +57 -0
  34. package/docs/docs/configuration.md +121 -0
  35. package/docs/docs/deploy.md +31 -0
  36. package/docs/docs/log.md +9 -0
  37. package/docs/docs/more-pages.md +23 -0
  38. package/docs/docs/quickstart.md +124 -0
  39. package/docs/docs/rechart-attributes.md +74 -0
  40. package/docs/docs/rechart-basic-usage.md +162 -0
  41. package/docs/docs/static/_images/deploy-github-pages.png +0 -0
  42. package/docs/docs/static/logo/favicon.ico +0 -0
  43. package/docs/docs/static/logo/logo_128x128.png +0 -0
  44. package/docs/docs/static/logo/logo_192x192.png +0 -0
  45. package/docs/docs/static/logo/logo_256x256.png +0 -0
  46. package/docs/docs/static/logo/logo_512x512.png +0 -0
  47. package/docs/docs/static/logo/logo_64x64.png +0 -0
  48. package/docs/docs/theme.md +5 -0
  49. package/docs/index.html +71 -0
  50. package/docs/manifest.json +24 -0
  51. package/docs/static/css/fluff-stuff.css +170 -0
  52. package/docs/static/css/font-awesome.min.css +4 -0
  53. package/docs/static/css/visualify.css +25 -0
  54. package/docs/static/fonts/fontawesome-webfont.woff2 +0 -0
  55. package/docs/static/images/star.png +0 -0
  56. package/docs/static/js/configuration.js +448 -0
  57. package/docs/static/js/fluff.js +1 -0
  58. package/docs/static/js/visualify.js +188 -0
  59. package/docs/static/logo/favicon.ico +0 -0
  60. package/docs/static/logo/logo_128x128.png +0 -0
  61. package/docs/static/logo/logo_192x192.png +0 -0
  62. package/docs/static/logo/logo_256x256.png +0 -0
  63. package/docs/static/logo/logo_512x512.png +0 -0
  64. package/docs/static/logo/logo_64x64.png +0 -0
  65. package/package.json +84 -0
  66. package/rollup.config.mjs +76 -0
  67. package/src/_css/404.css +116 -0
  68. package/src/_css/App.css +38 -0
  69. package/src/_css/autoSuggestion.css +27 -0
  70. package/src/_css/circular-progress.css +33 -0
  71. package/src/_css/index.css +37 -0
  72. package/src/_css/modern.css +25 -0
  73. package/src/_media/404.png +0 -0
  74. package/src/_media/corner.svg +8 -0
  75. package/src/_media/download.svg +3 -0
  76. package/src/_media/icon.svg +1 -0
  77. package/src/_media/logo.svg +14 -0
  78. package/src/_test/App.test.js +15 -0
  79. package/src/_utils/reportWebVitals.js +13 -0
  80. package/src/core/appContext.js +27 -0
  81. package/src/core/components/Scatter.js +188 -0
  82. package/src/core/components/ScatterBio.js +572 -0
  83. package/src/core/components/VisiumPlot.js +165 -0
  84. package/src/core/components/browser.js +42 -0
  85. package/src/core/components/dotplot.js +413 -0
  86. package/src/core/components/html.js +29 -0
  87. package/src/core/components/list.js +178 -0
  88. package/src/core/components/macaron.js +201 -0
  89. package/src/core/components/markdown.js +56 -0
  90. package/src/core/components/parser.scatterBio.js +587 -0
  91. package/src/core/components/ratio.js +80 -0
  92. package/src/core/components/scatterL.js +173 -0
  93. package/src/core/components/searchbar.js +131 -0
  94. package/src/core/components/selection.js +193 -0
  95. package/src/core/components/timeline.js +281 -0
  96. package/src/core/components/visium.js +97 -0
  97. package/src/core/fetch/condfetch.js +82 -0
  98. package/src/core/fetch/fetch.js +92 -0
  99. package/src/core/fetch/json.js +29 -0
  100. package/src/core/fetch/vfetch.js +42 -0
  101. package/src/core/liveEditor.js +44 -0
  102. package/src/core/modules/codeEditorWithPreview.js +104 -0
  103. package/src/core/modules/echarts/common.js +20 -0
  104. package/src/core/modules/echarts/presetHandler.js +41 -0
  105. package/src/core/modules/echarts/presets/esodev.chromium.js +172 -0
  106. package/src/core/modules/echarts/presets/esodev.codex.js +130 -0
  107. package/src/core/modules/echarts/presets/esodev.visium.js +123 -0
  108. package/src/core/modules/echarts/presets/mmtrbc.js +186 -0
  109. package/src/core/modules/echarts.js +71 -0
  110. package/src/core/modules/echartsUtils.js +43 -0
  111. package/src/core/modules/echartswitcher.js +152 -0
  112. package/src/core/modules/replotly/presetHandler.js +24 -0
  113. package/src/core/modules/replotly/presets/minimum.js +18 -0
  114. package/src/core/modules/replotly/presets/mmtrbc.dot.js +114 -0
  115. package/src/core/modules/replotly/presets/mmtrbc.violin.js +100 -0
  116. package/src/core/modules/replotly.js +71 -0
  117. package/src/core/pages/404.js +50 -0
  118. package/src/core/pages/error.js +27 -0
  119. package/src/core/pages/jsonPage.js +62 -0
  120. package/src/core/pages/loading.js +44 -0
  121. package/src/core/parser/echart.data.js +183 -0
  122. package/src/core/parser/echart.features.js +125 -0
  123. package/src/core/parser/echart.general.js +147 -0
  124. package/src/core/parser/echart.hilbert.js +57 -0
  125. package/src/core/parser/echart.parser.js +210 -0
  126. package/src/core/parser/echart.series.js +67 -0
  127. package/src/core/parser/echart.types.js +76 -0
  128. package/src/core/parser/plotly.config.js +10 -0
  129. package/src/core/parser/plotly.data.js +132 -0
  130. package/src/core/parser/plotly.layout.js +10 -0
  131. package/src/core/parser/plotly.violin.js +18 -0
  132. package/src/core/recharts.js +62 -0
  133. package/src/core/router/alias.js +49 -0
  134. package/src/core/router/jsonRouter.js +31 -0
  135. package/src/core/themes/modern.js +32 -0
  136. package/src/core/themes/themeSelector.js +33 -0
  137. package/src/core/visualify.js +47 -0
  138. package/src/core/widgets/circularProgress.js +24 -0
  139. package/src/core/widgets/controller.js +83 -0
  140. package/src/core/widgets/errorBoundary.js +36 -0
  141. package/src/core/widgets/footer.js +177 -0
  142. package/src/core/widgets/header.js +234 -0
  143. package/src/core/widgets/layout/Grid.js +31 -0
  144. package/src/core/widgets/layout.js +36 -0
  145. package/src/core/widgets/mapping.js +42 -0
  146. package/src/index.js +62 -0
  147. package/src/setupTests.js +5 -0
@@ -0,0 +1,34 @@
1
+ # DotBio Component
2
+
3
+ The DotBio component is a dot plot that
4
+ displays the expression of genes in different cell types.
5
+
6
+
7
+ ## Properties
8
+
9
+ The DotBio component has the following properties:
10
+
11
+ - `type` (string): The type of the component, in this case `DotBio`.
12
+ - `id` (string): The unique identifier of the component.
13
+ - `row` (int): The row in which the component is to be displayed.
14
+ - `col` (int): The column in which the component is to be displayed.
15
+ - `rowspan` (int): The number of rows the component is to span.
16
+ - `colspan` (int): The number of columns the component is to span.
17
+ - `settings` (object): The settings of the component.
18
+ - `meta` (object): The metadata API of the component.
19
+ - `name` (string): The name of the metadata.
20
+ - `url` (string): The URL of the metadata.
21
+ - `exclude_celltype` (array): The cell types to be excluded.
22
+ - `gene` (string): The gene API.
23
+ - `genelist` (string): The genelist variable name we want to use.
24
+
25
+ ### settings Properties
26
+
27
+ The `settings` object has the following properties:
28
+
29
+ - `preset` (string): The preset of the component.
30
+ - `ignoreEmptyData` (boolean): Whether to ignore empty data or not.
31
+ - `showscale` (boolean): Whether to show the scale or not.
32
+ - `showlegend` (boolean): Whether to show the legend or not.
33
+
34
+
@@ -0,0 +1,82 @@
1
+ # Echart Component
2
+
3
+ The Echart component is a wrapper around the
4
+ [Apache ECharts](https://echarts.apache.org/en/index.html) library. It is used
5
+ to create a variety of visualizations including scatter plots, line charts, bar
6
+ charts, and more.
7
+
8
+ This Echart Component is same as the Rechart Component, but it is used for the
9
+ page mode, which enable the user to create a page with multiple components. And
10
+ it also **support the API to fetch the data**.
11
+
12
+ ## Properties
13
+
14
+ The Echart component has the following properties:
15
+
16
+ - `type` (string): The type of the component, in this case `Echart`.
17
+ - `id` (string): The unique identifier of the component.
18
+ - `row` (int): The row in which the component is to be displayed.
19
+ - `col` (int): The column in which the component is to be displayed.
20
+ - `rowspan` (int): The number of rows the component is to span.
21
+ - `colspan` (int): The number of columns the component is to span.
22
+ - `config` (object): The configuration of the component.
23
+ - `parser` (object): The parser of the component.
24
+ - `trigger` (object): The trigger of the component.
25
+
26
+ ### config Properties
27
+
28
+ The `config` object has the following properties:
29
+
30
+ - `width` (int): The width of the component.
31
+ - `height` (int): The height of the component.
32
+ - `preset` (string): The preset of the component.
33
+ - `title` (string): The title of the component.
34
+ - `xAxis` (string): The x-axis of the component.
35
+ - `yAxis` (string): The y-axis of the component.
36
+ - `legend` (string): The legend of the component.
37
+ - `tooltip` (string): The tooltip of the component.
38
+ - `data` (string): The data of the component.
39
+
40
+ ### parser Properties
41
+
42
+ The `parser` object has the following properties:
43
+
44
+ - `sources` (array): The sources of the component.
45
+ - `name` (string): The name of the trigger.
46
+ - `url` (string): The URL of the data.
47
+ - `type` (string): The type of the component.
48
+ - `responseKey` (string): The response key of the component.
49
+ - `trigger` (object): The trigger of the component.
50
+ - `title` (boolean): set the title to the triiger value.
51
+
52
+ ### Example
53
+
54
+ ```json
55
+ {
56
+ "id": "mmtrbc_tsne",
57
+ "type": "Echart",
58
+ "col": 2,
59
+ "rowspan": 3,
60
+ "config": {
61
+ "width": 600,
62
+ "height": 600,
63
+ "preset": "mmtrbc",
64
+ "title": " "
65
+ },
66
+ "parser": {
67
+ "sources": [{
68
+ "name": "metadata",
69
+ "url": "<your-backend-url>"
70
+ }, {
71
+ "name": "gene",
72
+ "url": "<your-backend-url>",
73
+ "responseKey": "gene",
74
+ "trigger": {
75
+ "name": "mmtrbc_gene",
76
+ "title": true
77
+ }
78
+ }],
79
+ "type": "scatter"
80
+ }
81
+ }
82
+ ```
@@ -0,0 +1,34 @@
1
+ # HTML Component
2
+
3
+ The HTML component is used to display HTML content on the page.
4
+
5
+ ## Properties
6
+
7
+ The HTML component has the following properties:
8
+
9
+ - `type` (string): The type of the component, in this case `HTML`.
10
+ - `id` (string): The unique identifier of the component.
11
+ - `row` (int): The row in which the component is to be displayed.
12
+ - `col` (int): The column in which the component is to be displayed.
13
+ - `colspan` (int): The number of columns the component is to span.
14
+ - `html` (string): The HTML content to be displayed.
15
+
16
+ ## Future Work
17
+
18
+ We will add the ability to fetch the HTML content from an API.
19
+
20
+ - `script` (string): The script to be executed.
21
+ - `style` (string): The style to be applied.
22
+
23
+ ### Example
24
+
25
+ ```json
26
+ {
27
+ "type": "HTML",
28
+ "row": 1,
29
+ "col": 2,
30
+ "colspan": 3,
31
+ "html": "<img style='width: 100%' src='./mainpage.png' alt='Abstract'>"
32
+ }
33
+ ```
34
+
@@ -0,0 +1,145 @@
1
+ # Macaron Component
2
+
3
+ The Macaron component is used to display a macaron plot for relation of nodes on
4
+ the page.
5
+
6
+ The Macaron component also has interactive features, such as the ability to drag
7
+ and drop nodes, and the ability to select nodes.
8
+
9
+ ## Properties
10
+
11
+ The Macaron component has the following properties:
12
+
13
+ - `type` (string): The type of the component, in this case `Macaron`.
14
+ - `id` (string): The unique identifier of the component.
15
+ - `row` (int): The row in which the component is to be displayed.
16
+ - `col` (int): The column in which the component is to be displayed.
17
+ - `config` (object): The configuration of the component.
18
+ - `data` (object): The data of the component.
19
+
20
+ ### config Properties
21
+
22
+ The `config` object has the following properties:
23
+
24
+ - `animation` (boolean): Whether to animate the component or not.
25
+ - `draggable` (boolean): Whether to make the component draggable or not.
26
+ - `height` (int): The height of the component.
27
+ - `unclickable` (array): The nodes that are unclickable.
28
+ - `symbolSize` (string): The size of the symbols in the component.
29
+ - `color` (object): The color of the component.
30
+ - `selected` (string): The color of the selected nodes.
31
+ - `unselectable` (string): The color of the unselectable nodes.
32
+
33
+ ### data Properties
34
+
35
+ The `data` object has the following properties:
36
+
37
+ - `nodes` (array): The nodes of the component.
38
+ - `name` (string): The name of the node.
39
+ - `category` (int): The category of the node.
40
+ - `value` (int): The value of the node.
41
+ - `edges` (array): The edges of the component.
42
+ - `categories` (array): The categories of the component.
43
+
44
+ ### Example
45
+
46
+ ```json
47
+ {
48
+ "id": "celltype",
49
+ "type": "Macaron",
50
+ "title": "Select Cell Type",
51
+ "style": {
52
+ "height": "350px",
53
+ "width": "350px",
54
+ "font": "Arial, sans-serif",
55
+ "border": ""
56
+ },
57
+ "data": {
58
+ "nodes": [{
59
+ "name": "Esophagus",
60
+ "category": 1,
61
+ "value": 216229
62
+ },
63
+ {
64
+ "name": "Epithelium",
65
+ "category": 2,
66
+ "value": 108800
67
+ },
68
+ {
69
+ "name": "Stroma",
70
+ "category": 2,
71
+ "value": 107429
72
+ },
73
+ {
74
+ "name": "EPI (E)",
75
+ "category": 3,
76
+ "value": 97799
77
+ },
78
+ {
79
+ "name": "ST (E)",
80
+ "category": 3,
81
+ "value": 1760
82
+ }
83
+ ],
84
+ "edges": [{
85
+ "source": "Esophagus",
86
+ "target": "Epithelium",
87
+ "level": 1
88
+ },
89
+ {
90
+ "source": "Esophagus",
91
+ "target": "Stroma",
92
+ "level": 1
93
+ },
94
+ {
95
+ "source": "Epithelium",
96
+ "target": "IM (E)",
97
+ "level": 2
98
+ },
99
+ {
100
+ "source": "Epithelium",
101
+ "target": "ERY (E)",
102
+ "level": 2
103
+ },
104
+ {
105
+ "source": "Stroma",
106
+ "target": "MES (S)",
107
+ "level": 2
108
+ },
109
+ {
110
+ "source": "Stroma",
111
+ "target": "ENS (S)",
112
+ "level": 2
113
+ },
114
+ {
115
+ "source": "Stroma",
116
+ "target": "ENDO (S)",
117
+ "level": 2
118
+ }
119
+ ],
120
+ "categories": [{
121
+ "name": "Category 1"
122
+ },
123
+ {
124
+ "name": "Category 2"
125
+ },
126
+ {
127
+ "name": "Category 3"
128
+ }
129
+ ]
130
+ },
131
+ "config": {
132
+ "animation": false,
133
+ "draggable": true,
134
+ "height": "88%",
135
+ "unclickable": ["EPI (S)", "Esophagus"],
136
+ "symbolSize": "value",
137
+ "color": {
138
+ "selected": "skyblue",
139
+ "unselectable": "black"
140
+ }
141
+ },
142
+ "row": 1,
143
+ "col": 1
144
+ }
145
+ ```
File without changes
@@ -0,0 +1,142 @@
1
+ # More components
2
+
3
+ ## Markdown
4
+
5
+ The Markdown component is used to render markdown content on the page.
6
+
7
+
8
+
9
+ ## SearchBar
10
+
11
+ The SearchBar component is used to search for a specific gene.
12
+
13
+ ### Properties
14
+
15
+ The SearchBar component has the following properties:
16
+
17
+ - `type` (string): The type of the component, in this case `SearchBar`.
18
+ - `id` (string): The unique identifier of the component.
19
+ - `row` (int): The row in which the component is to be displayed.
20
+ - `col` (int): The column in which the component is to be displayed.
21
+ - `config` (object): The configuration of the component.
22
+ - `style` (object): The style of the component.
23
+ - `title` (string): The title of the component.
24
+
25
+ ### config Properties
26
+
27
+ The `config` object has the following properties:
28
+
29
+ - `save` (boolean/String): Whether to save the search or not.
30
+ - (string): The name to be saved at global data.
31
+ - `source` (object): The source of the component.
32
+ - `name` (string): The name of the source.
33
+ - `url` (string): The URL of the source.
34
+ - `responseKey` (string): The response key of the source.
35
+
36
+ ### Example
37
+
38
+ ```json
39
+ {
40
+ "id": "mmtrbc_gene",
41
+ "type": "SearchBar",
42
+ "title": "Search Gene",
43
+ "config": {
44
+ "save": true,
45
+ "source": {
46
+ "name": "genelist",
47
+ "url": "https://visualify.pharmacy.arizona.edu/api/mmtrbc/genelist",
48
+ "responseKey": "gene"
49
+ }
50
+ }
51
+ }
52
+ ```
53
+
54
+ ## List
55
+
56
+ The List component is used to display a list of genes.
57
+
58
+ ### Properties
59
+
60
+ The List component has the following properties:
61
+
62
+ - `type` (string): The type of the component, in this case `List`.
63
+ - `id` (string): The unique identifier of the component.
64
+ - `row` (int): The row in which the component is to be displayed.
65
+ - `col` (int): The column in which the component is to be displayed.
66
+ - `rowspan` (int): The number of rows the component is to span.
67
+ - `btn` (object): The button of the component.
68
+ - `style` (object): The style of the component.
69
+ - `title` (string): The title of the component.
70
+
71
+ ### example
72
+
73
+ ```json
74
+ {
75
+ "id": "genelist",
76
+ "type": "List",
77
+ "row": 2,
78
+ "col": 1,
79
+ "rowspan": 3,
80
+ "btn": {
81
+ "add": {
82
+ "text": "Add",
83
+ "show": true,
84
+ "style": {
85
+ "color": "white",
86
+ "backgroundColor": "#FF8E8E",
87
+ "fontSize": "12px",
88
+ "border": "none",
89
+ "cursor": "pointer"
90
+ },
91
+ "addfrom": "mmtrbc_gene"
92
+ },
93
+ "clear": {
94
+ "text": "Clear",
95
+ "show": true,
96
+ "msg": "Successfully cleared the list",
97
+ "style": {
98
+ }
99
+ },
100
+ "remove": {
101
+ "show": true,
102
+ "style": {
103
+ "color": "white",
104
+ "backgroundColor": "#f44336",
105
+ }
106
+ }
107
+ }
108
+ }
109
+ ```
110
+
111
+ ## RatioBox
112
+
113
+ The RatioBox component is used to display a ratio box on the page.
114
+
115
+ ### Properties
116
+
117
+ The RatioBox component has the following properties:
118
+
119
+ - `type` (string): The type of the component, in this case `RatioBox`.
120
+ - `id` (string): The unique identifier of the component.
121
+ - `row` (int): The row in which the component is to be displayed.
122
+ - `col` (int): The column in which the component is to be displayed.
123
+ - `choice` (array): The choice of the component.
124
+ - `style` (object): The style of the component.
125
+ - `val` (string): Will save the choices to the name of global variable.
126
+
127
+ ### Example
128
+
129
+ ```json
130
+ {
131
+ "type": "RatioBox",
132
+ "id": "chrom_colour",
133
+ "row": 2,
134
+ "col": 1,
135
+ "choice": ["Cell Type", "Stage"],
136
+ "style": {
137
+ "width": "350px"
138
+ },
139
+ "val": "chrom_colour",
140
+ "title": "Colour by"
141
+ }
142
+ ```
@@ -0,0 +1,62 @@
1
+ # Plotly Component
2
+
3
+ The Plotly component is used to display a plotly plot on the page.
4
+
5
+ ## Properties
6
+
7
+ The Plotly component has the following properties:
8
+
9
+ - `type` (string): The type of the component, in this case `Plotly`.
10
+ - `id` (string): The unique identifier of the component.
11
+ - `row` (int): The row in which the component is to be displayed.
12
+ - `col` (int): The column in which the component is to be displayed.
13
+ - `rowspan` (int): The number of rows the component is to span.
14
+ - `colspan` (int): The number of columns the component is to span.
15
+ - `settings` (object): The settings of the component.
16
+ - `parser` (object): The parser of the component.
17
+ - `trigger` (object): The trigger of the component.
18
+
19
+ ### settings Properties
20
+
21
+ The `settings` object has the following properties:
22
+
23
+ - `preset` (string): The preset of the component.
24
+ - `ignoreEmptyData` (boolean): Whether to ignore empty data or not.
25
+
26
+ ### parser Properties
27
+
28
+ The `parser` object has the following properties:
29
+
30
+ - `sources` (array): The sources of the component.
31
+ - `name` (string): The name of the trigger.
32
+ - `url` (string): The URL of the data.
33
+ - `responseKey` (string): The response key of the component.
34
+ - `exclude` (array): The data to be excluded.
35
+ - `type` (string): The type of the component.
36
+
37
+ ### Example
38
+
39
+ ```json
40
+ {
41
+ "id": "mmtrbc_tsne",
42
+ "type": "Plotly",
43
+ "col": 2,
44
+ "rowspan": 3,
45
+ "settings": {
46
+ "preset": "mmtrbc",
47
+ "ignoreEmptyData": true
48
+ },
49
+ "parser": {
50
+ "sources": [{
51
+ "name": "metadata",
52
+ "url": "<your-backend-url>"
53
+ }, {
54
+ "name": "gene",
55
+ "url": "<your-backend-url>",
56
+ "responseKey": "gene"
57
+ }],
58
+ "exclude": ["BC-Mes", "BC-NE", "BC-Im"],
59
+ "type": "scatter"
60
+ }
61
+ }
62
+ ```
@@ -0,0 +1,70 @@
1
+ # ScatterL Components
2
+
3
+ The ScatterL component is a scatter plot that is used to visualize the data in
4
+ 2D. It is a part of the Plotly library and is used to visualize the data in 2D.
5
+ The ScatterL component is used to visualize the data in 2D.
6
+
7
+ The ScatterL component is designed for a specified data Format, like R-tree, to
8
+ visualize a large data set in 2D.
9
+
10
+ ## Requirements
11
+
12
+ The ScatterL component requires the specified API to fetch the data. Currently,
13
+ the ScatterL component supports the API for fetching the data - in the format of
14
+ JSON, - and it need API to consist as
15
+ `your-backend-server-url/xxx/<x-min>/<y-min>/<x-max>/<y-max>`
16
+
17
+ We will provide an example of the backend to show you how to implement our
18
+ customized Rtree API.
19
+
20
+ ## Properties
21
+
22
+ The ScatterL component has the following properties:
23
+
24
+ - `type` (string): The type of the component, in this case `ScatterL`.
25
+ - `id` (string): The unique identifier of the component.
26
+ - `row` (int): The row in which the component is to be displayed.
27
+ - `col` (int): The column in which the component is to be displayed.
28
+ - `rowspan` (int): The number of rows the component is to span.
29
+ - `config` (object): The configuration of the component.
30
+
31
+ ### config Properties
32
+
33
+ The `config` object has the following properties:
34
+
35
+ - `merge` (boolean): Whether to merge the data or not.
36
+ - `startup_msg` (string): The message to be displayed when the component is
37
+ started.
38
+ - `size` (object): The size of the component.
39
+ - `width` (int): The width of the component.
40
+ - `height` (int): The height of the component.
41
+ - `dotsize` (object): The size of the dots in the scatter plot.
42
+ - `dotFactor` (int): The factor by which the dot size is to be multiplied.
43
+ - `min` (int): The minimum size of the dot.
44
+ - `max` (int): The maximum size of the dot.
45
+ - `colourby` (string): The property by which the dots are to be coloured.
46
+ - `exclusion` (array): The properties to be excluded.
47
+ - `api` (object): The API to be used to fetch the data.
48
+ - `metadata` (object): The metadata API.
49
+ - `href` (string): The URL of the metadata API.
50
+ - `val` (string): The value of the metadata API.
51
+ - `gene` (object): The gene API.
52
+ - `href` (string): The URL of the gene API.
53
+ - `val` (string): The value of the gene API.
54
+ - `dep` (string): The dependent property of the gene API.
55
+ - `mapping` (object): The mapping of the data.
56
+ - `api` (object): The API to be used for mapping.
57
+ - Example:
58
+ - `ENS (S): 'ens_iter_2'` (string): Maps ENS (S) to endo_iter_2 API.
59
+ - `IM (S): 'im_iter_2'` (string): Maps IM (S) to im_iter_2 API.
60
+ - `MES (S): 'mes_iter_2'` (string): Maps MES (S) to mes_iter_2 API.
61
+ - `axis` (object): The axis to be used for mapping.
62
+ - `x: X_Coord` (string): Maps x-axis to specified value name.
63
+ - `y: Y_Coord` (string): Maps y-axis to specified value name.
64
+ - `extra` (object): The extra properties.
65
+ - Example:
66
+ - `Stage : Stage` (string): Mapes the Stage to the stage property.
67
+ - `MT : MT` (string): Maps the MT to the MT property.
68
+ - `Gene : Gene` (string): Maps the Gene to the gene property.
69
+ - `Cell_Type : Cell_Type` (string): Maps the Cell_Type to the cell type property.
70
+ - `Cell_ID : Cell_ID` (string): Maps the Cell_ID to the cell ID property.
@@ -0,0 +1,57 @@
1
+ # Visium Component
2
+
3
+ The Visium component is used to display the Visium data on the page.
4
+
5
+ ## Properties
6
+
7
+ The Visium component has the following properties:
8
+
9
+ - `type` (string): The type of the component, in this case `Visium`.
10
+ - `id` (string): The unique identifier of the component.
11
+ - `row` (int): The row in which the component is to be displayed.
12
+ - `col` (int): The column in which the component is to be displayed.
13
+ - `rowspan` (int): The number of rows the component is to span.
14
+ - `startup_msg` (string): The startup message of the component.
15
+ - `meta` (string): The metadata API of the component.
16
+ - `simpleload` (boolean): Whether to load the data simply or not.
17
+ - `metaval` (string): The metadata variable name we want to use.
18
+ - `gene` (string): The gene API.
19
+ - `geneval` (string): The gene variable name we want to use.
20
+ - `image` (string): The image API.
21
+ - `cellval` (string): The celltype variable name we want to use.
22
+ - `axis_mapping` (object): The axis mapping of the component.
23
+ - `x: X_Coord` (string): Maps the X_Coord to the x-axis.
24
+ - `y: Y_Coord` (string): Maps the Y_Coord to the y-axis.
25
+ - `extra` (object): The extra properties.
26
+ - Example:
27
+ - `BC : BC` (string): Maps the BC to the BC property.
28
+ - `SB-1 : SB-1` (string): Maps the SB-1 to the SB-1 property.
29
+
30
+
31
+ ### Example
32
+
33
+ ```json
34
+ {
35
+ "id": "visium_scatter2d",
36
+ "type": "Visium",
37
+ "row": 1,
38
+ "col": 2,
39
+ "rowspan": 3,
40
+ "startup_msg": "Section",
41
+ "meta": "<your-api-for-metadata>",
42
+ "simpleload": false,
43
+ "metaval": "visium_section",
44
+ "gene": "<your-api-for-gene-data>",
45
+ "geneval": "visium_gene",
46
+ "image": "<your-api-for-image>",
47
+ "cellval": "visium_celltype",
48
+ "axis_mapping": {
49
+ "x": "X_Coord",
50
+ "y": "Y_Coord",
51
+ "extra": {
52
+ "BC": "BC",
53
+ "SB-1": "SB-1",
54
+ }
55
+ }
56
+ }
57
+ ```