Skip to content

Commit 97324d5

Browse files
authored
2.1.5 Release (#195)
## NeoDash 2.1.5 Added *New* Sankey charts: - Visualize nodes and relationships as a flow diagram. - Select a customizable flow value from relationship properties. - Configure a variety of style customizations. Parameter select: - Fixed bug where values would randomly be deleted after changing the parameter. - Added option to customize the number of suggested values when a user enters (part of) a property value. - Added option to customize search type (CONTAINS, STARTS WITH, or ENDS WITH). - Added option to enable/disable case-sensitive search. - Added option to enable/disable removing duplicate suggestions. Miscellaneous: - Extended documentation with examples on running NeoDash in Kubernetes. - Fixed issue where duplicate database names were visible when running NeoDash on an on-prem Neo4j cluster.
1 parent 7e9ca23 commit 97324d5

File tree

23 files changed

+34658
-80
lines changed

23 files changed

+34658
-80
lines changed

.github/workflows/master-deployment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ jobs:
7171
context: .
7272
file: ./Dockerfile
7373
push: true
74-
tags: ${{ secrets.DOCKER_HUB_USERNAME }}/neodash:latest,${{ secrets.DOCKER_HUB_USERNAME }}/neodash:2.1.4
74+
tags: ${{ secrets.DOCKER_HUB_USERNAME }}/neodash:latest,${{ secrets.DOCKER_HUB_USERNAME }}/neodash:2.1.5
7575
build-npm:
7676
needs: build-test
7777
runs-on: ubuntu-latest

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
*.cert
55
*.passphrase
66
node_modules
7-
package-lock.json
87
build
98
target
109
/node_modules

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,4 @@ RUN chown -R nginx:nginx /usr/share/nginx/html/
3838
USER nginx
3939
EXPOSE 5005
4040
HEALTHCHECK cmd curl --fail http://localhost:5005 || exit 1
41-
LABEL version="2.1.4"
41+
LABEL version="2.1.5"

changelog.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,25 @@
1+
## NeoDash 2.1.5
2+
Added *New* Sankey charts:
3+
- Visualize nodes and relationships as a flow diagram.
4+
- Select a customizable flow value from relationship properties.
5+
- Configure a variety of style customizations.
6+
7+
Parameter select:
8+
- Fixed bug where values would randomly be deleted after changing the parameter.
9+
- Added option to customize the number of suggested values when a user enters (part of) a property value.
10+
- Added option to customize search type (CONTAINS, STARTS WITH, or ENDS WITH).
11+
- Added option to enable/disable case-sensitive search.
12+
- Added option to enable/disable removing duplicate suggestions.
13+
14+
Miscellaneous:
15+
- Extended documentation with examples on running NeoDash in Kubernetes.
16+
- Fixed issue where duplicate database names were visible when running NeoDash on an on-prem Neo4j cluster.
17+
18+
19+
## NeoDash 2.1.4
20+
Added hotfix for missing function in map visualization (https://github.com/neo4j-labs/neodash/issues/183).
21+
22+
123
## NeoDash 2.1.3
224
The 2.1.3 release contains updates to the map visualization, as well as a new Choropleth map report type.
325
Several usability improvements were also added, including fixing all links into the new documentation pages.

cypress/fixtures/cypher_queries.js

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

cypress/integration/start_page.spec.js

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { tableCypherQuery, barChartCypherQuery, mapChartCypherQuery, sunburstChartCypherQuery, iFrameText, markdownText, loadDashboardURL } from "../fixtures/cypher_queries"
1+
import { tableCypherQuery, barChartCypherQuery, mapChartCypherQuery, sunburstChartCypherQuery, iFrameText, markdownText, loadDashboardURL, sankeyChartCypherQuery } from "../fixtures/cypher_queries"
22

33
// Ignore warnings that may appear when using the Cypress dev server
44
Cypress.on('uncaught:exception', (err, runnable) => {
@@ -131,6 +131,11 @@ describe('NeoDash E2E Tests', () => {
131131
cy.get('main .react-grid-item:eq(2) .MuiCardContent-root svg > g > g').should('have.length', 6)
132132
})
133133

134+
it('creates a sankey chart report', () => {
135+
createReportOfType('Sankey Chart', sankeyChartCypherQuery, true)
136+
cy.get('main .react-grid-item:eq(2) .MuiCardContent-root svg > g > path').should('have.attr', 'fill-opacity', 0.5)
137+
})
138+
134139
it('creates a raw json report', () => {
135140
createReportOfType('Raw JSON', barChartCypherQuery)
136141
cy.get('main .react-grid-item:eq(2) .MuiCardContent-root textarea:nth-child(1)').should(($div) => {
@@ -192,11 +197,16 @@ describe('NeoDash E2E Tests', () => {
192197

193198
})
194199

195-
function createReportOfType(type, query) {
200+
function createReportOfType(type, query, fast=false) {
196201
cy.get('main .react-grid-item:eq(2) button').click()
197202
cy.get('main .react-grid-item:eq(2) button[aria-label="settings"]').click()
198203
cy.get('main .react-grid-item:eq(2) .MuiInputLabel-root').contains("Type").next().click()
199204
cy.contains(type).click()
200-
cy.get('main .react-grid-item:eq(2) .ReactCodeMirror').type(query, { parseSpecialCharSequences: false })
205+
if(fast){
206+
cy.get('main .react-grid-item:eq(2) .ReactCodeMirror').type(query, { delay:1, parseSpecialCharSequences: false })
207+
}else{
208+
cy.get('main .react-grid-item:eq(2) .ReactCodeMirror').type(query, { parseSpecialCharSequences: false })
209+
}
210+
201211
cy.get('main .react-grid-item:eq(2) button[aria-label="save"]').click()
202212
}
104 KB
Loading

docs/modules/ROOT/nav.adoc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@
1212
*** xref:user-guide/reports/sunburst.adoc[Sunburst]
1313
*** xref:user-guide/reports/circle-packing.adoc[Circle Packing]
1414
*** xref:user-guide/reports/treemap.adoc[Treemap]
15+
*** xref:user-guide/reports/sankey.adoc[Sankey Chart]
1516
*** xref:user-guide/reports/map.adoc[Map]
17+
*** xref:user-guide/reports/choropleth.adoc[Choropleth]
1618
*** xref:user-guide/reports/single-value.adoc[Single Value]
1719
*** xref:user-guide/reports/raw-json.adoc[Raw JSON]
1820
*** xref:user-guide/reports/parameter-select.adoc[Parameter Select]

docs/modules/ROOT/pages/developer-guide/build-and-run.adoc

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,3 +69,38 @@ After building, you can run the image with:
6969
....
7070
docker run -it –rm -p 5005:5005 neodash
7171
....
72+
73+
== Run on Kubernetes
74+
75+
An example of a pod definition YAML file to create a NeoDash pod in a cluster:
76+
77+
....
78+
apiVersion: v1
79+
kind: Pod
80+
metadata:
81+
name: neodash
82+
labels:
83+
project: neodash
84+
spec:
85+
containers:
86+
- name: neodash
87+
image: nielsdejong/neodash:latest
88+
ports:
89+
- containerPort: 5005
90+
....
91+
92+
93+
Creating a Kubernetes service to expose the application:
94+
....
95+
apiVersion: v1
96+
kind: Service
97+
metadata:
98+
name: neodash-svc
99+
spec:
100+
type: LoadBalancer
101+
ports:
102+
- port: 5005
103+
targetPort: 5005
104+
selector:
105+
project: neodash
106+
....
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
= Sankey Chart
2+
3+
A Sankey visualization will generate a flow diagram from nodes and links.
4+
Beware that cyclic dependencies are not supported.
5+
6+
== Examples
7+
8+
=== Basic Sankey Chart
9+
For a sankey chart to use the correct relationship weights - it is mandatory to set a 'Relationship Property' in the report's advanced settings.
10+
11+
[source,cypher]
12+
----
13+
MATCH (p:Person)-[r:RATES]->(m:Movie)
14+
RETURN p, r, m
15+
----
16+
17+
image::sankey.png[Sankey Chart]
18+
19+
20+
== Advanced Settings
21+
22+
[width="100%",cols="15%,2%,6%,77%",options="header",]
23+
|===
24+
|Name |Type |Default Value |Description
25+
|Show Legend |on/off |off |If enabled, shows a legend on the bottom of
26+
the visualization.
27+
28+
|Enable interactivity |on/off |on |If enabled, turn on animations when a
29+
user hovers over a node or link.
30+
31+
|Relationship Property |text | value | Name of the property with an integer value that is going
32+
to be used to determine thickness of links.
33+
34+
|Color Scheme |List | |The color scheme to use for the slices. Colors
35+
are assigned automatically (consecutively) to the different categories
36+
returned by the Cypher query.
37+
38+
|Layout |List |horizontal |Sankey layout direction.
39+
40+
|Label Position |List |inside |Control sankey label position.
41+
42+
|Label Orientation |List |horizontal |Control sankey label orientation.
43+
44+
|Node Border Width (px) |number |0 |Controls Node border width.
45+
46+
|Node Spacing (px) |number |18 |Controls spacing between nodes at an identical level (px).
47+
48+
|Node thickness (px) |number |18 |Controls Node thickness.
49+
50+
|Margin Left (px) |number |24 |The margin in pixels on the left side of
51+
the visualization.
52+
53+
|Margin Right (px) |number |24 |The margin in pixels on the right side
54+
of the visualization.
55+
56+
|Margin Top (px) |number |24 |The margin in pixels on the top side of
57+
the visualization.
58+
59+
|Margin Bottom (px) |number |40 |The margin in pixels on the bottom side
60+
of the visualization.
61+
62+
|Auto-run query |on/off |on |when activated automatically runs the query
63+
when the report is displayed. When set to `off', the query is displayed
64+
and will need to be executed manually.
65+
|===
66+
67+

0 commit comments

Comments
 (0)