88 lines
2.2 KiB
Plaintext
88 lines
2.2 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"# Séance 1 — Rappels & prise en main de NetworkX\n",
|
|
"\n",
|
|
"**Objectifs pédagogiques**\n",
|
|
"- Réviser les définitions : nœuds, arêtes, graphes dirigés / non-dirigés / pondérés.\n",
|
|
"- Prendre en main `networkx` pour créer un graphe et le visualiser.\n",
|
|
"- Lire des mesures simples (degrés).\n",
|
|
"\n",
|
|
"**Consignes**\n",
|
|
"- Exécutez cellule par cellule.\n",
|
|
"- Commentez en 2-3 phrases ce que vous observez."
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"metadata": {},
|
|
"execution_count": null,
|
|
"outputs": [],
|
|
"source": [
|
|
"# Installation (si nécessaire) — peut être ignorée si networkx est déjà présent\n",
|
|
"# %pip install networkx matplotlib\n",
|
|
"\n",
|
|
"import networkx as nx\n",
|
|
"import matplotlib.pyplot as plt"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## 1) Créer un premier graphe non dirigé"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"metadata": {},
|
|
"execution_count": null,
|
|
"outputs": [],
|
|
"source": [
|
|
"# TODO: Compléter la liste d'arêtes pour former votre mini-réseau social\n",
|
|
"G = nx.Graph()\n",
|
|
"G.add_edges_from([\n",
|
|
" (\"Alice\", \"Bob\"),\n",
|
|
" (\"Bob\", \"Claire\"),\n",
|
|
" (\"Alice\", \"David\"),\n",
|
|
" # (\"Claire\", \"David\"), # décommentez pour ajouter un lien\n",
|
|
"])\n",
|
|
"\n",
|
|
"print(\"Nœuds :\", list(G.nodes()))\n",
|
|
"print(\"Arêtes:\", list(G.edges()))\n",
|
|
"print(\"Degrés:\", dict(G.degree()))\n",
|
|
"\n",
|
|
"plt.figure()\n",
|
|
"nx.draw(G, with_labels=True)\n",
|
|
"plt.show()"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## 2) Questions\n",
|
|
"1. Quel nœud a le plus grand degré ?\n",
|
|
"2. Que se passe-t-il si vous ajoutez l'arête ('Claire','David') ?\n",
|
|
"3. Donnez une interprétation sociologique rapide (qui est au centre ?)."
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 3",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"name": "python",
|
|
"pygments_lexer": "ipython3"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 4
|
|
}
|