Social Network Mapping

Hi complete noob here that stumbled on to Obsidian by chance. This is a bit out of left field but here goes:

I’ve been trying to solve a bit of a unique workflow problem for years now. I work in a highly relationship-driven field. For quite a while now I’ve wanted to create exactly the type of visual mapping of interrelated connections between companies and individuals that is displayed by Obsidian’s graph view.

There are highly complex programs out there that do this but they are intended for much more analytical results and are overkill for my goals. Obsidian seems to provide the connectivity visualization I’m looking for at a far less complex level. My question to users with experience here is if you think that it can achieve that goal and if so what the basic structure needs to look like.

Basically, I would like to be able to select a node (person or company) and see all of the known interconnections and relationships I know that person to hold. Has anyone smarter than me done this already?

  • Would I need to create a single note for every company and/or individual?
  • Is there a “address book” style template that could consolidate all of the names in a single location instead of countless individual notes - potentially with no more details than one name on them?
  • If I start building it that way, would I need to backlink every single note then to add new people and new known relationships in both directions?

Maybe Im trying to make Obsidian fit something its really not designed to do and if so, Im ok with accepting that. The graph view is just so close to what im looking for, that Im hopeful there’s an effective and easily scalable answer to the layout & format underneath that would work.

Any thoughts or help appreciated.
Thanks in advance.

1 Like

I have read posts of other people request something similar and I don’t believe that a perfect solution exists.

First you would have to build the network with a note for each person. Links only have to be in one direction, but they can be in both directions.

One limited but possible way to analyze connections between any two given individuals would be to start by opening the note of Person A and then open its local graph view.

With the connection level still set at 1, you can inspect the connected nodes to see if Person B is visible, which I am guessing is not the case in the scenario you described.

Next, you could add a temporary link to Person B within the Person A note. At this point you can crank up the connections level to its max which is currently 5.

Next, you could hopefully quickly find Person B, which should not be too difficult since it is directly connected. When you hover cursor over the node for Person A, the level 1 connections should highlight. You can click and drag Person B away from the center, holding it in place on the outer bounds while you watch the graph adjust and try to inspect the related connections.

If the graph is too busy at level 5 and there does not appear to be a chain of 3 nodes between Person A and Person B, it wouldn’t make a difference if you turned down the levels to 4. And, if turning down the levels to 3 or 2 doesn’t make a difference, you will be much better off analyzing the connections.

While dragging Person B to the outer bounds, you can take a screenshot. Depending on the busyness of the graph, you should be alright zooming in on the screenshot and inspecting the relationships. You can also open a separate local graph view for Person B and any nodes in between.

I am guessing you were looking for something more automated and elegant, but this could get you started. I would also guess that in the next few days you will probably get some help and a definitive answer about the current and potential future capabilities of Obsidian for your goal.

Good luck. I am interested to see what others say.

1 Like

Thanks! Thats very helpful. You confirmed my structure assumptions and pointed out a potential problem I hadnt thought through. Namely if the relationship chain to arrive at a person or company I want to see is deeper than 5 connections. To be truly effective you would need a search function that allowed you to see how to get from Person A to Person Q in the shortest amount of hops; if really dreaming, search to see if any connections from Person ?? route via Company W leading to Person Q.

5 nodes visual limit without that type of searchable connectivity may become very limiting very quickly.

Have to give this some more thought, it seems. Appreciate the time and effort in your reply!

You’re welcome. Yea, I definitely wouldn’t give up yet. The program is improving rapidly. I should also mention that there is a global graph view that shows all nodes and all connections. You may do just fine traversing that. Good luck.

I don’t have an answer to this question, but would like to second the usefulness of network analysis tools with which to examine the networks we build in Obsidian.

In terms of visualising links, I have not found a perfect solution but the combination of the built in graph and using the mind map community plugin for hierarchical structures you can do quite a lot.

While relationships are important my focus has been more on taking notes. Search is the killer feature here - the ability to quickly find terms, people, ideas in a sea of notes is invaluable.

I use structure for my people and company records. I use Templater to create a standard set of fields for each type and I place each type in their own directory. Templater allows you to check if a company or person exists before you create them and can auto-populate fields.

I have also explored the possibility of importing large numbers of records (Eg. address book entries) into notes and this can be done with relative ease. Similarly exporting notes into a CSV format is fairly straight forward if you have structure.

The real value of having a structure of folders, tags and note titles is when you use queries or dataview to bring together your information through an embedded search. For example I tag my people with #company/employee and #company/exEmployee, etc. so you can have a list of all employees dynamically created inside the [[company]] note. You can do this for any purpose, eg. tags for #projectname #skilltype #decisionmaker #committeemember, etc. You can create a table of any of these metadata fields easily.

The title auto lookup is especially useful for adding people to meeting minutes - just enter “[[” and the list will search as you add each letter. You can also add aliases so [[Mike Smith]] and [[Michael Smith]] can both point to the same person. You can also link people to ideas, meetings, companies, groups, etc. using atomic notes.

Hope these thoughts are useful.