neo4j-viz 0.3.1__py3-none-any.whl → 0.4.1__py3-none-any.whl

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.
@@ -2,7 +2,7 @@ from __future__ import annotations
2
2
 
3
3
  import warnings
4
4
  from collections.abc import Iterable
5
- from typing import Any, Callable, Hashable, Optional
5
+ from typing import Any, Callable, Hashable, Optional, Union
6
6
 
7
7
  from IPython.display import HTML
8
8
  from pydantic_extra_types.color import Color, ColorType
@@ -11,7 +11,13 @@ from .colors import NEO4J_COLORS_CONTINUOUS, NEO4J_COLORS_DISCRETE, ColorSpace,
11
11
  from .node import Node, NodeIdType
12
12
  from .node_size import RealNumber, verify_radii
13
13
  from .nvl import NVL
14
- from .options import Layout, Renderer, RenderOptions
14
+ from .options import (
15
+ Layout,
16
+ LayoutOptions,
17
+ Renderer,
18
+ RenderOptions,
19
+ construct_layout_options,
20
+ )
15
21
  from .relationship import Relationship
16
22
 
17
23
 
@@ -42,6 +48,7 @@ class VisualizationGraph:
42
48
  def render(
43
49
  self,
44
50
  layout: Optional[Layout] = None,
51
+ layout_options: Union[dict[str, Any], LayoutOptions, None] = None,
45
52
  renderer: Renderer = Renderer.CANVAS,
46
53
  width: str = "100%",
47
54
  height: str = "600px",
@@ -60,6 +67,8 @@ class VisualizationGraph:
60
67
  ----------
61
68
  layout:
62
69
  The `Layout` to use.
70
+ layout_options:
71
+ The `LayoutOptions` to use.
63
72
  renderer:
64
73
  The `Renderer` to use.
65
74
  width:
@@ -92,8 +101,19 @@ class VisualizationGraph:
92
101
 
93
102
  Renderer.check(renderer, num_nodes)
94
103
 
104
+ if not layout:
105
+ layout = Layout.FORCE_DIRECTED
106
+ if not layout_options:
107
+ layout_options = {}
108
+
109
+ if isinstance(layout_options, dict):
110
+ layout_options_typed = construct_layout_options(layout, layout_options)
111
+ else:
112
+ layout_options_typed = layout_options
113
+
95
114
  render_options = RenderOptions(
96
115
  layout=layout,
116
+ layout_options=layout_options_typed,
97
117
  renderer=renderer,
98
118
  pan_X=pan_position[0] if pan_position is not None else None,
99
119
  pan_Y=pan_position[1] if pan_position is not None else None,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: neo4j-viz
3
- Version: 0.3.1
3
+ Version: 0.4.1
4
4
  Summary: A simple graph visualization tool
5
5
  Author-email: Neo4j <team-gds@neo4j.org>
6
6
  Project-URL: Homepage, https://neo4j.com/
@@ -0,0 +1,22 @@
1
+ neo4j_viz/__init__.py,sha256=Q-VZlJe3_kAow_-F_-9RsHCQfbOfv5on26YD9ihw27o,504
2
+ neo4j_viz/colors.py,sha256=IvOCTmCu7WTMna_wNLZ3GrThTwFyIoKtNkmZYDLdYac,6694
3
+ neo4j_viz/gds.py,sha256=ux41zwbfBoeH-A4lqzTAYbdM4d-4JwmXv4ooVzlFflI,7595
4
+ neo4j_viz/gql_create.py,sha256=K33cT6dOj8eJPGNNJXiXlCfLIzNxTwcW4n_2AG3_zaY,14751
5
+ neo4j_viz/neo4j.py,sha256=8oNhsEd33wayyNlDi5KirG_vKgvVc3nJgAyvAZuKcNw,7296
6
+ neo4j_viz/node.py,sha256=MiLoghsn2NLs_iV65NuW7u3iaxP8MTKoNy6La9TdreY,3886
7
+ neo4j_viz/node_size.py,sha256=c_sMtQSD8eJ_6Y0Kr6ku0LOs9VoEDxfYCUUzUWZ-1Xo,1197
8
+ neo4j_viz/nvl.py,sha256=ZN3tyWar9ugR88r5N6txW3ThfNEWOt5A1KzrrRnLKwk,5262
9
+ neo4j_viz/options.py,sha256=eOpiLcIfFvUiPoozyT44F9MHGRkqCfBZFmh0u_6DfwY,6400
10
+ neo4j_viz/pandas.py,sha256=x_hD1IAFKKAo-cwgVMXLnavP0zkMIhB28Csw83vztNo,5755
11
+ neo4j_viz/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
+ neo4j_viz/relationship.py,sha256=sRgGjNzlqt6wPmiB3WXBTxR_W_5Z40VofpHUZvkRS1I,4143
13
+ neo4j_viz/visualization_graph.py,sha256=Fizmzm8p4p3Fbd3gsiTymkXgI3crpdmr5ipv4gFv3SY,13760
14
+ neo4j_viz/resources/icons/screenshot.svg,sha256=Ns9Yi2Iq4lIaiFvzc0pXBmjxt4fcmBO-I4cI8Xiu1HE,311
15
+ neo4j_viz/resources/icons/zoom-in.svg,sha256=PsO5yFkA1JnGM2QV_qxHKG13qmoR-RrlWARpaXNp5qU,415
16
+ neo4j_viz/resources/icons/zoom-out.svg,sha256=OQRADAoe2bxbCeFufg6W22nR41q5NlI8QspT9l5pXUw,400
17
+ neo4j_viz/resources/nvl_entrypoint/base.js,sha256=jYzVHzrBe32hPUgznTDRBNri3urSJ083GDnFmXOkAvc,1811792
18
+ neo4j_viz/resources/nvl_entrypoint/styles.css,sha256=JjeTSB9OJT2KMfb8yFUUMLMG7Rzrf3o60hSCD547zTk,1123
19
+ neo4j_viz-0.4.1.dist-info/METADATA,sha256=zlnSq2VYXVOmpXmal4gS8LVM64wbb3Zoh4FFARJXKTg,7074
20
+ neo4j_viz-0.4.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
21
+ neo4j_viz-0.4.1.dist-info/top_level.txt,sha256=jPUM3z8MOtxqDanc2VzqkxG4HJn8aaq4S7rnCFNk_Vs,10
22
+ neo4j_viz-0.4.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.8.0)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,22 +0,0 @@
1
- neo4j_viz/__init__.py,sha256=ATDPdaupFWIWaOWtJtfCGVRVuuwXKNe1hNdENofgRLk,270
2
- neo4j_viz/colors.py,sha256=IvOCTmCu7WTMna_wNLZ3GrThTwFyIoKtNkmZYDLdYac,6694
3
- neo4j_viz/gds.py,sha256=v6b3XdSoWSoOu-U2MWQM-5QXLiPT3_9gGOv7haxuozE,4135
4
- neo4j_viz/gql_create.py,sha256=YH9mZUx-b86h714wCIbikGoxZD7IEuOmhKDdrp5fhXk,13264
5
- neo4j_viz/neo4j.py,sha256=UTrLZRlDgkw2w8Ov4P1oP8w-25Kf0sMCkLFDq3qD-Q8,4855
6
- neo4j_viz/node.py,sha256=MiLoghsn2NLs_iV65NuW7u3iaxP8MTKoNy6La9TdreY,3886
7
- neo4j_viz/node_size.py,sha256=c_sMtQSD8eJ_6Y0Kr6ku0LOs9VoEDxfYCUUzUWZ-1Xo,1197
8
- neo4j_viz/nvl.py,sha256=ZN3tyWar9ugR88r5N6txW3ThfNEWOt5A1KzrrRnLKwk,5262
9
- neo4j_viz/options.py,sha256=QBeHLqHOJFtSCjzHvv-2A9TzTbnIaC6_onQq9fUlT_4,3079
10
- neo4j_viz/pandas.py,sha256=bju4Pcoe-d_MFG6XOpVPPkD_p3cF-gWuXqfA9oxyvSU,3382
11
- neo4j_viz/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
- neo4j_viz/relationship.py,sha256=sRgGjNzlqt6wPmiB3WXBTxR_W_5Z40VofpHUZvkRS1I,4143
13
- neo4j_viz/visualization_graph.py,sha256=ogYhxAyPzqOcSogYSesGAV6iRQDLIA-YhBImEShuCPM,13175
14
- neo4j_viz/resources/icons/screenshot.svg,sha256=Ns9Yi2Iq4lIaiFvzc0pXBmjxt4fcmBO-I4cI8Xiu1HE,311
15
- neo4j_viz/resources/icons/zoom-in.svg,sha256=PsO5yFkA1JnGM2QV_qxHKG13qmoR-RrlWARpaXNp5qU,415
16
- neo4j_viz/resources/icons/zoom-out.svg,sha256=OQRADAoe2bxbCeFufg6W22nR41q5NlI8QspT9l5pXUw,400
17
- neo4j_viz/resources/nvl_entrypoint/base.js,sha256=QfFjqd7Uo2F-plgFlPfLzUcjqzTzqUh533VaBemJhLI,1816247
18
- neo4j_viz/resources/nvl_entrypoint/styles.css,sha256=JjeTSB9OJT2KMfb8yFUUMLMG7Rzrf3o60hSCD547zTk,1123
19
- neo4j_viz-0.3.1.dist-info/METADATA,sha256=p8n2aK9ELDWZX75mUyDCh1pLR22TdWrQarXTXmXYcAU,7074
20
- neo4j_viz-0.3.1.dist-info/WHEEL,sha256=zaaOINJESkSfm_4HQVc5ssNzHCPXhJm0kEUakpsEHaU,91
21
- neo4j_viz-0.3.1.dist-info/top_level.txt,sha256=jPUM3z8MOtxqDanc2VzqkxG4HJn8aaq4S7rnCFNk_Vs,10
22
- neo4j_viz-0.3.1.dist-info/RECORD,,