{ "cells": [ { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Res1D - Basic" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Open a network result file." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import mikeio1d" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "res = mikeio1d.open(\"../tests/testdata/network.res1d\")\n", "res" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Start time: 1994-08-07 16:35:00\n", "End time: 1994-08-07 18:35:00\n", "# Timesteps: 110\n", "# Catchments: 0\n", "# Nodes: 119\n", "# Reaches: 118\n", "# Globals: 0\n", "0 - Water level (m)\n", "1 - Discharge (m^3/s)\n" ] } ], "source": [ "res.info()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['WaterLevel', 'Discharge']" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "res.quantities" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['ReachWaterLevelAboveCritical',\n", " 'ReachFlooding',\n", " 'ReachWaterDepth',\n", " 'NodeWaterDepth',\n", " 'NodeFlooding',\n", " 'ReachFilling',\n", " 'ReachAbsoluteDischarge',\n", " 'ReachQQManning',\n", " 'NodeWaterLevelAboveCritical']" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "res.derived_quantities" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Read all available results" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
WaterLevel:1WaterLevel:2WaterLevel:3WaterLevel:4WaterLevel:5WaterLevel:6WaterLevel:7WaterLevel:8WaterLevel:9WaterLevel:10...Discharge:99l1:22.2508WaterLevel:9l1:0WaterLevel:9l1:10Discharge:9l1:5WaterLevel:Weir:119w1:0WaterLevel:Weir:119w1:1Discharge:Weir:119w1:0.5WaterLevel:Pump:115p1:0WaterLevel:Pump:115p1:82.4281Discharge:Pump:115p1:41.214
1994-08-07 16:35:00.000195.052994195.821503195.8815193.604996193.615005193.625000193.675003193.764999193.774994193.804993...0.000002193.774994193.7649990.000031193.550003188.4799960.0193.304993195.0050050.0
1994-08-07 16:36:01.870195.052994195.821701195.8815193.604996193.615005193.625320193.675110193.765060193.775116193.804993...0.000002193.775070193.7650600.000031193.550003188.4799960.0193.306061195.0050050.0
1994-08-07 16:37:07.560195.052994195.821640195.8815193.604996193.615005193.625671193.675369193.765106193.775513193.804993...0.000002193.775391193.7651060.000033193.550034188.4799960.0193.307144195.0050050.0
1994-08-07 16:38:55.828195.052994195.821503195.8815193.604996193.615005193.626236193.675751193.765228193.776077193.804993...0.000002193.775894193.7652280.000037193.550079188.4799960.0193.308884195.0050050.0
1994-08-07 16:39:55.828195.052994195.821503195.8815193.604996193.615005193.626556193.675949193.765335193.776352193.804993...0.000002193.776154193.7653350.000039193.550095188.4799960.0193.309860195.0050050.0
\n", "

5 rows × 495 columns

\n", "
" ], "text/plain": [ " WaterLevel:1 WaterLevel:2 WaterLevel:3 \\\n", "1994-08-07 16:35:00.000 195.052994 195.821503 195.8815 \n", "1994-08-07 16:36:01.870 195.052994 195.821701 195.8815 \n", "1994-08-07 16:37:07.560 195.052994 195.821640 195.8815 \n", "1994-08-07 16:38:55.828 195.052994 195.821503 195.8815 \n", "1994-08-07 16:39:55.828 195.052994 195.821503 195.8815 \n", "\n", " WaterLevel:4 WaterLevel:5 WaterLevel:6 \\\n", "1994-08-07 16:35:00.000 193.604996 193.615005 193.625000 \n", "1994-08-07 16:36:01.870 193.604996 193.615005 193.625320 \n", "1994-08-07 16:37:07.560 193.604996 193.615005 193.625671 \n", "1994-08-07 16:38:55.828 193.604996 193.615005 193.626236 \n", "1994-08-07 16:39:55.828 193.604996 193.615005 193.626556 \n", "\n", " WaterLevel:7 WaterLevel:8 WaterLevel:9 \\\n", "1994-08-07 16:35:00.000 193.675003 193.764999 193.774994 \n", "1994-08-07 16:36:01.870 193.675110 193.765060 193.775116 \n", "1994-08-07 16:37:07.560 193.675369 193.765106 193.775513 \n", "1994-08-07 16:38:55.828 193.675751 193.765228 193.776077 \n", "1994-08-07 16:39:55.828 193.675949 193.765335 193.776352 \n", "\n", " WaterLevel:10 ... Discharge:99l1:22.2508 \\\n", "1994-08-07 16:35:00.000 193.804993 ... 0.000002 \n", "1994-08-07 16:36:01.870 193.804993 ... 0.000002 \n", "1994-08-07 16:37:07.560 193.804993 ... 0.000002 \n", "1994-08-07 16:38:55.828 193.804993 ... 0.000002 \n", "1994-08-07 16:39:55.828 193.804993 ... 0.000002 \n", "\n", " WaterLevel:9l1:0 WaterLevel:9l1:10 Discharge:9l1:5 \\\n", "1994-08-07 16:35:00.000 193.774994 193.764999 0.000031 \n", "1994-08-07 16:36:01.870 193.775070 193.765060 0.000031 \n", "1994-08-07 16:37:07.560 193.775391 193.765106 0.000033 \n", "1994-08-07 16:38:55.828 193.775894 193.765228 0.000037 \n", "1994-08-07 16:39:55.828 193.776154 193.765335 0.000039 \n", "\n", " WaterLevel:Weir:119w1:0 WaterLevel:Weir:119w1:1 \\\n", "1994-08-07 16:35:00.000 193.550003 188.479996 \n", "1994-08-07 16:36:01.870 193.550003 188.479996 \n", "1994-08-07 16:37:07.560 193.550034 188.479996 \n", "1994-08-07 16:38:55.828 193.550079 188.479996 \n", "1994-08-07 16:39:55.828 193.550095 188.479996 \n", "\n", " Discharge:Weir:119w1:0.5 WaterLevel:Pump:115p1:0 \\\n", "1994-08-07 16:35:00.000 0.0 193.304993 \n", "1994-08-07 16:36:01.870 0.0 193.306061 \n", "1994-08-07 16:37:07.560 0.0 193.307144 \n", "1994-08-07 16:38:55.828 0.0 193.308884 \n", "1994-08-07 16:39:55.828 0.0 193.309860 \n", "\n", " WaterLevel:Pump:115p1:82.4281 \\\n", "1994-08-07 16:35:00.000 195.005005 \n", "1994-08-07 16:36:01.870 195.005005 \n", "1994-08-07 16:37:07.560 195.005005 \n", "1994-08-07 16:38:55.828 195.005005 \n", "1994-08-07 16:39:55.828 195.005005 \n", "\n", " Discharge:Pump:115p1:41.214 \n", "1994-08-07 16:35:00.000 0.0 \n", "1994-08-07 16:36:01.870 0.0 \n", "1994-08-07 16:37:07.560 0.0 \n", "1994-08-07 16:38:55.828 0.0 \n", "1994-08-07 16:39:55.828 0.0 \n", "\n", "[5 rows x 495 columns]" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = res.read()\n", "df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Read subsets of available results" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
WaterLevel:100l1:0WaterLevel:100l1:47.6827WaterLevel:101l1:0WaterLevel:101l1:66.4361WaterLevel:102l1:0WaterLevel:102l1:10.9366WaterLevel:103l1:0WaterLevel:103l1:26.0653WaterLevel:104l1:0WaterLevel:104l1:34.4131...Discharge:93l1:24.5832Discharge:94l1:21.2852Discharge:95l1:21.9487Discharge:96l1:14.9257Discharge:97l1:5.71207Discharge:98l1:8.00489Discharge:99l1:22.2508Discharge:9l1:5Discharge:Weir:119w1:0.5Discharge:Pump:115p1:41.214
1994-08-07 16:35:00.000195.441498194.661499195.931503195.441498193.550003193.550003195.801498195.701508197.072006196.962006...0.0000040.0000030.0000010.0000050.0000130.0000030.0000020.0000310.00.0
1994-08-07 16:36:01.870195.441498194.661621195.931503195.441605193.550140193.550064195.801498195.703171197.072006196.962051...0.0000040.0000030.0000010.0000050.0000100.0000030.0000020.0000310.00.0
1994-08-07 16:37:07.560195.441498194.661728195.931503195.441620193.550232193.550156195.801498195.703400197.072006196.962082...0.0000040.0000030.0000010.0000050.0000100.0000030.0000020.0000330.00.0
1994-08-07 16:38:55.828195.441498194.661804195.931503195.441605193.550369193.550308195.801498195.703690197.072006196.962112...0.0000040.0000030.0000010.0000050.0000090.0000030.0000020.0000370.00.0
1994-08-07 16:39:55.828195.441498194.661972195.931503195.441605193.550430193.550369195.801498195.703827197.072006196.962128...0.0000040.0000030.0000010.0000050.0000090.0000030.0000020.0000390.00.0
\n", "

5 rows × 376 columns

\n", "
" ], "text/plain": [ " WaterLevel:100l1:0 WaterLevel:100l1:47.6827 \\\n", "1994-08-07 16:35:00.000 195.441498 194.661499 \n", "1994-08-07 16:36:01.870 195.441498 194.661621 \n", "1994-08-07 16:37:07.560 195.441498 194.661728 \n", "1994-08-07 16:38:55.828 195.441498 194.661804 \n", "1994-08-07 16:39:55.828 195.441498 194.661972 \n", "\n", " WaterLevel:101l1:0 WaterLevel:101l1:66.4361 \\\n", "1994-08-07 16:35:00.000 195.931503 195.441498 \n", "1994-08-07 16:36:01.870 195.931503 195.441605 \n", "1994-08-07 16:37:07.560 195.931503 195.441620 \n", "1994-08-07 16:38:55.828 195.931503 195.441605 \n", "1994-08-07 16:39:55.828 195.931503 195.441605 \n", "\n", " WaterLevel:102l1:0 WaterLevel:102l1:10.9366 \\\n", "1994-08-07 16:35:00.000 193.550003 193.550003 \n", "1994-08-07 16:36:01.870 193.550140 193.550064 \n", "1994-08-07 16:37:07.560 193.550232 193.550156 \n", "1994-08-07 16:38:55.828 193.550369 193.550308 \n", "1994-08-07 16:39:55.828 193.550430 193.550369 \n", "\n", " WaterLevel:103l1:0 WaterLevel:103l1:26.0653 \\\n", "1994-08-07 16:35:00.000 195.801498 195.701508 \n", "1994-08-07 16:36:01.870 195.801498 195.703171 \n", "1994-08-07 16:37:07.560 195.801498 195.703400 \n", "1994-08-07 16:38:55.828 195.801498 195.703690 \n", "1994-08-07 16:39:55.828 195.801498 195.703827 \n", "\n", " WaterLevel:104l1:0 WaterLevel:104l1:34.4131 ... \\\n", "1994-08-07 16:35:00.000 197.072006 196.962006 ... \n", "1994-08-07 16:36:01.870 197.072006 196.962051 ... \n", "1994-08-07 16:37:07.560 197.072006 196.962082 ... \n", "1994-08-07 16:38:55.828 197.072006 196.962112 ... \n", "1994-08-07 16:39:55.828 197.072006 196.962128 ... \n", "\n", " Discharge:93l1:24.5832 Discharge:94l1:21.2852 \\\n", "1994-08-07 16:35:00.000 0.000004 0.000003 \n", "1994-08-07 16:36:01.870 0.000004 0.000003 \n", "1994-08-07 16:37:07.560 0.000004 0.000003 \n", "1994-08-07 16:38:55.828 0.000004 0.000003 \n", "1994-08-07 16:39:55.828 0.000004 0.000003 \n", "\n", " Discharge:95l1:21.9487 Discharge:96l1:14.9257 \\\n", "1994-08-07 16:35:00.000 0.000001 0.000005 \n", "1994-08-07 16:36:01.870 0.000001 0.000005 \n", "1994-08-07 16:37:07.560 0.000001 0.000005 \n", "1994-08-07 16:38:55.828 0.000001 0.000005 \n", "1994-08-07 16:39:55.828 0.000001 0.000005 \n", "\n", " Discharge:97l1:5.71207 Discharge:98l1:8.00489 \\\n", "1994-08-07 16:35:00.000 0.000013 0.000003 \n", "1994-08-07 16:36:01.870 0.000010 0.000003 \n", "1994-08-07 16:37:07.560 0.000010 0.000003 \n", "1994-08-07 16:38:55.828 0.000009 0.000003 \n", "1994-08-07 16:39:55.828 0.000009 0.000003 \n", "\n", " Discharge:99l1:22.2508 Discharge:9l1:5 \\\n", "1994-08-07 16:35:00.000 0.000002 0.000031 \n", "1994-08-07 16:36:01.870 0.000002 0.000031 \n", "1994-08-07 16:37:07.560 0.000002 0.000033 \n", "1994-08-07 16:38:55.828 0.000002 0.000037 \n", "1994-08-07 16:39:55.828 0.000002 0.000039 \n", "\n", " Discharge:Weir:119w1:0.5 Discharge:Pump:115p1:41.214 \n", "1994-08-07 16:35:00.000 0.0 0.0 \n", "1994-08-07 16:36:01.870 0.0 0.0 \n", "1994-08-07 16:37:07.560 0.0 0.0 \n", "1994-08-07 16:38:55.828 0.0 0.0 \n", "1994-08-07 16:39:55.828 0.0 0.0 \n", "\n", "[5 rows x 376 columns]" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = res.reaches.read()\n", "df.head()" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
WaterLevel:100l1:0WaterLevel:100l1:47.6827Discharge:100l1:23.8414
1994-08-07 16:35:00.000195.441498194.6614990.000006
1994-08-07 16:36:01.870195.441498194.6616210.000006
1994-08-07 16:37:07.560195.441498194.6617280.000006
1994-08-07 16:38:55.828195.441498194.6618040.000006
1994-08-07 16:39:55.828195.441498194.6619720.000006
\n", "
" ], "text/plain": [ " WaterLevel:100l1:0 WaterLevel:100l1:47.6827 \\\n", "1994-08-07 16:35:00.000 195.441498 194.661499 \n", "1994-08-07 16:36:01.870 195.441498 194.661621 \n", "1994-08-07 16:37:07.560 195.441498 194.661728 \n", "1994-08-07 16:38:55.828 195.441498 194.661804 \n", "1994-08-07 16:39:55.828 195.441498 194.661972 \n", "\n", " Discharge:100l1:23.8414 \n", "1994-08-07 16:35:00.000 0.000006 \n", "1994-08-07 16:36:01.870 0.000006 \n", "1994-08-07 16:37:07.560 0.000006 \n", "1994-08-07 16:38:55.828 0.000006 \n", "1994-08-07 16:39:55.828 0.000006 " ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = res.reaches[\"100l1\"].read()\n", "df.head()" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
WaterLevel:100l1:0WaterLevel:100l1:47.6827
1994-08-07 16:35:00.000195.441498194.661499
1994-08-07 16:36:01.870195.441498194.661621
1994-08-07 16:37:07.560195.441498194.661728
1994-08-07 16:38:55.828195.441498194.661804
1994-08-07 16:39:55.828195.441498194.661972
\n", "
" ], "text/plain": [ " WaterLevel:100l1:0 WaterLevel:100l1:47.6827\n", "1994-08-07 16:35:00.000 195.441498 194.661499\n", "1994-08-07 16:36:01.870 195.441498 194.661621\n", "1994-08-07 16:37:07.560 195.441498 194.661728\n", "1994-08-07 16:38:55.828 195.441498 194.661804\n", "1994-08-07 16:39:55.828 195.441498 194.661972" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = res.reaches[\"100l1\"].WaterLevel.read()\n", "df.head()" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
WaterLevel:100l1:0
1994-08-07 16:35:00.000195.441498
1994-08-07 16:36:01.870195.441498
1994-08-07 16:37:07.560195.441498
1994-08-07 16:38:55.828195.441498
1994-08-07 16:39:55.828195.441498
\n", "
" ], "text/plain": [ " WaterLevel:100l1:0\n", "1994-08-07 16:35:00.000 195.441498\n", "1994-08-07 16:36:01.870 195.441498\n", "1994-08-07 16:37:07.560 195.441498\n", "1994-08-07 16:38:55.828 195.441498\n", "1994-08-07 16:39:55.828 195.441498" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Index by gridpoint number\n", "df = res.reaches[\"100l1\"][0].read()\n", "df.head()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Discharge:100l1:23.8414
1994-08-07 16:35:00.0000.000006
1994-08-07 16:36:01.8700.000006
1994-08-07 16:37:07.5600.000006
1994-08-07 16:38:55.8280.000006
1994-08-07 16:39:55.8280.000006
\n", "
" ], "text/plain": [ " Discharge:100l1:23.8414\n", "1994-08-07 16:35:00.000 0.000006\n", "1994-08-07 16:36:01.870 0.000006\n", "1994-08-07 16:37:07.560 0.000006\n", "1994-08-07 16:38:55.828 0.000006\n", "1994-08-07 16:39:55.828 0.000006" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Or index by gridpoint chainage\n", "df = res.reaches[\"100l1\"][\"23.841\"].read()\n", "df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Make plots by replacing read() with plot()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ax = res.nodes[\"101\"].WaterLevel.plot()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Dynamically select quantities with add() followed by read()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
WaterLevel:101WaterLevel:102
1994-08-07 16:35:00.000195.931503193.550003
1994-08-07 16:36:01.870195.931595193.550140
1994-08-07 16:37:07.560195.931625193.550232
1994-08-07 16:38:55.828195.931656193.550369
1994-08-07 16:39:55.828195.931656193.550430
\n", "
" ], "text/plain": [ " WaterLevel:101 WaterLevel:102\n", "1994-08-07 16:35:00.000 195.931503 193.550003\n", "1994-08-07 16:36:01.870 195.931595 193.550140\n", "1994-08-07 16:37:07.560 195.931625 193.550232\n", "1994-08-07 16:38:55.828 195.931656 193.550369\n", "1994-08-07 16:39:55.828 195.931656 193.550430" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "res.nodes[\"101\"].WaterLevel.add()\n", "res.nodes[\"102\"].WaterLevel.add()\n", "df = res.read()\n", "df.head()" ] } ], "metadata": { "kernelspec": { "display_name": ".venv", "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.12.7" } }, "nbformat": 4, "nbformat_minor": 4 }