Visualisation du réseau communautaire

Visualisation du réseau communautaire

Résumé Explorez les relations entre les membres du forum dans un réseau interactif en 2D ou 3D.
Dépôt merefield/discourse-user-network-vis
Installation Suivez le guide d’installation du plugin.
Soutenir le développement Devenir sponsor sur GitHub :heart:

Fonctionnalités

Présente votre communauté sous forme de visualisation de réseau

Accessible via un élément de menu ajouté automatiquement (désactivable) :

Accédez-y en cliquant sur User Network dans le menu latéral/déroulant ou en naviguant vers yoursite.com/usernetworkvis - NB : vous devez être connecté en tant qu’utilisateur inscrit pour voir la visualisation.

  • les nœuds représentent les utilisateurs.

  • les liens représentent les interactions sur votre forum - plus il y a d’interactions, plus la ligne est épaisse

    • une interaction est la combinaison des J’aime et des Réponses (il s’agit des mêmes données disponibles sur la page de profil Résumé de chaque utilisateur pour tous les utilisateurs)
  • Survolez un utilisateur pour l’isoler visuellement ainsi que ses connexions

  • Cliquez sur un nœud pour naviguer vers son profil Résumé.

  • Glissez les nœuds et regardez le spectacle :game_die:

  • Zoomez sur l’ensemble de la vue avec la molette de la souris.

:warning: Les niveaux de confiance sont actuellement exposés sous forme de différentes couleurs. Si vous ne le souhaitez pas, définissez la même couleur plusieurs fois. Je pourrais trouver un autre critère pour définir la couleur, mais c’était de loin le plus évident étant donné qu’il est très générique :warning:

Pour actualiser les données, déclenchez la tâche. Cela peut être nécessaire après une modification des paramètres (j’ai marqué ceux qui le nécessitent) :

Allez sur : https://your.site/sidekiq/scheduler et trouvez celle-ci :

Sinon, cela s’exécute chaque heure.

:warning: si vous avez des milliers d’utilisateurs, cette tâche peut s’exécuter LONGTEMPS et consommer des ressources. Cela semble fonctionner correctement sur un site de 5 000 comptes fonctionnant sur un VPS 2 Cœurs 2 Go, prenant environ 30 secondes. Le SQL est nécessairement BRUTAL :warning:

Intéressé par les données ?

Mon intention avec ceci était simplement de peindre un tableau.

Si vous souhaitez voir les données, allez simplement sur yoursite.com/usernetworkvis.json

Dans tous les cas, dans des cas individuels, vous pouvez voir une grande partie de ces données sur la page de résumé de chaque utilisateur en cliquant sur un nœud (Le plus répondu, Le plus aimé/aimé par). Je considère donc qu’il s’agit d’informations semi-publiques.

Configuration

Paramètres … donc … beaucoup … de paramètres :

Si vous avez un grand site avec beaucoup de gens dessus, vous trouverez le diagramme très bruité. Envisagez d’augmenter le minimum trust level et il y a maintenant une option pour supprimer les personnes non vues depuis x années :

À FAIRE

  • L’élément de menu prend en charge la localisation, mais si personne n’a encore soumis de PR pour votre localisation, veuillez envisager de le faire, sinon il restera un code de clé …

Crédits

La visualisation est basée sur la formidable bibliothèque d3

Projets similaires

Si vous aimez ceci, vous aimerez peut-être aussi :

48 « J'aime »

Très cool ! Ce n’est pas exactement la même chose, mais cela me rappelle une étude que j’ai lue il y a quelques années :

8 « J'aime »

Oh, bonne trouvaille ! Je me demande si cela générera de l’engagement ? … On peut probablement en dire autant de Discourse Who's Online? :+1:

Vous savez, cela me donne une autre idée : vous pourriez mettre des « halos » autour des nœuds qui sont en ligne, peut-être en exploitant ce plugin s’il est disponible…

3 « J'aime »

Merci pour cela. Je viens de l’installer pour une communauté éducative où j’essaie encore de faire monter le niveau de participation. Nous avons de nombreuses inscriptions pour des activités liées à des événements, mais c’est trop calme entre-temps.

J’ai défini le niveau de confiance minimum à “2” pour mettre en avant les utilisateurs les plus actifs sans trop de bruit.

3 « J'aime »

Il pourrait être utile de disposer d’une option ou d’une vue présentant les données sous forme de tableau.

1 « J'aime »

Mon intention avec cela était simplement de peindre une image.

Si vous voulez voir les données, allez simplement sur yoursite.com//usernetworkvis.json.

En tout cas, dans des cas individuels, vous pouvez voir une grande partie de ces données sur la page de résumé de chaque utilisateur en cliquant sur un nœud (le plus répondu, le plus aimé/aimé par).

3 « J'aime »

Et le rendu est magnifique. Les utilisateurs d’un plugin veulent toujours plus, on peut rêver. Merci pour le lien vers le JSON.

2 « J'aime »

Vous devriez également pouvoir adapter le SQL de la requête assez facilement et l’exécuter dans l’Explorateur de données :

1 « J'aime »

Mes utilisateurs adorent. J’espère que cela les incitera un peu plus ;)\n\nMais il y a un petit oubli : je ne peux pas traduire le texte « User Network » dans le menu hamburger.

2 « J'aime »

Je vais absolument l’installer lors de ma prochaine session de maintenance.

Merci @merefield :slight_smile:

2 « J'aime »

C’est de ma faute ! J’ajouterai bientôt le support de la localisation.

1 « J'aime »

Pas de problème, prenez votre temps. Ce n’est pas un problème majeur.

Mais maintenant, nous sommes dans une situation de panique. Les liens hamburger ne s’affichent pas du tout sur mobile.

1 « J'aime »

Ce plugin est super cool, merci beaucoup @merefield

3 « J'aime »

C’est fait :

ajouter la localisation pour l’entrée du menu · merefield/discourse-user-network-vis@c201b56 (github.com)

2 « J'aime »

Devrait maintenant être compatible avec un Discourse “Ember CLI’d” : COMPATIBILITY: fix settings ref for ember cli · merefield/discourse-user-network-vis@c87f1be (github.com)

3 « J'aime »

Salut Robert. Pourquoi as-tu fait ça

  var _this = this;

Est-ce parce que quelque part tu appelles quelque chose à l’intérieur de cette portée et alors this est pour la chose à l’intérieur et tu as besoin de sortir pour atteindre le this du parent ?

1 « J'aime »

C’est parce que la référence d’objet this change pendant l’appel asynchrone, donc elle ne pointe plus vers la même chose.

1 « J'aime »

J’aime beaucoup la visualisation ! Et j’aimerais la rendre accessible à toute une communauté, pas seulement aux administrateurs. Peut-être liée optionnellement comme la carte utilisateur dans l’annuaire des utilisateurs ?

De plus, j’aimerais avoir la possibilité de passer aux noms, par opposition aux noms d’utilisateur, pour être affichés.

Merci beaucoup pour le travail !

Il est déjà ouvert à la communauté. L’administrateur n’est pas requis. Le lien actuel devrait apparaître pour tous les utilisateurs.

Bonne idée ! PR avec option acceptée.

2 « J'aime »

Lien oui, mais la carte elle-même est juste vide lorsqu’elle est utilisée sur mobile.

Si c’est une fonctionnalité, le lien hamburger devrait-il être masqué lorsqu’un utilisateur utilise un écran plus petit ?