Social network analysis for Elgg

im looking for a solution to better understand what is going on inside my Elgg community website. A solution is to do social network analysis. This analysis will collect data about relations and interactions between people and the things they work on. The analysis will then give more insight and provide hints to improve by stimulating the right people and providing better tools. This will allow us to help the community grow.

A new plugin SNA4Elgg enables us to collect this data. But much more needs to be done. the plugin needs to be improved to collect more types of relevant data. Research has to be done to find out what is relevant data. Then the data needs to be processed according to graph theory, analysed (Gephi). The results then can be used to improve the system. It can also be used to provide feedback to the users to show who is the most interesting, active or most influential person.

conclusion: this approach will help to improve your community

To make this work we need to work together and share our ideas.

  • Hi @Ed, i think we are on the same track. Yesterday i installed Python on my computer and the networkx library. This allows me to experiment with graphs and learn more about their capabilities. Now im planning to further improve the Elgg graph export plugin. I still have confidence that this approach will bring me the solution im looking for.

    My current goal is exporting data in GEXF format and importing it into Gephi, then visualizing the data to gain insight. Based on this insight i can help my community and when necesarry improve the Elgg system by adding plugins or building new ones. Im thinking on using the fivestar plugin and assigning fivestar ratings to groups, users and content based on the social network analysis calculated KPI's such as Weighted Degree. This approach is a complete feedback loop from data extraction, analysis and providing feedback to the user. Another usage would be to show a reduced graph with information on the most active groups, users and discussions on an Elgg page or widget. There is a realtime streaming protocol in Gephi that could support this also in realtime. So there is so much potential.

    The link you provided are great input for me to get inspired, thanks.

    It would be usefull to share our results / scripts / thoughts / links and so on. I don't think the standard Elgg plugin distibution model can be used because its much more than a plugin. This to help each other. Is anyone interested and has an idea how to share this? Could be a group sharing a google drive, microsoft onedrive or other sharing solution.

  • Im typing this while i travel to my work by train. Sometimes the internet  connection fades away. Still a wonderful usefull solution to travel relaxed and do some work. Not sure if programming in the train can be done. Its still bumpy and the sun shines on my computerscreen.

  • @tauvic Seems like a great idea! have you been able to go ahead with it and done some github link. if you have can you send a link to the github for code? 

  • I have uploaded my code. You can find it at Now im working to add some more edges.

  • Found also Google Fusion tables supports network graphs.

  • Came across sigma.js, an interesting javascript graph visualization library ( ). It might prove to be useful for dynamic graph visualization. Currently looking at integrating it with Elgg.