to render the global graph in a more useful way, I think it’s better to render it with something else entirely. Write a script that fetches all the links and formats them into dot files so you can render them in graphviz which actually allows you to pin nodes to specific coordinates
Use case or problem
When using the graph view on iPhone or iPad, every time I tap a note to read it, and then return to the graph view, the whole graph view animation restarts. Not only is this slow and a bit frustrating, but they graphically repositioned either up or down or right or left every single time (which wouldn’t be a big deal if this would only happen from time to time), and, it also messes up the temporary graph view layout i had made manually. The random positioning algorithm often puts nodes in odd spots—sometimes stuck behind arrows or barriers of arrows—which means I have to manually rearrange them again. I don’t mind reorganizing my graph view once in a while, but having to do it every single time is tedious.
(On Mac, this doesn’t happen because I keep the graph view pinned in a separate window—honestly, my favorite way to use Obsidian! )
Proposed solution
Have obsidian Graph view remember the older position of notes, after I organized them a bit better!
(if you look at my screenshots, this is a view of after I move a bit one or two group of notes in better positions, as often they are a bit flipped around as first… It’s just annoying to do that every single time on the iPhone (as there is no multiple windows there)
Related feature requests (optional)
(No-arrow option when connecting notes, to keep the graph view organized)
Use case or problem
I rely on graph view to see how different topics and themes connect. Visualizing the spatial orientation is helpful for me. Topic A is in the upper-right, this links to topic A1 in the lower-right, etc… But every time I open Obsidian the graph view will render differently.
For example, this is a screenshot of my graph view. The second screenshot is simply from me closing and re-opening Obsidian, without adjusting anything.
Proposed solution
Maybe an option to pin certain big notes or tags to a specific part of the graph, and let everything fill in like normal.
Current workaround (optional)
I’m currently just dragging the major parts to the areas I’m used to
I agree with this, as long as the notes don’t change it would be nice if the graph would always produce the same layout with the same settings.
This feature has been requested twice in the past:
@moderators Combine these three threads?
there was a plugIn “persistent graph view” but it seaming unsupported. The obsidian extended graph currently is asking to take over the project. If it is working this plugIn could have it integrated someday.
Indeed, that could be a great idea to resolve the inconvenience of messy graph with representation randomly changing! … Or alternatively, in order to keep the graph really organic and dynamic when we add nodes, it could be interesting to be able to pin a node, not to a fix X/Y position, but to a certain angle + certain distance to the center of the graph!! (that way, the physics of the graph would still work 100%, but we could kind of slightly predetermine the relative position of a few specific and important nodes!! That would be amazing!
Actually, to make it even more organic:
Perhaps the angle + distance to the center of the graph could be applied only at the very start of the physics animation as it appears. Afterward, nodes would still shift slightly, also depending on new nodes appearing in the graph…
…And to keep the organic feel even more, we wouldn’t need to manually pin the nodes, instead, whenever we move a node with the mouse, this node could automatically remember its approximate angle + distance from the center (before the physics rearranging starts), for the next time we load the graph!
That way, Obsidian would naturally and elegantly retain most our manual rearrangements, which would be exceptionally useful as our graphs grow a bit more complex.
(even though I’m cleaning up my graph regularly to keep it as neat as possible, using filters and hiding some connections {doing it manually as we cannot hide arrows, see why in my feature-request there: No-arrow option when connecting notes, to keep the graph view organized } , and also now i just starting using the really great new bookmark various graph-views feature, so i’m able to start saving various graph-views with very various filters when i’m working on different parts of my project, …really great to have that )
Use case or problem
Whenever I click the graph view, the nodes fly everywhere, since the state is initialized fresh. This makes it hard to relocate where I was if I close it and come back.
Proposed solution
I would like the x-y position of all the graph nodes to be cached in a file between uses, so that the graph view window is stateless and can be closed/reopened without scrambling.
Perhaps there would then be a refresh button to reinitialize the node positions.
Current workaround (optional)
I suppose one can work around it by always keeping a graph view tab open and never closing it
Related feature requests (optional)
I think this is a very good idea. Probably it would be practical to scale the “certain distance to the center of the pinned note” according to Center force and Repel Force, as they practically scale the whole graph.
Additionally, on all other notes a weak directional force could be applied that is derived from the notes’ titles.
Better than a hash would be the sum of the title’s character codes. Then notes with ascending numbers or dates would be moved to similar locations.
Word2Vec would ensure that notes with similar or related titles are placed close to each other.