{ "cells": [ { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Basic functionality on a graph\n", "\n", "After importing a Raphtory graph we can create a blank one to work with:\n", "\n", "* Graphs in Raphtory are directed by default\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "pycharm": { "name": "#%%\n" } }, "outputs": [ { "data": { "text/plain": [ "Graph(number_of_edges=0, number_of_vertices=0, earliest_time=0, latest_time=0)" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from raphtory import Graph\n", "g = Graph()\n", "g" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Once we have a new graph we can add vertices and edges to it via `add_vertex()` and `add_edge()`. For these:\n", "* The ids of vertices and the source/destination of an edge can be either strings or integers\n", "* All additions into the graph must happen at a specific time - this means updates are also additions\n", "* If you add an edge between vertices which do no exist in the graph yet, these will be automatically created\n", "* Properties can be added onto vertices and edges - this is a dict of any value, but the keys must be strings\n", "* We have a special type of `static property` which exists outside of the timeline and is always accessible. \n", "* Additions can be completed out of order, making it very easy to merge datasets together\n", "\n", "\n", "We can then check the state of the graph:\n", "* To see if a vertex or edge exists you can use `has_vertex()` and `has_edge()`\n", "* To get the earliest and latest times at which updates have been applied to the graph you can use `earliest_time()` and `latest_time()` - if no updates have been applied these will return `None`\n", "* To get the total number of vertices and edges of a graph you can use `num_edges()` and `num_vertices()`." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "True True False\n", "True False\n", "1 3\n", "True True False\n", "True False\n", "2 5\n", "Vertex(name=Ben, properties={_id : Ben})\n", "Edge(source=Haaroon, target=Hamza, earliest_time=7, latest_time=7, properties={property2 : 9.8, First-Met : 01/01/1990, property1 : 1, property3 : test})\n", "Graph(number_of_edges=3, number_of_vertices=6, earliest_time=1, latest_time=8)\n", "True\n" ] } ], "source": [ "# Basic Addition with integer IDs\n", "g.add_vertex(timestamp=1,id=10)\n", "g.add_edge(timestamp=2,src=1,dst=2)\n", "\n", "# checking vertex 10, 1 and 5 exist \n", "print(g.has_vertex(10), g.has_vertex(1), g.has_vertex(5))\n", "# checking edge 1,2 exists and 2,1 doesn't as Raphtory is directed\n", "print(g.has_edge(1,2),g.has_edge(2,1))\n", "# Check the total number of edges and vertices\n", "print(g.num_edges(),g.num_vertices())\n", "\n", "# Adding vertices and edges with String IDs\n", "g.add_vertex(timestamp=5,id=\"Ben\")\n", "g.add_edge(timestamp=8,src=\"Hamza\",dst=\"Ben\")\n", "\n", "# Performing the same checks as before, but with strings\n", "print(g.has_vertex(id=\"Ben\"), g.has_vertex(id=\"Hamza\"), g.has_vertex(id=\"Dave\"))\n", "print(g.has_edge(src=\"Hamza\",dst=\"Ben\"),g.has_edge(src=\"Ben\",dst=\"Hamza\"))\n", "print(g.num_edges(),g.num_vertices())\n", "\n", "#Add an edge with Temporal Properties which can change over time\n", "g.add_edge(timestamp=7,src=\"Haaroon\",dst=\"Hamza\",properties={\"property1\": 1, \"property2\": 9.8, \"property3\": \"test\"})\n", "#Add a static property which is immutable\n", "g.add_edge_properties(src=\"Haaroon\",dst=\"Hamza\",properties={\"First-Met\":\"01/01/1990\"})\n", "\n", "#Add an vertex with Temporal Properties which can change over time\n", "g.add_vertex(timestamp=5,id=\"Hamza\",properties= {\"property1\": 5, \"property2\": 12.5, \"property3\": \"test2\"})\n", "#Add a static property which is immutable\n", "g.add_vertex_properties(id=\"Hamza\",properties={\"Date-of-Birth\":\"01/01/1990\"})\n", "print(g.vertex(\"Ben\").__repr__())\n", "print(g.edge(\"Haaroon\",\"Hamza\").__repr__())\n", "print(g.__repr__())\n", "g.save_to_file(\"/tmp/graph\")\n", "\n", "loaded_graph = Graph.load_from_file(\"/tmp/graph\")\n", "\n", "print(loaded_graph.has_vertex(\"Hamza\"))" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from raphtory import graph_loader\n", "\n", "g = graph_loader.lotr_graph()\n", "view = g.at(300)\n", "g.add_vertex(timestamp=0,id=\"Gandalf\",properties={\"Race\":\"Maiar\"})\n", "\n", "#view[\"Gandalf\"][\"Race\"]\n", "from raphtory import vis\n", "\n", "vis.to_networkx(view, k=20)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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1157rSQpJyfHffgtLy9PV155pXuZvLw8NW/e/KK27XBUz4vMcBke53r9PqEyxw2XUaW1OJ2uauuttqN3/+xd8u/+6Z3e/UVZb61VpVJh6YEHHig15nK5lJOTo19//VUPP/zwRRcmSePGjVNeXp4WL17sHvv+++8lSddcc42uuOIK1a9fXxkZGe6wVFBQoB07dnhcagAAAKCyKhWWytoDYrVaFRsbq9TUVPXu3fuiC5OkP//5zxo+fLjmzJmjO++8U9nZ2Zo4caJuv/12NWvWTJLUv39/paenKzIyUpdddpmmT5+u6Ohode/evUpqAAAA/q1SYemPV9iuTjfffLNmzZqlBQsW6I033lCDBg10xx136LHHHnMvM2rUKDkcDqWlpamoqEjJyclauHChAgMDa6RGAADg2y7qnKUvv/xS33zzjQoKChQZGal27dqpU6dOlb6/qVOnlhq77bbbdNttt5W7TkBAgJ544gk98cQTld4uAABAeSoVloqLizV8+HBt3LhRAQEBioiI0PHjxzV//nx16NBB8+fP56tGAACAT6jUZ+xmz56trKwsTZs2Td999502btyo7du368UXX9S2bdv0+uuvV3WdAAAAXlGpsPThhx9qxIgRuvPOO91famuz2XTXXXdpxIgRWrt2bZUWCQAA4C2VCkvHjh1Tq1atypxr1aqVcnNzL6ooAACA2qJSYenKK69UVlZWmXNbtmwp9V1tAAAAdVWlTvC+//77NXXqVIWEhKhnz5665JJLdOTIEX344Yd64403NGLEiKquEwAAwCsqFZb69OmjHTt2KD09XS+//LJ73DAM9erVS0OHDq2yAgEAALyp0pcOmDx5sgYNGqRvvvlGJ06ckMVi0S233OK+sjYAAIAvqNA5S7t371bv3r311ltvSZKaNWumPn36qG/fvnrllVc0evRoZWdnV0uhAAAA3nDBYengwYN64IEHdOTIEcXExHjMBQYGaty4ccrPz1ffvn35NBwAAPAZFxyWFixYoD/96U96//331aNHD4+50NBQPfTQQ1q5cqWCg4M1f/78Ki8UAADAGy44LG3atElDhgxRZGRkucs0btxYgwYN0tdff10lxQEAAHjbBYelvLw8NW3a9LzLxcbGKicn52JqAgAAqDUuOCxFRkYqLy/vvMsdP35cDRs2vKiiAAAAaosLDkvJyclatWrVeZdb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zn8aLigoSP3791d6eroiIyN12WWXafr06YqOjlb37t29XR4AAKjj6nxYkqRRo0bJ4XAoLS1NRUVFSk5O1sKFCxUYGOjt0gAAQB1X5z8NBwAAUJ3q/DlLAAAA1YmwBAAAYIKwBAAAYIKwBAAAYIKwBAAAYIKwBAAAYIKwBAAAYIKw5GPy8/P13HPPqXPnzkpKSlKfPn2UmZnpnt+0aZPuvvtutW3bVj169NBHH33kxWqrT3Z2thITE7Vq1Sr32M6dO9W/f38lJCSoW7duevvtt71YYfVYvXq1/vKXvyguLk49e/bU3//+d/fcwYMHlZqaqqSkJN14442aNWuWnE6nF6utOg6HQ6+88opuuukmJSYmql+/ftq2bZt73lef+/nz52vAgAEeY+fr1eVy6dVXX1WnTp2UkJCghx9+WL/88ktNll0lyur9888/V+/evZWYmKhu3brppZdeUlFRkXvebrdrwoQJ6tixoxITEzVmzBgdO3aspku/aGX1/kdpaWnq1q2bx5gvP+95eXkaPXq02rdvr+uuu67M5/Wdd97RzTffrPj4ePXt21c7duyo2IYN+JSBAwcat99+u7Flyxbjp59+MiZMmGDEx8cbP/74o7Fv3z4jLi7OmDFjhrFv3z7jzTffNFq1amX885//9HbZVaq4uNi4++67jdjYWOO9994zDMMwjh07Zlx33XXG+PHjjX379hkrV6404uLijJUrV3q52qqzevVqo1WrVsayZcuMAwcOGHPnzjVatGhhbN261SguLja6d+9uDB061Ni9e7exfv16IyUlxXjllVe8XXaVePXVV40bbrjB+Oqrr4z9+/cbzzzzjNGuXTsjNzfXZ5/7ZcuWGS1atDD69+/vHruQXmfPnm1cd911xhdffGHs3LnTGDRokNG9e3fDbrd7o41KKav3LVu2GC1btjRef/11Izs72/jHP/5hdO7c2Xjqqafcyzz11FPGLbfcYmzZssXYvn27cddddxn9+vXzRguVVlbvf7R+/XojNjbWuOmmmzzGffV5t9vtRs+ePY3/+Z//MX744Qdj27Ztxl/+8hdjyJAh7mVWrVplxMfHG2vWrDH27t1rPPHEE0ZKSopx9OjRC942YcmH7N+/34iNjTUyMzPdYy6Xy7jllluMWbNmGc8++6xxzz33eKwzevRoY9CgQTVdarV6+eWXjQceeMAjLM2bN8+48cYbjZKSEo/lunfv7q0yq5TL5TJuuukmY+rUqR7jgwYNMubNm2esXbvWaNOmjZGfn++e++tf/2okJSXVqV+W5bnzzjuNF1980X375MmTRmxsrLFu3Tqfe+5zcnKM1NRUIyEhwejRo4fHG8f5erXb7UZiYqLxzjvvuOdPnDhhxMfHG2vXrq25JirJrPcxY8YYDz30kMfy77//vtG6dWvDbrcbOTk5RosWLYx//OMf7vmffvrJiI2NNbZu3VpjPVSWWe/n5ObmGh06dDD69+/vEZZ8+Xl/7733jISEBOPw4cPusS+//NK4+eabjZMnTxqGYRjdu3c3pk2b5p4vKSkxunTpYsybN++Ca+AwnA+JiIjQggULFBcX5x6zWCyyWCwqKChQZmamOnbs6LFOhw4dlJWVJcNHvvVmy5YtWrFihaZOneoxnpmZqZSUFNlsv38dYocOHbR//34dOXKkpsusctnZ2fr11191xx13eIwvXLhQqampyszMVOvWrdWwYUP3XIcOHXTq1Cnt3Lmzpsutco0aNdIXX3yhgwcPyul0asWKFQoKClKLFi187rn/4YcfFBgYqA8++EBt27b1mDtfr7t27dLp06c9fg+Eh4erVatW2rJlS431UFlmvQ8aNEhPPvmkx5jValVJSYlOnTqlrKwsSWcfj3NiYmIUFRVV53uXJMMw9NRTT+m///u/lZKS4jHny8/7xo0b1aFDB11yySXusU6dOmnDhg2qX7++jh49qv3793v0brPZ1L59+wr1TljyIeHh4erSpYuCgoLcY+vWrdOBAwfUqVMn5eTkKDo62mOdJk2aqLCwUMePH6/pcqtcQUGBxo0bp7S0NF166aUec+X1Lkm//fZbjdVYXbKzsyVJZ86c0eDBg9WxY0fde++9+vzzzyX5fv/PPPOMAgMDdfPNNysuLk4zZ87Uq6++qiuvvNLneu/WrZtmz56tK664otTc+XrNycmRpFL/Ppo0aeKeq83Mem/VqpVatGjhvl1SUqLFixerTZs2ioyMVG5uriIiIhQcHOyxni/0LkmLFy/W4cOHNXr06FJzvvy8Z2dn6/LLL9drr72mW2+9VTfddJOeffZZFRQUSKq63glLPmzr1q0aP368unfvrq5du6qoqMgjSEly3y4uLvZGiVXqhRdeUGJiYqm9K5LK7P3cL0273V4j9VWnU6dOSZKefPJJ3X777Vq0aJFuuOEGDR8+XJs2bfL5/vft26cGDRrotdde04oVK3T33Xdr7Nix2rlzp8/3/kfn67WwsFCSylzGlx4Lh8OhcePGae/evXr++eclSYWFhaX6lnyj9127dmnOnDmaPn16mT368vN+6tQprV69Wrt379bLL7+siRMnKisrS8OHD5dhGFXWu+38i6Au2rBhg8aOHaukpCSlp6dLOvvi+M9QdO52aGhojddYlVavXq3MzEytXbu2zPmQkJBSvZ/7hxIWFlbt9VW3wMBASdLgwYPVq1cvSVLLli21Y8cOvfXWWz7d/2+//aYxY8Zo8eLFat++vSQpLi5O+/bt0+zZs3269/90vl5DQkIknf13f+7nc8vU9d8B55w6dUqPPfaYvvnmG82ZM0fx8fGSyn5spLrfu91u19ixYzVs2DCPPWt/5MvPu81mU1hYmF5++WX378GGDRvq3nvv1ffff+/R+x9VtHf2LPmgZcuWaeTIkbrppps0b9489/8sL730UuXl5Xksm5eXp7CwMDVo0MAbpVaZ9957T0ePHlXXrl2VmJioxMRESdLzzz+vIUOGKDo6uszeJSkqKqrG661q53qIjY31GL/mmmt08OBBn+5/+/btKikp8ThXT5Latm2rAwcO+HTv/+l8vZ47FFHWMr7wWOTl5bkvG7Fw4UJ16dLFPRcdHa38/PxSb5p1vfft27dr7969mjNnjvt33/z583Xo0CElJiYqMzPTp5/36OhoxcTEuIOSJF177bWSzl4upap6Jyz5mOXLl2vSpEnq16+fZsyY4bHrsX379vrmm288lt+8ebOSkpJktdbtl0J6ero+/vhjrV692v1HkkaNGqXJkycrOTlZWVlZHtcV2rx5s2JiYtSoUSMvVV11WrdurXr16mn79u0e43v27NGVV16p5ORk7dixw324Tjrbf7169cr932hdce4cnd27d3uM79mzR02bNvX55/6PztdrixYtVL9+fWVkZLjnCwoKtGPHDiUnJ3uj5Cpz4sQJPfjggzp27JjeeeedUv20a9dOLpfLfaK3dPZ8l9zc3Drde3x8vD799FOtWbPG/bvv/vvvV5MmTbR69Wq1adPGp5/35ORk7dq1y+N6Wnv27JEkXXXVVWrUqJFiYmI8enc4HMrMzKxQ73X7HRIesrOzNWXKFN16661KTU3VkSNHdPjwYR0+fFgnT57UgAED9N133yk9PV0//vijFi1apE8++URDhgzxdukXLSoqSldddZXHH+nsp6SioqLUu3dvnTp1Ss8884z27dunVatWafHixUpNTfVy5VUjJCREQ4YM0WuvvaYPP/xQP//8s15//XV9/fXXGjhwoG655RY1btxYjz32mHbt2qUNGzZoxowZGjRoUJnnONQl8fHxateunZ588klt3rxZ+/fv16xZs7Rp0yYNHTrU55/7Pzpfr0FBQerfv7/S09P12WefadeuXXr88ccVHR2t7t27e7n6i/Piiy/ql19+0fTp0xUZGen+3Xf48GE5nU5FRUWpZ8+eSktLU0ZGhr777juNHj1aKSkpSkhI8Hb5lRYSElLqd1/Dhg1ls9l01VVXKSQkxKef9/vvv18BAQEaM2aM9u7dq6ysLKWlpem6665T69atJZ39pORbb72l999/X/v27dPTTz+toqIi3XPPPRe8Hc5Z8iHr1q1TSUmJ1q9fr/Xr13vM9erVS1OnTtXcuXM1ffp0LVmyRJdffrmmT59e6nICvqhRo0Z68803NXnyZPXq1UuNGzfWuHHj3Of3+ILhw4crNDRUM2fOVG5urpo1a6bZs2fruuuukyS9+eabmjBhgu677z41bNhQffv21fDhw71c9cWzWq16/fXXNWvWLI0fP14nTpxQbGysFi9e7P6Ysa8/9+dcyOt81KhRcjgcSktLU1FRkZKTk7Vw4UKPwxh1jdPp1Mcff6ySkhI9+OCDpeY/++wzXX755Zo0aZKmTJmiESNGSJI6d+6stLS0mi7XK3zxeZekyMhIvfPOO3rxxRd17733KigoSLfccoueeuop9zL33XefTp48qVmzZik/P19t2rTRW2+9pcjIyAvejsXwlQvsAAAAVAMOwwEAAJggLAEAAJggLAEAAJggLAEAAJggLAEAAJggLAEAAJggLAEAAJggLAGo9VatWqXmzZvr4MGD3i4FgB8iLAEAAJggLAEAAJggLAGoVVwul+bOnauuXbuqbdu2Gj58uE6cOOGxzJ49e5SamqqkpCQlJSXpkUce0S+//OKxzI8//qiHH35YSUlJuv766zVz5kyNHz9eAwYMcC/TvHlzzZkzR3fffbfi4+M1Z84cSdKhQ4fcX7Latm1bPfjgg9qxY4fH/dvtdk2bNk1dunRRmzZtdMcdd+jjjz+upkcFgDfx3XAAapWXXnpJb7/9toYNG6a2bdvq73//uz744AOVlJTos88+U0lJiXr37q2rr75aqampcjgcev3113Xs2DGtWbNGjRo10rFjx9SzZ081atRII0eOlNPp1CuvvKJDhw4pISFBS5culXQ2LAUGBmrMmDGKiYnRZZddpkaNGumuu+5SaGioRowYodDQUC1ZskT/+te/tHLlSjVr1kyGYejhhx/W1q1bNWrUKDVr1kzr16/XihUr9NJLL+muu+7y7oMIoGoZAFBLnDhxwmjdurUxffp0j/HBgwcbsbGxxi+//GKMHj3auP76642TJ0+6548fP260a9fOmDp1qmEYhjFr1iwjLi7OyMnJcS9z8OBBo3Xr1kb//v3dY7GxscaDDz7osa0ZM2YYcXFxxsGDB91jdrvduPnmm42RI0cahmEYGzduNGJjY42PPvrIY92xY8caN9xwg1FSUnJxDwSAWoXDcABqjW3btqmkpEQ33XSTx/htt93m/nnz5s1KSUlRSEiIHA6HHA6H6tevr/bt2+uf//yne5nExERFRUW517vsssuUmJhYapstW7b0uL1p0ya1bNlSUVFR7vu3Wq3q3Lmz+/43bdoki8WiLl26uJdxOBzq1q2bDh8+rL1791bZYwLA+2zeLgAAzjl3blJERITHeOPGjd0/5+fn6+OPPy7z/KDIyEhJ0rFjx9S6detS85dccomOHDniMRYWFuZxOz8/XwcOHChzfUkqLCxUfn6+DMNQUlJSmcvk5eWVCmEA6i7CEoBa41xIOnr0qK6++mr3eH5+vvvnBg0a6Prrr9fAgQNLrW+znf2VFh0dXSoUnbvf82nQoIFSUlI0bty4MueDgoLUoEEDhYWF6e233y5zmauuuuq82wFQd3AYDkCtkZiYqJCQEH3yySce41988YX755SUFO3bt08tW7ZUXFyc4uLi1KZNGy1evFjr16+XJCUnJ2vbtm06fPiwe728vDxt27btvDWkpKQoOztbMTEx7vuPi4vTmjVrtHLlSgUEBCglJUVnzpyRYRgey+zZs0evvfaaHA5H1TwgAGoFwhKAWqNevXoaPny4li9frvT0dG3cuFGTJ0/2CEvDhw/Xzz//rNTUVG3YsEFfffWVRo4cqY8++kgtWrSQJD3wwAOqV6+eBg8erHXr1mndunV6+OGHVVJSIovFYlrDQw89JJfLpYceekgff/yxNm3apGeffVZLly5VTEyMJKlLly5KTk5215qRkaE33nhDL7zwgqxWq/twIADfwKUDANQ6S5cu1ZIlS5Sbm6vExETddttteuGFF/TZZ5/p8ssv1w8//KCZM2dq69atMgxDsbGxGjp0qG6++Wb3fezdu1eTJ0/Wt99+q3r16qlv377auHGj/vSnP2nevHmSzl46YMSIERo5cqTH9n/++We9/PLL2rRpk+x2u5o2baoBAwbonnvucS9z5swZvfLKK/rkk0909OhRRUVFqWfPnnrkkUcUHBxcMw8UgBpBWALgc7Zv3678/Hx16dLFPeZwONS1a1f17NlT48eP92J1AOoaTvAG4HMOHTqkxx9/XI888ohSUlJUWFioFStW6OTJk7rvvvu8XR6AOoY9SwB80v/93/9p+fLl+uWXXxQYGKi2bdvq0UcfVVxcnLdLA1DHEJYAAABM8Gk4AAAAE4QlAAAAE4QlAAAAE4QlAAAAE4QlAAAAE4QlAAAAE4QlAAAAE4QlAAAAE4QlAAAAE/8PRSIpLfC7S4IAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from raphtory import graph_gen\n", "\n", "g = Graph(4)\n", "graph_gen.ba_preferential_attachment(g,vertices_to_add=1000,edges_per_step=10)\n", "view = g.window(0,1000)\n", "\n", "ids = []\n", "degrees = []\n", "for v in view.vertices():\n", " ids.append(v.id)\n", " degrees.append(v.degree())\n", "\n", "df = pd.DataFrame.from_dict({\"id\":ids,\"degree\": degrees})\n", "\n", "sns.set()\n", "sns.histplot(df.degree)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "from raphtory import Graph\n", "from raphtory import algorithms\n", "from raphtory import graph_loader\n", "g = graph_loader.lotr_graph()\n", "views_l1 = g.rolling(1000)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAi4AAAHPCAYAAAB0ulFlAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABgU0lEQVR4nO3dd3RU1RoF8D0lk947JQkQWuhFBBFQqkoRUBAVrAhIEQQU8NFEQVCqgNJB6aCCIAiCFBFpoXcSAqRAepn0TDnvj5CBmCCZMJObmezfWm/5cmdy+eYDcjfnnnOuTAghQERERGQB5FIXQERERFRSDC5ERERkMRhciIiIyGIwuBAREZHFYHAhIiIii8HgQkRERBaDwYWIiIgsBoMLERERWQwGFyIiIrIYSqkLMDUhBPR6024GLJfLTH5OS8eeFI99KYo9KR77UhR7UlRF6YlcLoNMJivRe60uuOj1AsnJmSY7n1Iph7u7I9TqLGi1epOd15KxJ8VjX4piT4rHvhTFnhRVkXri4eEIhaJkwYW3ioiIiMhiMLgQERGRxWBwISIiIovB4EJEREQWg8GFiIiILAaDCxEREVkMBhciIiKyGAwuREREZDEYXIiIiMhiMLgQERGRxWBwISIiIovB4EJEREQWg8GFiIiILIbkwSUuLg61a9cu8r9ffvlF6tKIiIjoPr1e4PC5GNyJTZe0DqWkvzqAa9euwdbWFvv374dM9uCR1s7OzhJWRURERA/bezISWw/dRL0gd4zp10SyOiQPLjdu3EBQUBB8fHykLoWIiIj+JTohA9cjU7H971sAgKdD/CStR/Lgcv36ddSoUUPqMoiIiCqUg2eicfxKHAZ2C4G3m32x77l8KxnztpyHXggAQL0gd7RuUMGDy40bN+Du7o4333wTt27dQmBgID788EO0bdu21OdUKk03dUehkBf6L7Enj8K+FMWeFI99KYo9KcqcPYmMS8eG/WHQ6QXW/H4N4/s3hUwmQ1JaDjbuv4GE1BwAwN3ETOiFQJC/Myp5OqJv+2DY2ChMXo8xZELcj1ES0Gq1aNy4MYKDgzF+/Hg4OTlh165dWL16NVavXo1WrVoZfU4hRKG5MkRERBVdijoH6sw8XLuTgtCrsYiISUN8Srbh9bpBHrC3VSIsKhXpWXmFvrdedU98MbgVbJTSBpYCkgYXAMjMzIRCoYCdnZ3h2MCBAwEAK1asMPp8Op0eanX2499YQgqFHC4u9lCrs6HT6U12XkvGnhSPfSmKPSke+1IUe1KUqXoScTcN01aHGm73FHCwVeL5ppWx69idQseD/JzxcptqUMjlsFHKUSfQDQq5eUfCXFzsSzyyJPmtIkdHxyLHatasib///rvU59RqTf+HXqfTm+W8low9KR77UhR7Ujz2pSj2pKgn7cmuf+5ALwRsbRTwdrNDi7q+cHOyRY3KLvDzcEBwZVdk5mgAAHYqJRpU9yg0uiL0gFZffn5PJA0uYWFheO211/D999/j6aefNhy/dOkSgoODJayMiIjI8iWrc3D6egIAYEL/pgjwLbrVSKNgr7Iu64lIOguqRo0aqF69OqZNm4bQ0FDcvHkTX331Fc6dO4cPP/xQytKIiIgs3l/n70IvBGpXdSs2tFgiSUdc5HI5lixZgjlz5mDUqFFQq9UICQnB6tWrUatWLSlLIyIisni37+9y26Ku9eyVJvkcFy8vL3z11VdSl0FERGR18jQ6AICDnY3ElZgOF8wTERFZKc39Sb0qG+u53FvPJyEiIqJCcjX3g0s52YPFFBhciIiIrFSeNv9WEUdciIiIqNwrmOPCERciIiIq9/I0nONCREREFiLv/uRcW4kfjGhKDC5ERERWSK8X0N5/xpGN0nou99bzSYiIiMigYGIuAKg44kJERETlWcH8FoAjLkRERFTOPVhRJIdcJpO4GtNhcCEiIrJCeYZdc63nNhHA4EJERGSVCua4WNNtIoDBhYiIyCo92MOFIy5ERERUzhXMcbHliAsRERGVd7kccSEiIiJLobHCBywCDC5ERERWybCqyIoesAgwuBAREVmlXA1HXIiIiMhCPNiAjiMuREREVM49WA5tXZd66/o0REREBADQcOdcIiIishS52gfPKrIm1vVpiIiICMBDc1w44kJERETlnWGOC0dciIiIqLzjiAsRERFZDMMGdFxVREREROVdnpb7uBAREZGF4D4uREREZDG4cy4RERFZjII5LracnEtERETlXR4fskhERESWomDExYb7uBAREVF5pheCzyoiIiIiy6C5v6IIAGw5OZeIiIjKM3VWHgBAIZfBhnNciIiIqDyLjMsAAFT2coRcJpO4GtNicCEiIrIykXHpAIAAX2eJKzE9BhciIiIrExWfP+JS1ddJ4kpMj8GFiIjIyty5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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "views = g.expanding(100)\n", "\n", "timestamps = []\n", "vertex_count = []\n", "edge_count = []\n", "degree = []\n", "\n", "for view in views:\n", " timestamps.append(view.latest_time())\n", " #vertex_count.append(view.num_vertices()) \n", " #edge_count.append(view.num_edges())\n", " degree.append(view.num_edges()/max(1,view.num_vertices())) \n", " \n", "sns.set_context()\n", "ax = plt.gca()\n", "plt.xticks(rotation=45)\n", "ax.set_xlabel(\"Time\")\n", "ax.set_ylabel(\"Average Interactions\")\n", "sns.lineplot(x = timestamps, y = degree,ax=ax) " ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "views = g.expanding(step=10) \n", "\n", "timestamps = []\n", "degree = []\n", "\n", "for view in views:\n", " timestamps.append(view.latest_time())\n", " gandalf = view.vertex(\"Gandalf\")\n", " if(gandalf is not None):\n", " degree.append(gandalf.degree())\n", " else:\n", " degree.append(0)\n", " \n", " \n", "sns.set_context()\n", "ax = plt.gca()\n", "plt.xticks(rotation=45)\n", "ax.set_xlabel(\"Time\")\n", "ax.set_ylabel(\"Interactions\")\n", "sns.lineplot(x = timestamps, y = degree,ax=ax) " ] } ], "metadata": { "kernelspec": { "display_name": "raphtory", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.9" }, "vscode": { "interpreter": { "hash": "cb87ca7661adc8f1194e8349af5289fc4d6184622935eb2bec01493e8d44e9d2" } } }, "nbformat": 4, "nbformat_minor": 4 }