aws / graph-explorer

React-based web application that enables users to visualize both property graph and RDF data and explore connections between data without having to write graph queries.
https://github.com/aws/graph-explorer
Apache License 2.0
332 stars 49 forks source link

[Feature Request] Global default(s) for expansion cap #572

Open MaxLatey opened 3 months ago

MaxLatey commented 3 months ago

Description

It's super annoying, when exploring a graph or making a visualisation to have to individually set the expansion edge count for each node, and for each edge type. But particularly for each node.

In a large visualisations or explorations, this could mean dozens unnecessary clicks.

Preferred Solution

It would be great to have a global configuration setting which would replicate the functionality of the node-wise expansion, but apply it to all expansions in the current exploration / visualisation i.e. on double click rather than just expanding to 10 neighbours, the expansion would be to X no. of neighbours (X set at global config.), or X neighbours of type Y (X and Y set at global config.).

Additional Context

The requested feature is present in TigerGraph graph explore; its absence will be noticed by people coming with TigerGraph experience.

Related Issues

No related issues that I could find.

kmcginnes commented 3 months ago

Thanks @MaxLatey.

I like this idea. We could treat it essentially as a default value for expansions across the app.

What level would you consider appropriate for your use cases? I could imagine these options:

MaxLatey commented 3 months ago

Kris, thanks for the quick response! I was thinking per connection.

Kind of Goldilocks: per connection feels just about right.

kmcginnes commented 3 months ago

I tend to agree.

The only drawback I can think of is that with a typical Neptune setup 3 connections are created, one for each query language. They all connect to the same database. So it would be a bit painful in that scenario to apply the same default to each connection.

But that's only applicable if the user switches between these connections. I'm not sure how common that is.

beebs-systap commented 3 months ago

@kmcginnes The vast majority of Neptune customers use only one of the query languages with their cluster and rarely switch.

MaxLatey commented 3 months ago

Please note: compared to having a global cap, the how is definitely not as important. Maybe the answer is just: whichever is most straight-forward :-)

Many thanks for considering this feature.