diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 5907925c0..ceb2b9515 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -8,7 +8,6 @@ on: release: types: [published] - jobs: build: runs-on: ubuntu-latest @@ -30,7 +29,6 @@ jobs: pip install wheel openmatrix pytest pip install -r requirements.txt pip install -r docs/requirements-docs.txt - - name: Compile library run: | @@ -57,78 +55,105 @@ jobs: - name: Build documentation run: | jupyter nbconvert --to rst docs/source/useful_information/validation_benchmarking/IPF_benchmark.ipynb - sphinx-build -b html docs/source docs/build - python3 -m zipfile -c AequilibraE.zip docs/build + sphinx-build -M latexpdf docs/source docs/source/_static -D plot_gallery=False + sphinx-build -D plot_gallery=False -b html docs/source docs/build + python -m zipfile -c AequilibraE.zip docs/build cp AequilibraE.zip docs/source/_static + cp large_icon.png docs/source/_static/large_icon.png cd docs make html - - name: Upload to develop branch to S3 - if: ${{ (github.ref == 'refs/heads/develop') && (github.event_name == 'push') && (env.HAS_SECRETS == 'true') }} + - name: Upload python to DEV on S3 + if: ${{ (github.event_name == 'pull_request') && (env.HAS_SECRETS == 'true') }} uses: jakejarvis/s3-sync-action@master with: - args: --acl public-read --follow-symlinks --delete + args: --acl public-read --follow-symlinks --delete --exclude 'home.html' env: AWS_S3_BUCKET: ${{ secrets.AWS_S3_BUCKET }} AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} AWS_REGION: 'us-east-1' # optional: defaults to us-east-1 SOURCE_DIR: 'docs/build/html/' # optional: defaults to entire repository - DEST_DIR: 'python/develop/' # optional: defaults to entire repository + DEST_DIR: 'dev/${{ github.event.number }}/python/' # optional: defaults to entire repository - - name: Upload to RELEASE on S3 - if: ${{ (github.event_name == 'release') && (env.HAS_SECRETS == 'true') }} + - name: Upload home page to DEV on S3 + if: ${{ (github.event_name == 'pull_request') && (env.HAS_SECRETS == 'true') }} uses: jakejarvis/s3-sync-action@master with: - args: --acl public-read --follow-symlinks --delete + args: --acl public-read --follow-symlinks --exclude '*' --include 'home.html' --include '_images/sponsor*' --include '_images/banner*' --include '_static/*' --include 'search*' --include 'genindex.html' --include '_sphinx_design_static/*' + env: + AWS_S3_BUCKET: ${{ secrets.AWS_S3_BUCKET }} + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_REGION: 'us-east-1' # optional: defaults to us-east-1 + SOURCE_DIR: 'docs/build/html/' + DEST_DIR: 'dev/${{ github.event.number }}/' # optional: defaults to entire repository + + - name: Upload python to DEVELOP on S3 + if: ${{ (github.ref == 'refs/heads/develop') && (github.event_name == 'push') && (env.HAS_SECRETS == 'true') }} + uses: jakejarvis/s3-sync-action@master + with: + args: --acl public-read --follow-symlinks --delete --exclude 'home.html' env: AWS_S3_BUCKET: ${{ secrets.AWS_S3_BUCKET }} AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} AWS_REGION: 'us-east-1' # optional: defaults to us-east-1 SOURCE_DIR: 'docs/build/html/' # optional: defaults to entire repository - DEST_DIR: 'python/latest/' # optional: defaults to entire repository + DEST_DIR: 'develop/python/' # optional: defaults to entire repository - - name: Create Documentation history folder - if: ${{ github.event_name == 'release'}} - run: python docs/website/redir.py + - name: Upload home page to DEVELOP on S3 + if: ${{ (github.ref == 'refs/heads/develop') && (github.event_name == 'push') && (env.HAS_SECRETS == 'true') }} + uses: jakejarvis/s3-sync-action@master + with: + args: --acl public-read --follow-symlinks --exclude '*' --include 'home.html' --include '_images/sponsor*' --include '_images/banner*' --include '_static/*' --include 'search*' --include 'genindex.html' --include '_sphinx_design_static/*' + env: + AWS_S3_BUCKET: ${{ secrets.AWS_S3_BUCKET }} + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_REGION: 'us-east-1' # optional: defaults to us-east-1 + SOURCE_DIR: 'docs/build/html/' + DEST_DIR: 'develop/' # optional: defaults to entire repository - - name: Upload documentation to history folder + - name: Upload python to LATEST on S3 if: ${{ (github.event_name == 'release') && (env.HAS_SECRETS == 'true') }} uses: jakejarvis/s3-sync-action@master with: - args: --acl public-read --follow-symlinks --exclude '*.py' + args: --acl public-read --follow-symlinks --delete --exclude 'home.html' env: AWS_S3_BUCKET: ${{ secrets.AWS_S3_BUCKET }} AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} AWS_REGION: 'us-east-1' # optional: defaults to us-east-1 - SOURCE_DIR: 'docs/website/' # optional: defaults to entire repository - DEST_DIR: 'python/' # optional: defaults to entire repository + SOURCE_DIR: 'docs/build/html/' # optional: defaults to entire repository + DEST_DIR: 'latest/python/' # optional: defaults to entire repository - - name: Upload documentation to LATEST on AWS + - name: Upload home page to LATEST on S3 if: ${{ (github.event_name == 'release') && (env.HAS_SECRETS == 'true') }} uses: jakejarvis/s3-sync-action@master with: - args: --acl public-read --follow-symlinks + args: --acl public-read --follow-symlinks --exclude '*' --include 'home.html' --include '_images/sponsor*' --include '_images/banner*' --include '_static/*' --include 'search*' --include 'genindex.html' --include '_sphinx_design_static/*' env: AWS_S3_BUCKET: ${{ secrets.AWS_S3_BUCKET }} AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} AWS_REGION: 'us-east-1' # optional: defaults to us-east-1 - SOURCE_DIR: 'docs/build/htmlv/' # optional: defaults to entire repository - DEST_DIR: 'python/' # optional: defaults to entire repository + SOURCE_DIR: 'docs/build/html/' + DEST_DIR: 'latest/' # optional: defaults to entire repository + - name: Create Documentation history folder + if: ${{ github.event_name == 'release'}} + run: python docs/website/redir.py - - name: Upload to DEV on S3 - if: ${{ (github.event_name == 'pull_request') && (env.HAS_SECRETS == 'true') }} + - name: Upload documentation to history folder + if: ${{ (github.event_name == 'release') && (env.HAS_SECRETS == 'true') }} uses: jakejarvis/s3-sync-action@master with: - args: --acl public-read --follow-symlinks --delete + args: --acl public-read --follow-symlinks --exclude '*.py' env: AWS_S3_BUCKET: ${{ secrets.AWS_S3_BUCKET }} AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} AWS_REGION: 'us-east-1' # optional: defaults to us-east-1 - SOURCE_DIR: 'docs/build/html/' # optional: defaults to entire repository - DEST_DIR: 'python/dev/${{ github.event.number }}/' # optional: defaults to entire repository \ No newline at end of file + SOURCE_DIR: 'docs/website/' # optional: defaults to entire repository + DEST_DIR: 'docs/python/' # optional: defaults to entire repository diff --git a/.gitignore b/.gitignore index 868fdbd44..c75e8cc60 100644 --- a/.gitignore +++ b/.gitignore @@ -4,7 +4,7 @@ _static _templates docs/source/sg_execution_times.rst docs/source/_auto_examples -docs/source/api/generated +docs/source/_generated docs/source/modeling_with_aequilibrae/project_database/data_model docs/source/modeling_with_aequilibrae/transit_database/data_model @@ -66,12 +66,11 @@ aequilibrae/**/*.pyd aequilibrae/**/*.c aequilibrae/**/*.html aequilibrae/**/build/* -docs/build/* -docs/source/_generated/* -docs/source/project_database/* -docs/source/_auto_examples/* *.cpp +# Build documentation +docs/build/* +docs/source/project_database/* #Virtual environment .venv/ diff --git a/docs/requirements-docs.txt b/docs/requirements-docs.txt index b819fe967..f415754b4 100644 --- a/docs/requirements-docs.txt +++ b/docs/requirements-docs.txt @@ -1,6 +1,6 @@ enum34 Sphinx -pydata-sphinx-theme==0.13.3 +pydata-sphinx-theme sphinx_autodoc_annotation matplotlib folium diff --git a/docs/source/_latex/examples.rst b/docs/source/_latex/examples.rst new file mode 100644 index 000000000..dc4688bbe --- /dev/null +++ b/docs/source/_latex/examples.rst @@ -0,0 +1,16 @@ +:orphan: + +Examples +======== + +.. toctree:: + :hidden: + :maxdepth: 1 + + ../_auto_examples/creating_models/index + ../_auto_examples/editing_networks/index + ../_auto_examples/skimming/index + ../_auto_examples/assignment_workflows/index + ../_auto_examples/aequilibrae_without_a_model/index + ../_auto_examples/visualization/index + ../_auto_examples/other_applications/index diff --git a/docs/source/_latex/index.rst b/docs/source/_latex/index.rst new file mode 100644 index 000000000..9d718f918 --- /dev/null +++ b/docs/source/_latex/index.rst @@ -0,0 +1,12 @@ +:orphan: + +AequilibraE +=========== + +.. toctree:: + :hidden: + :maxdepth: 1 + + examples + ../modeling_with_aequilibrae/index + ../api \ No newline at end of file diff --git a/docs/source/_static/custom.css b/docs/source/_static/custom.css index 3f5878ddf..39048ce97 100644 --- a/docs/source/_static/custom.css +++ b/docs/source/_static/custom.css @@ -1,7 +1,11 @@ +.bd-page-width { + max-width: 80%; +} + .bd-main .bd-content .bd-article-container { - max-width: 90%; + max-width: 80%; } -.bd-page-width { - max-width: 90%; -} \ No newline at end of file +.bd-links__title[role="heading"][aria-level="1"] { + display: none; +} diff --git a/docs/source/_static/switcher.json b/docs/source/_static/switcher.json deleted file mode 100644 index 295ac11fe..000000000 --- a/docs/source/_static/switcher.json +++ /dev/null @@ -1,162 +0,0 @@ -[ - { - "name": "develop", - "version": "develop", - "url": "https://aequilibrae.com/python/develop/" - }, - { - "name": "1.1.3", - "version": "1.1.3", - "url": "https://aequilibrae.com/python/V.1.1.3/" - }, - { - "name": "1.1.2", - "version": "1.1.2", - "url": "https://aequilibrae.com/python/V.1.1.2/" - }, - { - "name": "1.1.1", - "version": "1.1.1", - "url": "https://aequilibrae.com/python/V.1.1.1/" - }, - { - "name": "1.1.0", - "version": "1.1.0", - "url": "https://aequilibrae.com/python/V.1.1.0/" - }, - { - "name": "1.0.1", - "version": "1.0.1", - "url": "https://aequilibrae.com/python/V.1.0.1/" - }, - { - "name": "1.0.0", - "version": "1.0.0", - "url": "https://aequilibrae.com/python/V.1.0.0/" - }, - { - "name": "0.9.5", - "version": "0.9.5", - "url": "https://aequilibrae.com/python/V.0.9.5/" - }, - { - "name": "0.9.4", - "version": "0.9.4", - "url": "https://aequilibrae.com/python/V.0.9.4/" - }, - { - "name": "0.9.3", - "version": "0.9.3", - "url": "https://aequilibrae.com/python/V.0.9.3/" - }, - { - "name": "0.9.2", - "version": "0.9.2", - "url": "https://aequilibrae.com/python/V.0.9.2/" - }, - { - "name": "0.9.1", - "version": "0.9.1", - "url": "https://aequilibrae.com/python/V.0.9.1/" - }, - { - "name": "0.9.0", - "version": "0.9.0", - "url": "https://aequilibrae.com/python/V.0.9.0/" - }, - { - "name": "0.8.3", - "version": "0.8.3", - "url": "https://aequilibrae.com/python/V.0.8.3/" - }, - { - "name": "0.8.2", - "version": "0.8.2", - "url": "https://aequilibrae.com/python/V.0.8.2/" - }, - { - "name": "0.8.1", - "version": "0.8.1", - "url": "https://aequilibrae.com/python/V.0.8.1/" - }, - { - "name": "0.8.0", - "version": "0.8.0", - "url": "https://aequilibrae.com/python/V.0.8.0/" - }, - { - "name": "0.7.7", - "version": "0.7.7", - "url": "https://aequilibrae.com/python/V.0.7.7/" - }, - { - "name": "0.7.6", - "version": "0.7.6", - "url": "https://aequilibrae.com/python/V.0.7.6/" - }, - { - "name": "0.7.5", - "version": "0.7.5", - "url": "https://aequilibrae.com/python/V.0.7.5/" - }, - { - "name": "0.7.4", - "version": "0.7.4", - "url": "https://aequilibrae.com/python/V.0.7.4/" - }, - { - "name": "0.7.3", - "version": "0.7.3", - "url": "https://aequilibrae.com/python/V.0.7.3/" - }, - { - "name": "0.7.2", - "version": "0.7.2", - "url": "https://aequilibrae.com/python/V.0.7.2/" - }, - { - "name": "0.7.1", - "version": "0.7.1", - "url": "https://aequilibrae.com/python/V.0.7.1/" - }, - { - "name": "0.7.0", - "version": "0.7.0", - "url": "https://aequilibrae.com/python/V.0.7.0/" - }, - { - "name": "0.6.5", - "version": "0.6.5", - "url": "https://aequilibrae.com/python/V.0.6.5/" - }, - { - "name": "0.6.4", - "version": "0.6.4", - "url": "https://aequilibrae.com/python/V.0.6.4/" - }, - { - "name": "0.6.3", - "version": "0.6.3", - "url": "https://aequilibrae.com/python/V.0.6.3/" - }, - { - "name": "0.6.2", - "version": "0.6.2", - "url": "https://aequilibrae.com/python/V.0.6.2/" - }, - { - "name": "0.6.1", - "version": "0.6.1", - "url": "https://aequilibrae.com/python/V.0.6.1/" - }, - { - "name": "0.6.0", - "version": "0.6.0", - "url": "https://aequilibrae.com/python/V.0.6.0/" - }, - { - "name": "0.5.3", - "version": "0.5.3", - "url": "https://aequilibrae.com/python/V.0.5.3/" - } -] diff --git a/docs/source/_templates/navigation_header.html b/docs/source/_templates/navigation_header.html new file mode 100644 index 000000000..3bbb6efb0 --- /dev/null +++ b/docs/source/_templates/navigation_header.html @@ -0,0 +1,61 @@ + + + + + \ No newline at end of file diff --git a/docs/source/api/api.rst b/docs/source/api.rst similarity index 84% rename from docs/source/api/api.rst rename to docs/source/api.rst index e894ecb81..ead609a05 100644 --- a/docs/source/api/api.rst +++ b/docs/source/api.rst @@ -7,7 +7,7 @@ Project ------- .. currentmodule:: aequilibrae.project .. autosummary:: - :toctree: generated/ + :toctree: _generated/ Project @@ -15,7 +15,7 @@ Project Components ~~~~~~~~~~~~~~~~~~ .. currentmodule:: aequilibrae.project .. autosummary:: - :toctree: generated/ + :toctree: _generated/ About FieldEditor @@ -28,7 +28,7 @@ Project Objects ~~~~~~~~~~~~~~~ .. currentmodule:: aequilibrae.project .. autosummary:: - :toctree: generated/ + :toctree: _generated/ Zone @@ -36,7 +36,7 @@ Network Data ------------ .. currentmodule:: aequilibrae.project.network .. autosummary:: - :toctree: generated/ + :toctree: _generated/ Modes LinkTypes @@ -48,7 +48,7 @@ Network Items ------------- .. currentmodule:: aequilibrae.project.network .. autosummary:: - :toctree: generated/ + :toctree: _generated/ Mode LinkType @@ -60,7 +60,7 @@ Distribution ------------ .. currentmodule:: aequilibrae.distribution .. autosummary:: - :toctree: generated/ + :toctree: _generated/ Ipf GravityCalibration @@ -71,7 +71,7 @@ Matrix ------ .. currentmodule:: aequilibrae.matrix .. autosummary:: - :toctree: generated/ + :toctree: _generated/ AequilibraeMatrix @@ -82,7 +82,7 @@ Skimming ~~~~~~~~ .. currentmodule:: aequilibrae.paths .. autosummary:: - :toctree: generated/ + :toctree: _generated/ NetworkSkimming @@ -90,7 +90,7 @@ Graph ~~~~~ .. currentmodule:: aequilibrae.paths .. autosummary:: - :toctree: generated/ + :toctree: _generated/ Graph TransitGraph @@ -99,7 +99,7 @@ Traffic assignment ~~~~~~~~~~~~~~~~~~ .. currentmodule:: aequilibrae.paths .. autosummary:: - :toctree: generated/ + :toctree: _generated/ TrafficClass TransitClass @@ -115,7 +115,7 @@ Route choice ~~~~~~~~~~~~ .. currentmodule:: aequilibrae.paths .. autosummary:: - :toctree: generated/ + :toctree: _generated/ HyperpathGenerating OptimalStrategies @@ -126,7 +126,7 @@ Transit ------- .. currentmodule:: aequilibrae.transit .. autosummary:: - :toctree: generated/ + :toctree: _generated/ Transit TransitGraphBuilder @@ -136,7 +136,7 @@ Utils ----- .. currentmodule:: aequilibrae.utils .. autosummary:: - :toctree: generated/ + :toctree: _generated/ create_delaunay_network.DelaunayAnalysis create_example @@ -145,6 +145,6 @@ Parameters ---------- .. currentmodule:: aequilibrae .. autosummary:: - :toctree: generated/ + :toctree: _generated/ Parameters diff --git a/docs/source/conf.py b/docs/source/conf.py index 5650d40ea..aafab849e 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -68,7 +68,6 @@ "sphinx_tabs.tabs", ] -# sphinx_tabs_valid_builders = ['linkcheck'] sphinx_tabs_disable_tab_closing = True # Change plot_gallery to True to start building examples again @@ -88,11 +87,11 @@ "examples/other_applications", ] ), - # "plot_gallery": "False", + "plot_gallery": True, } # Add any paths that contain templates here, relative to this directory. -templates_path = ["_static"] +templates_path = ["_templates"] # The suffix(es) of source filenames. source_suffix = ".rst" @@ -120,33 +119,35 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -# html_theme = "pydata_sphinx_theme" # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ["_static"] + html_css_files = ["custom.css"] html_theme_options = { "show_nav_level": 0, - "navbar_center": ["navbar-nav"], - "navbar_end": ["theme-switcher", "navbar-icon-links", "version-switcher"], + "navbar_center": ["navigation_header"], "navbar_start": ["navbar-logo"], + "navbar_end": ["theme-switcher", "navbar-icon-links"], + "navbar_persistent": ["search-button"], "navbar_align": "left", - "switcher": { - "json_url": "https://www.aequilibrae.com/python/latest/_static/switcher.json", - "version_match": version, - }, - # "check_switcher": False, "github_url": "https://github.com/AequilibraE/aequilibrae", "analytics": { "google_analytics_id": "G-0HRKZDXRZ7", }, + "logo": { + "text": "AequilibraE", + "image_light": "_static/large_icon.png", + "image_dark": "_static/large_icon.png", + "link": "https://www.aequilibrae.com/latest/home.html", + }, } -# The name for this set of Sphinx documents. If None, it defaults to +# The name for this set of Sphinx documents. If None, it defaults to html_title = f"AequilibraE {version}" # -- Options for HTMLHelp output --------------------------------------------- @@ -158,9 +159,8 @@ # latex_elements = {} # Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, -# author, documentclass [howto, manual, or own class]). -latex_documents = [(master_doc, "AequilibraE.tex", "AequilibraE Documentation", author, "manual")] +# (source start file, target name, title, author, documentclass [howto, manual, or own class]). +latex_documents = [("_latex/index", "aequilibrae.tex", html_title, author, "manual")] latex_appendices = [ "useful_information/installation", @@ -172,7 +172,7 @@ # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). -man_pages = [(master_doc, "aequilibrae", "AequilibraE Documentation", [author], 1)] +man_pages = [(master_doc, "aequilibrae", html_title, [author], 1)] # -- Options for Texinfo output ---------------------------------------------- diff --git a/docs/source/examples/aequilibrae_without_a_model/plot_assignment_without_model.py b/docs/source/examples/aequilibrae_without_a_model/plot_assignment_without_model.py index 2e106ca07..f33252d7c 100644 --- a/docs/source/examples/aequilibrae_without_a_model/plot_assignment_without_model.py +++ b/docs/source/examples/aequilibrae_without_a_model/plot_assignment_without_model.py @@ -35,7 +35,7 @@ from aequilibrae.paths import Graph from aequilibrae.paths import TrafficAssignment from aequilibrae.paths.traffic_class import TrafficClass -# sphinx_gallery_thumbnail_path = 'images/assignment_plot.png' +# sphinx_gallery_thumbnail_path = '../source/images/assignment_plot.png' # %% # We load the example file from the GMNS GitHub repository diff --git a/docs/source/examples/aequilibrae_without_a_model/plot_ipf_without_model.py b/docs/source/examples/aequilibrae_without_a_model/plot_ipf_without_model.py index d47b88803..19a71075c 100644 --- a/docs/source/examples/aequilibrae_without_a_model/plot_ipf_without_model.py +++ b/docs/source/examples/aequilibrae_without_a_model/plot_ipf_without_model.py @@ -39,7 +39,7 @@ from aequilibrae.distribution import Ipf from aequilibrae.matrix import AequilibraeMatrix -# sphinx_gallery_thumbnail_path = 'images/ipf.png' +# sphinx_gallery_thumbnail_path = '../source/images/ipf.png' # %% folder = gettempdir() diff --git a/docs/source/examples/assignment_workflows/plot_public_transit_assignment.py b/docs/source/examples/assignment_workflows/plot_public_transit_assignment.py index 8a4d213d9..4478ca59c 100644 --- a/docs/source/examples/assignment_workflows/plot_public_transit_assignment.py +++ b/docs/source/examples/assignment_workflows/plot_public_transit_assignment.py @@ -33,7 +33,7 @@ from aequilibrae.transit import Transit from aequilibrae.utils.create_example import create_example -# sphinx_gallery_thumbnail_path = 'images/transit/hyperpath_bell_n_10_alpha_100d0.png' +# sphinx_gallery_thumbnail_path = '../source/images/transit/hyperpath_bell_n_10_alpha_100d0.png' # %% diff --git a/docs/source/examples/assignment_workflows/plot_route_choice_basics.py b/docs/source/examples/assignment_workflows/plot_route_choice_basics.py index 8be03f0c4..dcb9206bc 100644 --- a/docs/source/examples/assignment_workflows/plot_route_choice_basics.py +++ b/docs/source/examples/assignment_workflows/plot_route_choice_basics.py @@ -28,7 +28,7 @@ from os.path import join from aequilibrae.utils.create_example import create_example -# sphinx_gallery_thumbnail_path = 'images/plot_route_choice_assignment.png' +# sphinx_gallery_thumbnail_path = '../source/images/plot_route_choice_assignment.png' # %% diff --git a/docs/source/examples/assignment_workflows/plot_route_choice_set.py b/docs/source/examples/assignment_workflows/plot_route_choice_set.py index 9c2c3e572..6da6647ff 100644 --- a/docs/source/examples/assignment_workflows/plot_route_choice_set.py +++ b/docs/source/examples/assignment_workflows/plot_route_choice_set.py @@ -27,7 +27,7 @@ import numpy as np from aequilibrae.utils.create_example import create_example -# sphinx_gallery_thumbnail_path = 'images/plot_route_choice_set.png' +# sphinx_gallery_thumbnail_path = '../source/images/plot_route_choice_set.png' # %% diff --git a/docs/source/examples/assignment_workflows/plot_subarea_analysis.py b/docs/source/examples/assignment_workflows/plot_subarea_analysis.py index 79b16b6a1..e080a3776 100644 --- a/docs/source/examples/assignment_workflows/plot_subarea_analysis.py +++ b/docs/source/examples/assignment_workflows/plot_subarea_analysis.py @@ -33,7 +33,7 @@ from aequilibrae.utils.create_example import create_example -# sphinx_gallery_thumbnail_path = 'images/plot_subarea_analysis.png' +# sphinx_gallery_thumbnail_path = '../source/images/plot_subarea_analysis.png' # %% diff --git a/docs/source/examples/assignment_workflows/select_link_analysis.omx b/docs/source/examples/assignment_workflows/select_link_analysis.omx new file mode 100644 index 000000000..ee5d83935 Binary files /dev/null and b/docs/source/examples/assignment_workflows/select_link_analysis.omx differ diff --git a/docs/source/examples/creating_models/plot_create_from_gmns.py b/docs/source/examples/creating_models/plot_create_from_gmns.py index 8ebc3134a..cc2d96231 100644 --- a/docs/source/examples/creating_models/plot_create_from_gmns.py +++ b/docs/source/examples/creating_models/plot_create_from_gmns.py @@ -45,7 +45,7 @@ from aequilibrae.project import Project from aequilibrae.parameters import Parameters import folium -# sphinx_gallery_thumbnail_path = 'images/plot_import_from_gmns.png' +# sphinx_gallery_thumbnail_path = '../source/images/plot_import_from_gmns.png' # %% diff --git a/docs/source/examples/creating_models/plot_create_from_layer.py b/docs/source/examples/creating_models/plot_create_from_layer.py index 06fb05946..d4be47f94 100644 --- a/docs/source/examples/creating_models/plot_create_from_layer.py +++ b/docs/source/examples/creating_models/plot_create_from_layer.py @@ -38,7 +38,7 @@ import folium from aequilibrae import Project -# sphinx_gallery_thumbnail_path = 'images/plot_from_layer.png' +# sphinx_gallery_thumbnail_path = '../source/images/plot_from_layer.png' # %% diff --git a/docs/source/examples/creating_models/plot_create_from_osm.py b/docs/source/examples/creating_models/plot_create_from_osm.py index b41739fb5..9cb19ee8a 100644 --- a/docs/source/examples/creating_models/plot_create_from_osm.py +++ b/docs/source/examples/creating_models/plot_create_from_osm.py @@ -27,7 +27,7 @@ from os.path import join from aequilibrae import Project import folium -# sphinx_gallery_thumbnail_path = 'images/nauru.png' +# sphinx_gallery_thumbnail_path = '../source/images/nauru.png' # %% diff --git a/docs/source/examples/creating_models/plot_create_zoning.py b/docs/source/examples/creating_models/plot_create_zoning.py index bf414086d..e6e3789ae 100644 --- a/docs/source/examples/creating_models/plot_create_zoning.py +++ b/docs/source/examples/creating_models/plot_create_zoning.py @@ -59,7 +59,7 @@ from aequilibrae.utils.aeq_signal import simple_progress, SIGNAL s = SIGNAL(object) -# sphinx_gallery_thumbnail_path = "images/plot_create_zoning.png" +# sphinx_gallery_thumbnail_path = "../source/images/plot_create_zoning.png" # %% # Let's print the list of examples that ship with AequilibraE diff --git a/docs/source/examples/creating_models/plot_import_gtfs.py b/docs/source/examples/creating_models/plot_import_gtfs.py index afb4ee776..19d979a8e 100644 --- a/docs/source/examples/creating_models/plot_import_gtfs.py +++ b/docs/source/examples/creating_models/plot_import_gtfs.py @@ -30,7 +30,7 @@ from aequilibrae.transit import Transit from aequilibrae.utils.create_example import create_example -# sphinx_gallery_thumbnail_path = 'images/plot_import_gtfs.png' +# sphinx_gallery_thumbnail_path = '../source/images/plot_import_gtfs.png' # %% diff --git a/docs/source/examples/other_applications/plot_check_logging.py b/docs/source/examples/other_applications/plot_check_logging.py index 5cecb25ca..edf2e5e51 100644 --- a/docs/source/examples/other_applications/plot_check_logging.py +++ b/docs/source/examples/other_applications/plot_check_logging.py @@ -22,7 +22,7 @@ from os.path import join from aequilibrae.utils.create_example import create_example from aequilibrae.paths import TrafficAssignment, TrafficClass -# sphinx_gallery_thumbnail_path = 'images/logs_image.png' +# sphinx_gallery_thumbnail_path = '../source/images/logs_image.png' # %% diff --git a/docs/source/examples/other_applications/plot_export_to_gmns.py b/docs/source/examples/other_applications/plot_export_to_gmns.py index cf2c3c278..5d58be55c 100644 --- a/docs/source/examples/other_applications/plot_export_to_gmns.py +++ b/docs/source/examples/other_applications/plot_export_to_gmns.py @@ -29,7 +29,7 @@ from aequilibrae.utils.create_example import create_example import pandas as pd import folium -# sphinx_gallery_thumbnail_path = 'images/plot_export_to_gmns.png' +# sphinx_gallery_thumbnail_path = '../source/images/plot_export_to_gmns.png' # %% diff --git a/docs/source/examples/other_applications/plot_find_disconnected.py b/docs/source/examples/other_applications/plot_find_disconnected.py index 4221fb0c6..f5980175b 100644 --- a/docs/source/examples/other_applications/plot_find_disconnected.py +++ b/docs/source/examples/other_applications/plot_find_disconnected.py @@ -42,7 +42,7 @@ import numpy as np from aequilibrae.utils.create_example import create_example from aequilibrae.paths.results import PathResults -# sphinx_gallery_thumbnail_path = 'images/disconnected_network.png' +# sphinx_gallery_thumbnail_path = '../source/images/disconnected_network.png' # %% diff --git a/docs/source/examples/other_applications/plot_logging_to_terminal.py b/docs/source/examples/other_applications/plot_logging_to_terminal.py index 451f67d94..7103745e7 100644 --- a/docs/source/examples/other_applications/plot_logging_to_terminal.py +++ b/docs/source/examples/other_applications/plot_logging_to_terminal.py @@ -16,7 +16,7 @@ from aequilibrae.utils.create_example import create_example import logging import sys -# sphinx_gallery_thumbnail_path = 'images/plot_logging_to_terminal_image.png' +# sphinx_gallery_thumbnail_path = '../source/images/plot_logging_to_terminal_image.png' # %% diff --git a/docs/source/examples/skimming/plot_skimming.py b/docs/source/examples/skimming/plot_skimming.py index 78388541f..4b7414f22 100644 --- a/docs/source/examples/skimming/plot_skimming.py +++ b/docs/source/examples/skimming/plot_skimming.py @@ -36,7 +36,7 @@ from tempfile import gettempdir from os.path import join from aequilibrae.utils.create_example import create_example -# sphinx_gallery_thumbnail_path = 'images/skims.png' +# sphinx_gallery_thumbnail_path = '../source/images/skims.png' # %% diff --git a/docs/source/examples/visualization/plot_display.py b/docs/source/examples/visualization/plot_display.py index 24198659e..34b4e0f56 100644 --- a/docs/source/examples/visualization/plot_display.py +++ b/docs/source/examples/visualization/plot_display.py @@ -17,7 +17,7 @@ from os.path import join from aequilibrae.utils.create_example import create_example import folium -# sphinx_gallery_thumbnail_path = 'images/plot_network_image.png' +# sphinx_gallery_thumbnail_path = '../source/images/plot_network_image.png' # %% diff --git a/docs/source/home.rst b/docs/source/home.rst new file mode 100644 index 000000000..24f94f09d --- /dev/null +++ b/docs/source/home.rst @@ -0,0 +1,63 @@ +:html_theme.sidebar_secondary.remove: + +.. raw:: html + + + +AequilibraE +=========== + +.. image:: images/logos/banner-transparent.png + :align: center + +| + +.. rst-class:: big-font + + AequilibraE is the first comprehensive Python package for transportation modeling, and it aims to provide all the + resources not easily available from other open-source packages in the Python (NumPy, really) ecosystem. + +Sponsors +-------- + +Sponsoring AequilibraE's maintenance and new features is the best way to guarantee that the bugs you need +fixed and the features your projects require are incorporated quickly into the software. + +Please contact aequilibrae@outerloop.io for sponsoring opportunities. + +.. raw:: html + +