.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "_auto_examples/aequilibrae_project/plot_connections.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. .. rst-class:: sphx-glr-example-title .. _sphx_glr__auto_examples_aequilibrae_project_plot_connections.py: .. _example_aequilibrae_connections: Project Connections =================== In this example, we show how to use AequilibraE's database connections within a project. .. GENERATED FROM PYTHON SOURCE LINES 11-14 .. admonition:: References * :doc:`../../aequilibrae_project` .. GENERATED FROM PYTHON SOURCE LINES 16-23 .. seealso:: Several functions, methods, classes and modules are used in this example: * :func:`aequilibrae.project.project.Project.db_connection` * :func:`aequilibrae.project.project.Project.db_connection_spatial` * :func:`aequilibrae.project.project.Project.results_connection` * :func:`aequilibrae.project.project.Project.transit_connection` .. GENERATED FROM PYTHON SOURCE LINES 25-36 .. code-block:: Python # Imports from uuid import uuid4 from tempfile import gettempdir from pathlib import Path import geopandas as gpd import pandas as pd from aequilibrae.utils.create_example import create_example .. GENERATED FROM PYTHON SOURCE LINES 37-42 .. code-block:: Python # We create the example project inside our temp folder. fldr = Path(gettempdir()) / uuid4().hex project = create_example(fldr, "sioux_falls") .. GENERATED FROM PYTHON SOURCE LINES 43-49 All AequilibraE projects presents four types of connections in the form of properties: * General connection to the project database * Spatial connection to the project database * General connection to the results database * Spatial connection to the transit database .. GENERATED FROM PYTHON SOURCE LINES 51-52 Each connection can be easily accessed as follows: .. GENERATED FROM PYTHON SOURCE LINES 52-55 .. code-block:: Python with project.db_connection as conn: matrices = pd.read_sql("SELECT * FROM matrices", conn) .. GENERATED FROM PYTHON SOURCE LINES 56-58 .. code-block:: Python matrices .. GENERATED FROM PYTHON SOURCE LINES 59-60 We encourage using spatial connections only when handling spatial data. .. GENERATED FROM PYTHON SOURCE LINES 60-63 .. code-block:: Python with project.db_connection_spatial as conn: nodes = gpd.read_postgis("SELECT zone_id, ST_AsBinary(geometry) geom FROM zones;", con=conn, geom_col="geom", crs=4326) .. GENERATED FROM PYTHON SOURCE LINES 64-66 .. code-block:: Python nodes.head() .. GENERATED FROM PYTHON SOURCE LINES 67-70 For accessing both results and transit databases, the procedure is the same. When you're done, don't forget to close the project. .. GENERATED FROM PYTHON SOURCE LINES 70-71 .. code-block:: Python project.close() .. _sphx_glr_download__auto_examples_aequilibrae_project_plot_connections.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_connections.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_connections.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_connections.zip ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_