Hi Walter,
firstly thanks for all the replies to the RadialLayout queries over the span of 3 months. The end game for using GoJS in the project I am working for is providing the end users a visualization for products where the Backend provides data based on Web Ontology.
For instance, when a user inputs HighChair as a product of interest; through a binary tree structure I generate the RadialLayout which provides the following diagram:
the green nodes are attributes that provide filtering options (if any) for the HighChair. While as Red ones, are attributes that provide further options into the attribute itself. For example, Manufacturer
has CompanyName
, ContactPerson
etc.
These properties can be as big as several Hundreds of Layers if we decide to send the complete data and try to show it in the layout. For instance, Legislation can be for HighChair itself, and also for the Manufacturer. This will traverse through a lot of layers if we have a concrete example (which I do not have as such since I am just conceptualizing it)
I am very limited to space on the webpage and a maximum of 3 Layers are what I consider it to be optimal. For example If the User clicks on Manufacturer -> Legislation
the following result is produced.
Comparing it to main diagram, I hid all the other nodes and showed the further path to Legislation
which has an attribute hasLegislationName
(this is the current implementation. This can as well be another red node indicating that the user needs to traverse through more layers to reach some particular attribute of interest)
Interest
At this point I would like to have your advice as to how can I proceed further with the visualization of further layers given the constraint that I can only show 3.
A preferable implementation would be to hide or remove the Manufacturer
and the dashed link to Legislation
and replace the Legislation
Node and its child (hasLegislationName
) to the position of Manufacturer
i.e.
Current
HighChair - dashedline -> Manufacturer - dashedline -> Legislation - solidLine -> hasLegislationName
Desired
HighChair - dashedLine -> Legislation - solidLine -> hasLegislationName
(in a nutshell, move the child node to the parent’s position)
which brings me to the question:
Is this even possible?
However, thinking over the same, what if the user actually wants to go to the Manufacturer
node and click on some other attributes which are for the above example hidden (for e.g. ContactPerson
for the Manufacturer
)
So hiding or remove the parent node itself is kind of a bad decision in my option.
Any insights as to how you would go further with the diagram ?
Transitions
As mentioned in the RadialLayout example transistions can make sense in the scenario where the user wishes to go back to the previous node. I tried some hacking here are there and an example is shown below:
At this point, how much can transitions work in my favor when the user is already 5 to 6 layers deep keeping in mind that there are still selected nodes from the first layer. for e.g. green node of hasHeight, hasWidth still remains selected and still shown in the same diagram?
Apologies for the lengthy post and no TL:DR.
Thanks.
Shan