Skip to content

Note

Click here to download the full example code

Visualize and compare model results

Visualize model results and compare to other model results or reference data.

from __future__ import annotations

import logging

import plotly.graph_objects as go
from gemseo.datasets.dataset import Dataset
from gemseo.post.dataset.bars import BarPlot
from gemseo.post.dataset.scatter_plot_matrix import ScatterMatrix
from numpy import atleast_1d
from pandas import DataFrame
from pandas import concat

from vimseo import EXAMPLE_RUNS_DIR
from vimseo.api import activate_logger
from vimseo.api import create_model
from vimseo.core.model_result import ModelResult
from vimseo.core.model_settings import IntegratedModelSettings
from vimseo.utilities.curves import Curve
from vimseo.utilities.fields import extract_line
from vimseo.utilities.plotting_utils import plot_curves

activate_logger(level=logging.INFO)

After execution, the results of a model can be visualized. The curves are shown by default:

model_name = "BendingTestAnalytical"
load_case = "Cantilever"
model = create_model(
    model_name,
    load_case,
    model_options=IntegratedModelSettings(
        directory_archive_root=EXAMPLE_RUNS_DIR / "archive/visualize_model_result",
        directory_scratch_root=EXAMPLE_RUNS_DIR / "scratch/visualize_model_result",
        cache_file_path=EXAMPLE_RUNS_DIR
        / f"caches/visualize_model_result/{model_name}_{load_case}_cache.hdf",
    ),
)
model.cache = None
model.execute()
result = ModelResult.from_data({
    "inputs": model.get_input_data(),
    "outputs": model.get_output_data(),
})
figs = model.plot_results(show=True, save=False)
figs["dplt_vs_dplt_grid"]

Out:

    INFO - 09:11:55: Current root directory of job directory is C:\Users\sebastien.bocquet\Dev\vimseo\docs\runnable_examples\model_runs\archive\visualize_model_result.
    INFO - 09:11:55: Found 1 entries in the cache file : BendingTestAnalytical_Cantilever_cache.hdf node : node
{'text/html': '<div>            <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_SVG"></script><script type="text/javascript">if (window.MathJax && window.MathJax.Hub && window.MathJax.Hub.Config) {window.MathJax.Hub.Config({SVG: {font: "STIX-Web"}});}</script>                <script type="text/javascript">window.PlotlyConfig = {MathJaxConfig: \'local\'};</script>\n        <script charset="utf-8" src="https://cdn.plot.ly/plotly-2.35.0.min.js"></script>                <div id="70a52b4c-43e0-4d13-80f8-93a93097bbdd" class="plotly-graph-div" style="height:525px; width:100%;"></div>            <script type="text/javascript">                                    window.PLOTLYENV=window.PLOTLYENV || {};                                    if (document.getElementById("70a52b4c-43e0-4d13-80f8-93a93097bbdd")) {                    Plotly.newPlot(                        "70a52b4c-43e0-4d13-80f8-93a93097bbdd",                        [{"line":{"color":"blue","dash":"solid","width":2},"mode":"lines","name":"dplt","showlegend":true,"x":[0.0,6.0606060606060606,12.121212121212121,18.18181818181818,24.242424242424242,30.303030303030305,36.36363636363636,42.42424242424242,48.484848484848484,54.54545454545455,60.60606060606061,66.66666666666667,72.72727272727272,78.78787878787878,84.84848484848484,90.9090909090909,96.96969696969697,103.03030303030303,109.0909090909091,115.15151515151516,121.21212121212122,127.27272727272727,133.33333333333334,139.3939393939394,145.45454545454544,151.5151515151515,157.57575757575756,163.63636363636363,169.6969696969697,175.75757575757575,181.8181818181818,187.87878787878788,193.93939393939394,200.0,206.06060606060606,212.12121212121212,218.1818181818182,224.24242424242425,230.3030303030303,236.36363636363637,242.42424242424244,248.48484848484847,254.54545454545453,260.6060606060606,266.6666666666667,272.72727272727275,278.7878787878788,284.8484848484849,290.9090909090909,296.96969696969694,303.030303030303,309.09090909090907,315.1515151515151,321.2121212121212,327.27272727272725,333.3333333333333,339.3939393939394,345.45454545454544,351.5151515151515,357.57575757575756,363.6363636363636,369.6969696969697,375.75757575757575,381.8181818181818,387.8787878787879,393.93939393939394,400.0,406.06060606060606,412.1212121212121,418.1818181818182,424.24242424242425,430.3030303030303,436.3636363636364,442.42424242424244,448.4848484848485,454.54545454545456,460.6060606060606,466.6666666666667,472.72727272727275,478.7878787878788,484.8484848484849,490.9090909090909,496.96969696969694,503.030303030303,509.09090909090907,515.1515151515151,521.2121212121212,527.2727272727273,533.3333333333334,539.3939393939394,545.4545454545455,551.5151515151515,557.5757575757576,563.6363636363636,569.6969696969697,575.7575757575758,581.8181818181818,587.8787878787879,593.9393939393939,600.0],"y":[0.0,-0.0007626515125749894,-0.0030402999487786735,-0.0068174861563291365,-0.01207875098294446,-0.018808635276342703,-0.026991679884241934,-0.03661242565436024,-0.04765541343441568,-0.06010518407212633,-0.07394627841521026,-0.08916323731138556,-0.10574060160837027,-0.12366291215388252,-0.14291470979564042,-0.16348053538136192,-0.1853449297587652,-0.2084924337755684,-0.2329075882794894,-0.25857493411824567,-0.2854790121395566,-0.31360436319113966,-0.342935528120713,-0.37345704777599453,-0.40515346300470223,-0.4380093146545545,-0.4720091435732693,-0.5071374906085646,-0.5433788966081585,-0.5807179024197692,-0.6191390488911146,-0.6586268768699131,-0.6991659272038822,-0.7407407407407405,-0.7833358583282057,-0.8269358208139963,-0.8715251690458299,-0.9170884438714251,-0.9636101861384994,-1.011074936694771,-1.0594672363879587,-1.1087716260657796,-1.158972646575952,-1.2100548387661947,-1.2620027434842251,-1.3148009015777613,-1.3684338538945213,-1.4228861412822233,-1.478142304588585,-1.5341868846613258,-1.5910044223481623,-1.6485794584968136,-1.706896533954997,-1.7659401895704312,-1.825694966190834,-1.8861454046639228,-1.9472760458374172,-2.009071430559034,-2.0715160996764914,-2.1345945940375084,-2.198291454489802,-2.26259122188109,-2.3274784370590926,-2.3929376408715246,-2.458953374166108,-2.5255101777905575,-2.592592592592593,-2.6601851594199317,-2.728272419120293,-2.7968389125413924,-2.865869180530951,-2.935347763936684,-3.0052592036063115,-3.0755880403875513,-3.146318815128122,-3.2174360686757386,-3.2889243418781238,-3.360768175582991,-3.432952110638063,-3.5054606878910537,-3.5782784481896845,-3.651389932381669,-3.72477968131473,-3.7984322358365845,-3.8723321367949484,-3.9464639250375426,-4.020812141412083,-4.095361326766288,-4.170096021947878,-4.245000767804566,-4.320060105184077,-4.395258574934122,-4.470580717902425,-4.546011074936699,-4.621534186884666,-4.697134594594043,-4.772796838912546,-4.848505460687897,-4.924245000767809,-5.000000000000006],"type":"scatter"}],                        {"template":{"data":{"candlestick":[{"decreasing":{"line":{"color":"#000033"}},"increasing":{"line":{"color":"#000032"}},"type":"candlestick"}],"contourcarpet":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contourcarpet"}],"contour":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contour"}],"heatmap":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"heatmap"}],"histogram2d":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"histogram2d"}],"icicle":[{"textfont":{"color":"white"},"type":"icicle"}],"sankey":[{"textfont":{"color":"#000036"},"type":"sankey"}],"scatter":[{"marker":{"line":{"width":0}},"type":"scatter"}],"table":[{"cells":{"fill":{"color":"#000038"},"font":{"color":"#000037"},"line":{"color":"#000039"}},"header":{"fill":{"color":"#000040"},"font":{"color":"#000036"},"line":{"color":"#000039"}},"type":"table"}],"waterfall":[{"connector":{"line":{"color":"#000036","width":2}},"decreasing":{"marker":{"color":"#000033"}},"increasing":{"marker":{"color":"#000032"}},"totals":{"marker":{"color":"#000034"}},"type":"waterfall"}]},"layout":{"coloraxis":{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorscale":{"diverging":[[0.0,"#000021"],[0.1,"#000022"],[0.2,"#000023"],[0.3,"#000024"],[0.4,"#000025"],[0.5,"#000026"],[0.6,"#000027"],[0.7,"#000028"],[0.8,"#000029"],[0.9,"#000030"],[1.0,"#000031"]],"sequential":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"sequentialminus":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorway":["#000001","#000002","#000003","#000004","#000005","#000006","#000007","#000008","#000009","#000010"]}},"title":{"text":""},"xaxis":{"title":{"text":"dplt_grid"},"showgrid":true},"yaxis":{"title":{"text":""},"showgrid":true}},                        {"responsive": true}                    )                };                            </script>        </div>'}
    INFO - 09:11:55: Plot BendingTestAnalytical_Cantilever_dplt_vs_dplt_grid.html is saved in .
{'text/html': '<div>            <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_SVG"></script><script type="text/javascript">if (window.MathJax && window.MathJax.Hub && window.MathJax.Hub.Config) {window.MathJax.Hub.Config({SVG: {font: "STIX-Web"}});}</script>                <script type="text/javascript">window.PlotlyConfig = {MathJaxConfig: \'local\'};</script>\n        <script charset="utf-8" src="https://cdn.plot.ly/plotly-2.35.0.min.js"></script>                <div id="207cfda0-2f7c-4ced-9552-705cf0fbfa1d" class="plotly-graph-div" style="height:525px; width:100%;"></div>            <script type="text/javascript">                                    window.PLOTLYENV=window.PLOTLYENV || {};                                    if (document.getElementById("207cfda0-2f7c-4ced-9552-705cf0fbfa1d")) {                    Plotly.newPlot(                        "207cfda0-2f7c-4ced-9552-705cf0fbfa1d",                        [{"line":{"color":"blue","dash":"solid","width":2},"mode":"lines","name":"moment","showlegend":true,"x":[0.0,600.0],"y":[1400000.0,0.0],"type":"scatter"}],                        {"template":{"data":{"candlestick":[{"decreasing":{"line":{"color":"#000033"}},"increasing":{"line":{"color":"#000032"}},"type":"candlestick"}],"contourcarpet":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contourcarpet"}],"contour":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contour"}],"heatmap":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"heatmap"}],"histogram2d":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"histogram2d"}],"icicle":[{"textfont":{"color":"white"},"type":"icicle"}],"sankey":[{"textfont":{"color":"#000036"},"type":"sankey"}],"scatter":[{"marker":{"line":{"width":0}},"type":"scatter"}],"table":[{"cells":{"fill":{"color":"#000038"},"font":{"color":"#000037"},"line":{"color":"#000039"}},"header":{"fill":{"color":"#000040"},"font":{"color":"#000036"},"line":{"color":"#000039"}},"type":"table"}],"waterfall":[{"connector":{"line":{"color":"#000036","width":2}},"decreasing":{"marker":{"color":"#000033"}},"increasing":{"marker":{"color":"#000032"}},"totals":{"marker":{"color":"#000034"}},"type":"waterfall"}]},"layout":{"coloraxis":{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorscale":{"diverging":[[0.0,"#000021"],[0.1,"#000022"],[0.2,"#000023"],[0.3,"#000024"],[0.4,"#000025"],[0.5,"#000026"],[0.6,"#000027"],[0.7,"#000028"],[0.8,"#000029"],[0.9,"#000030"],[1.0,"#000031"]],"sequential":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"sequentialminus":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorway":["#000001","#000002","#000003","#000004","#000005","#000006","#000007","#000008","#000009","#000010"]}},"title":{"text":""},"xaxis":{"title":{"text":"moment_grid"},"showgrid":true},"yaxis":{"title":{"text":""},"showgrid":true}},                        {"responsive": true}                    )                };                            </script>        </div>'}
    INFO - 09:11:55: Plot BendingTestAnalytical_Cantilever_moment_vs_moment_grid.html is saved in .
figs["moment_vs_moment_grid"]

Scalar outputs can be visualized in a scatter matrix:

figs = model.plot_results(
    show=True,
    save=True,
    data="SCALARS",
    scalar_names=["young_modulus", "reaction_forces"],
)
figs["scalars"]

Out:

    INFO - 09:11:55: Saving plots to C:\Users\sebastien.bocquet\Dev\vimseo\docs\runnable_examples\model_runs\archive\visualize_model_result\BendingTestAnalytical\Cantilever\42
C:\Users\sebastien.bocquet\Dev\vimseo\.tox\doc\Lib\site-packages\pandas\plotting\_matplotlib\misc.py:91: UserWarning:

Attempting to set identical low and high xlims makes transformation singular; automatically expanding.

C:\Users\sebastien.bocquet\Dev\vimseo\.tox\doc\Lib\site-packages\pandas\plotting\_matplotlib\misc.py:100: UserWarning:

Attempting to set identical low and high xlims makes transformation singular; automatically expanding.

C:\Users\sebastien.bocquet\Dev\vimseo\.tox\doc\Lib\site-packages\pandas\plotting\_matplotlib\misc.py:101: UserWarning:

Attempting to set identical low and high ylims makes transformation singular; automatically expanding.

C:\Users\sebastien.bocquet\Dev\vimseo\.tox\doc\Lib\site-packages\gemseo\utils\matplotlib_figure.py:59: UserWarning:

FigureCanvasAgg is non-interactive, and thus cannot be shown


[<Figure size 640x480 with 4 Axes>]

Results can be obtained by querying the archive. For a DirectoryArchive, the path to access to the current result is:

model.archive_manager.job_directory

Out:

WindowsPath('C:/Users/sebastien.bocquet/Dev/vimseo/docs/runnable_examples/model_runs/archive/visualize_model_result/BendingTestAnalytical/Cantilever/42')

A result can be retrieved from this path:

result = ModelResult.from_data(
    model.archive_manager.get_result(model.archive_manager.job_directory)
)
print(result)

Out:

    INFO - 09:11:56: Found 1 entries in the cache file : BendingTestAnalytical_Cantilever_cache.hdf node : node

Scalars:
{'young_modulus': 210000.0, 'nu_p': 0.3, 'length': 600.0, 'width': 30.0, 'height': 40.0, 'imposed_dplt': -5.0, 'relative_dplt_location': 1.0, 'reaction_forces': -2333.3333333333335, 'dplt_at_force_location': -5.000000000000006, 'maximum_dplt': -5.000000000000006, 'location_max_dplt': 600.0}

Vectors:
{}

Curves:
   ('dplt_grid', 'dplt')
               0         1          2          3          4          5          6          7          8          9          10         11         12         13         14         15         16          17          18          19          20          21          22          23          24          25          26          27          28          29          30          31          32          33          34          35          36          37         38          39          40          41          42          43          44          45          46          47          48          49          50          51          52          53          54          55          56          57          58          59          60          61          62          63          64          65          66          67          68          69          70          71          72          73          74          75          76          77          78          79          80          81          82          83          84          85          86          87          88          89          90          91          92          93          94          95          96          97          98     99
dplt_grid  0.0  6.060606  12.121212  18.181818  24.242424  30.303030  36.363636  42.424242  48.484848  54.545455  60.606061  66.666667  72.727273  78.787879  84.848485  90.909091  96.969697  103.030303  109.090909  115.151515  121.212121  127.272727  133.333333  139.393939  145.454545  151.515152  157.575758  163.636364  169.696970  175.757576  181.818182  187.878788  193.939394  200.000000  206.060606  212.121212  218.181818  224.242424  230.30303  236.363636  242.424242  248.484848  254.545455  260.606061  266.666667  272.727273  278.787879  284.848485  290.909091  296.969697  303.030303  309.090909  315.151515  321.212121  327.272727  333.333333  339.393939  345.454545  351.515152  357.575758  363.636364  369.696970  375.757576  381.818182  387.878788  393.939394  400.000000  406.060606  412.121212  418.181818  424.242424  430.303030  436.363636  442.424242  448.484848  454.545455  460.606061  466.666667  472.727273  478.787879  484.848485  490.909091  496.969697  503.030303  509.090909  515.151515  521.212121  527.272727  533.333333  539.393939  545.454545  551.515152  557.575758  563.636364  569.696970  575.757576  581.818182  587.878788  593.939394  600.0
dplt       0.0 -0.000763  -0.003040  -0.006817  -0.012079  -0.018809  -0.026992  -0.036612  -0.047655  -0.060105  -0.073946  -0.089163  -0.105741  -0.123663  -0.142915  -0.163481  -0.185345   -0.208492   -0.232908   -0.258575   -0.285479   -0.313604   -0.342936   -0.373457   -0.405153   -0.438009   -0.472009   -0.507137   -0.543379   -0.580718   -0.619139   -0.658627   -0.699166   -0.740741   -0.783336   -0.826936   -0.871525   -0.917088   -0.96361   -1.011075   -1.059467   -1.108772   -1.158973   -1.210055   -1.262003   -1.314801   -1.368434   -1.422886   -1.478142   -1.534187   -1.591004   -1.648579   -1.706897   -1.765940   -1.825695   -1.886145   -1.947276   -2.009071   -2.071516   -2.134595   -2.198291   -2.262591   -2.327478   -2.392938   -2.458953   -2.525510   -2.592593   -2.660185   -2.728272   -2.796839   -2.865869   -2.935348   -3.005259   -3.075588   -3.146319   -3.217436   -3.288924   -3.360768   -3.432952   -3.505461   -3.578278   -3.651390   -3.724780   -3.798432   -3.872332   -3.946464   -4.020812   -4.095361   -4.170096   -4.245001   -4.320060   -4.395259   -4.470581   -4.546011   -4.621534   -4.697135   -4.772797   -4.848505   -4.924245   -5.0

   ('moment_grid', 'moment')
                        0      1
moment_grid        0.0  600.0
moment       1400000.0    0.0

Fields:
{}

Two model results can be compared. We first generate a second result:

model.execute({"young_modulus": atleast_1d(1.95e5), "imposed_dplt": atleast_1d(-10.0)})
result_1 = ModelResult.from_data({
    "inputs": model.get_input_data(),
    "outputs": model.get_output_data(),
})
result_1

Out:

    INFO - 09:11:56: Current root directory of job directory is C:\Users\sebastien.bocquet\Dev\vimseo\docs\runnable_examples\model_runs\archive\visualize_model_result.
    INFO - 09:11:56: Found 1 entries in the cache file : BendingTestAnalytical_Cantilever_cache.hdf node : node

ModelResult(metadata=ToolResultMetadata(generic={'datetime': '04-09-2026_09-11-56', 'version': '0.1.7.dev12+gb7d116037'}, misc={}, settings={}, report={<MetaDataNames.model: 'model'>: 'BendingTestAnalytical', <MetaDataNames.load_case: 'load_case'>: 'Cantilever', <MetaDataNames.error_code: 'error_code'>: -1, <MetaDataNames.description: 'description'>: '', <MetaDataNames.job_name: 'job_name'>: '', <MetaDataNames.persistent_result_files: 'persistent_result_files'>: '', <MetaDataNames.n_cpus: 'n_cpus'>: 0, <MetaDataNames.date: 'date'>: '2026-09-04 09:11:56.121545', <MetaDataNames.cpu_time: 'cpu_time'>: 0.013694524765014648, <MetaDataNames.user: 'user'>: 'sebastien.bocquet', <MetaDataNames.machine: 'machine'>: 'PCBM20250036', <MetaDataNames.vims_git_version: 'vims_git_version'>: 'b7d1160379511fbe2c21194e6fa38c68e33d88e2', <MetaDataNames.directory_archive_root: 'directory_archive_root'>: 'C:\\Users\\sebastien.bocquet\\Dev\\vimseo\\docs\\runnable_examples\\model_runs\\archive\\visualize_model_result', <MetaDataNames.directory_archive_job: 'directory_archive_job'>: 'C:\\Users\\sebastien.bocquet\\Dev\\vimseo\\docs\\runnable_examples\\model_runs\\archive\\visualize_model_result\\BendingTestAnalytical\\Cantilever\\43', <MetaDataNames.directory_scratch_root: 'directory_scratch_root'>: 'C:\\Users\\sebastien.bocquet\\Dev\\vimseo\\docs\\runnable_examples\\model_runs\\scratch\\visualize_model_result', <MetaDataNames.directory_scratch_job: 'directory_scratch_job'>: ''}, model=ModelDescription(name='BendingTestAnalytical', summary=' An analytical model for the bending of a parallelepipedic beam', load_case=Beam_Cantilever(name='Cantilever', domain='Beam', summary='A cantilever load case.', plot_parameters=PlotParameters(curves=[]), bc_variable_names=['imposed_dplt', 'relative_dplt_location'], load=Load(direction='', sign='', type='')), dataflow={'model_inputs': ['length', 'width', 'height', 'imposed_dplt', 'relative_dplt_location', 'young_modulus', 'nu_p'], 'model_outputs': ['reaction_forces', 'moment', 'moment_grid', 'dplt', 'dplt_grid', 'maximum_dplt', 'location_max_dplt', 'dplt_at_force_location', 'model', 'load_case', 'error_code', 'description', 'job_name', 'persistent_result_files', 'n_cpus', 'date', 'cpu_time', 'user', 'machine', 'vims_git_version', 'directory_archive_root', 'directory_archive_job', 'directory_scratch_root', 'directory_scratch_job'], 'PreBendingTestAnalytical_Cantilever': {'inputs': ['length', 'width', 'height', 'imposed_dplt', 'relative_dplt_location', 'young_modulus', 'nu_p'], 'outputs': ['imposed_dplt_location', 'quadratic_moment', 'reaction_forces', 'moment', 'moment_grid', 'solver', 'boundary']}, 'RunBendingTestAnalytical': {'inputs': ['solver', 'boundary', 'moment', 'moment_grid', 'young_modulus', 'quadratic_moment', 'nu_p'], 'outputs': ['dplt', 'dplt_grid']}, 'PostBendingTestAnalytical_Cantilever': {'inputs': ['dplt', 'dplt_grid', 'moment', 'moment_grid', 'imposed_dplt_location', 'reaction_forces'], 'outputs': ['reaction_forces', 'maximum_dplt', 'dplt_grid', 'location_max_dplt', 'dplt', 'moment', 'moment_grid', 'dplt_at_force_location']}, 'subroutine_names': []}, default_inputs={<InputGroupNames.NUMERICAL_VARS: 'numerical variables'>: {}, <InputGroupNames.BC_VARS: 'boundary conditions variables'>: {'imposed_dplt': [-5.0], 'relative_dplt_location': [1.0]}, <InputGroupNames.GEOMETRICAL_VARS: 'geometrical variables'>: {'length': [600.0], 'width': [30.0], 'height': [40.0]}, <InputGroupNames.MATERIAL_VARS: 'material variables'>: {'young_modulus': [210000.0], 'nu_p': [0.3]}}, curves=[('dplt_grid', 'dplt'), ('moment_grid', 'moment')], verbose=False)), scalars={'length': 600.0, 'width': 30.0, 'height': 40.0, 'imposed_dplt': -10.0, 'relative_dplt_location': 1.0, 'young_modulus': 195000.0, 'nu_p': 0.3, 'reaction_forces': -4333.333333333333, 'dplt_at_force_location': -9.999999999999998, 'maximum_dplt': -9.999999999999998, 'location_max_dplt': 600.0}, vectors={}, curves=[<vimseo.utilities.curves.Curve object at 0x0000023C9DA8D3D0>, <vimseo.utilities.curves.Curve object at 0x0000023C9DA8C290>], fields={}, snapshots=[])

The scalars can be compared in a scatter matrix:

variable_names = ["young_modulus", "reaction_forces"]
df = DataFrame([
    result.get_numeric_scalars(variable_names=variable_names),
    result_1.get_numeric_scalars(variable_names=variable_names),
])
df["color"] = range(len(df))
plot = ScatterMatrix(Dataset.from_dataframe(df), coloring_variable="color")
plot.labels = ["result", "result 1"]
fig = plot.execute(
    save=False,
    show=True,
)
fig
    plot 02 visualize model resultplot 02 visualize model result

Out:

C:\Users\sebastien.bocquet\Dev\vimseo\.tox\doc\Lib\site-packages\gemseo\utils\matplotlib_figure.py:59: UserWarning:

FigureCanvasAgg is non-interactive, and thus cannot be shown


[<Figure size 640x480 with 4 Axes>]

.. note::

Since the compared data are in a ``Pandas.DataFrame``,
other plotting library can be used, like ``Seaborn``:
``sns.pairplot(df)``

The curves can also be compared:

plot_curves(
    [
        result.get_curve(("dplt_grid", "dplt")),
        result_1.get_curve(("dplt_grid", "dplt")),
    ],
    labels=["result", "result 1"],
)

Out:

{'text/html': '<div>            <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_SVG"></script><script type="text/javascript">if (window.MathJax && window.MathJax.Hub && window.MathJax.Hub.Config) {window.MathJax.Hub.Config({SVG: {font: "STIX-Web"}});}</script>                <script type="text/javascript">window.PlotlyConfig = {MathJaxConfig: \'local\'};</script>\n        <script charset="utf-8" src="https://cdn.plot.ly/plotly-2.35.0.min.js"></script>                <div id="9847787b-36da-4e57-980f-469cba784fad" class="plotly-graph-div" style="height:525px; width:100%;"></div>            <script type="text/javascript">                                    window.PLOTLYENV=window.PLOTLYENV || {};                                    if (document.getElementById("9847787b-36da-4e57-980f-469cba784fad")) {                    Plotly.newPlot(                        "9847787b-36da-4e57-980f-469cba784fad",                        [{"line":{"color":"blue","dash":"solid","width":2},"mode":"lines","name":"result","showlegend":true,"x":[0.0,6.0606060606060606,12.121212121212121,18.18181818181818,24.242424242424242,30.303030303030305,36.36363636363636,42.42424242424242,48.484848484848484,54.54545454545455,60.60606060606061,66.66666666666667,72.72727272727272,78.78787878787878,84.84848484848484,90.9090909090909,96.96969696969697,103.03030303030303,109.0909090909091,115.15151515151516,121.21212121212122,127.27272727272727,133.33333333333334,139.3939393939394,145.45454545454544,151.5151515151515,157.57575757575756,163.63636363636363,169.6969696969697,175.75757575757575,181.8181818181818,187.87878787878788,193.93939393939394,200.0,206.06060606060606,212.12121212121212,218.1818181818182,224.24242424242425,230.3030303030303,236.36363636363637,242.42424242424244,248.48484848484847,254.54545454545453,260.6060606060606,266.6666666666667,272.72727272727275,278.7878787878788,284.8484848484849,290.9090909090909,296.96969696969694,303.030303030303,309.09090909090907,315.1515151515151,321.2121212121212,327.27272727272725,333.3333333333333,339.3939393939394,345.45454545454544,351.5151515151515,357.57575757575756,363.6363636363636,369.6969696969697,375.75757575757575,381.8181818181818,387.8787878787879,393.93939393939394,400.0,406.06060606060606,412.1212121212121,418.1818181818182,424.24242424242425,430.3030303030303,436.3636363636364,442.42424242424244,448.4848484848485,454.54545454545456,460.6060606060606,466.6666666666667,472.72727272727275,478.7878787878788,484.8484848484849,490.9090909090909,496.96969696969694,503.030303030303,509.09090909090907,515.1515151515151,521.2121212121212,527.2727272727273,533.3333333333334,539.3939393939394,545.4545454545455,551.5151515151515,557.5757575757576,563.6363636363636,569.6969696969697,575.7575757575758,581.8181818181818,587.8787878787879,593.9393939393939,600.0],"y":[0.0,-0.0007626515125749894,-0.0030402999487786735,-0.0068174861563291365,-0.01207875098294446,-0.018808635276342703,-0.026991679884241934,-0.03661242565436024,-0.04765541343441568,-0.06010518407212633,-0.07394627841521026,-0.08916323731138556,-0.10574060160837027,-0.12366291215388252,-0.14291470979564042,-0.16348053538136192,-0.1853449297587652,-0.2084924337755684,-0.2329075882794894,-0.25857493411824567,-0.2854790121395566,-0.31360436319113966,-0.342935528120713,-0.37345704777599453,-0.40515346300470223,-0.4380093146545545,-0.4720091435732693,-0.5071374906085646,-0.5433788966081585,-0.5807179024197692,-0.6191390488911146,-0.6586268768699131,-0.6991659272038822,-0.7407407407407405,-0.7833358583282057,-0.8269358208139963,-0.8715251690458299,-0.9170884438714251,-0.9636101861384994,-1.011074936694771,-1.0594672363879587,-1.1087716260657796,-1.158972646575952,-1.2100548387661947,-1.2620027434842251,-1.3148009015777613,-1.3684338538945213,-1.4228861412822233,-1.478142304588585,-1.5341868846613258,-1.5910044223481623,-1.6485794584968136,-1.706896533954997,-1.7659401895704312,-1.825694966190834,-1.8861454046639228,-1.9472760458374172,-2.009071430559034,-2.0715160996764914,-2.1345945940375084,-2.198291454489802,-2.26259122188109,-2.3274784370590926,-2.3929376408715246,-2.458953374166108,-2.5255101777905575,-2.592592592592593,-2.6601851594199317,-2.728272419120293,-2.7968389125413924,-2.865869180530951,-2.935347763936684,-3.0052592036063115,-3.0755880403875513,-3.146318815128122,-3.2174360686757386,-3.2889243418781238,-3.360768175582991,-3.432952110638063,-3.5054606878910537,-3.5782784481896845,-3.651389932381669,-3.72477968131473,-3.7984322358365845,-3.8723321367949484,-3.9464639250375426,-4.020812141412083,-4.095361326766288,-4.170096021947878,-4.245000767804566,-4.320060105184077,-4.395258574934122,-4.470580717902425,-4.546011074936699,-4.621534186884666,-4.697134594594043,-4.772796838912546,-4.848505460687897,-4.924245000767809,-5.000000000000006],"type":"scatter"}],                        {"template":{"data":{"candlestick":[{"decreasing":{"line":{"color":"#000033"}},"increasing":{"line":{"color":"#000032"}},"type":"candlestick"}],"contourcarpet":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contourcarpet"}],"contour":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contour"}],"heatmap":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"heatmap"}],"histogram2d":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"histogram2d"}],"icicle":[{"textfont":{"color":"white"},"type":"icicle"}],"sankey":[{"textfont":{"color":"#000036"},"type":"sankey"}],"scatter":[{"marker":{"line":{"width":0}},"type":"scatter"}],"table":[{"cells":{"fill":{"color":"#000038"},"font":{"color":"#000037"},"line":{"color":"#000039"}},"header":{"fill":{"color":"#000040"},"font":{"color":"#000036"},"line":{"color":"#000039"}},"type":"table"}],"waterfall":[{"connector":{"line":{"color":"#000036","width":2}},"decreasing":{"marker":{"color":"#000033"}},"increasing":{"marker":{"color":"#000032"}},"totals":{"marker":{"color":"#000034"}},"type":"waterfall"}]},"layout":{"coloraxis":{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorscale":{"diverging":[[0.0,"#000021"],[0.1,"#000022"],[0.2,"#000023"],[0.3,"#000024"],[0.4,"#000025"],[0.5,"#000026"],[0.6,"#000027"],[0.7,"#000028"],[0.8,"#000029"],[0.9,"#000030"],[1.0,"#000031"]],"sequential":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"sequentialminus":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorway":["#000001","#000002","#000003","#000004","#000005","#000006","#000007","#000008","#000009","#000010"]}},"title":{"text":""},"xaxis":{"title":{"text":"dplt_grid"},"showgrid":true},"yaxis":{"title":{"text":""},"showgrid":true}},                        {"responsive": true}                    )                };                            </script>        </div>'}
{'text/html': '<div>            <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_SVG"></script><script type="text/javascript">if (window.MathJax && window.MathJax.Hub && window.MathJax.Hub.Config) {window.MathJax.Hub.Config({SVG: {font: "STIX-Web"}});}</script>                <script type="text/javascript">window.PlotlyConfig = {MathJaxConfig: \'local\'};</script>\n        <script charset="utf-8" src="https://cdn.plot.ly/plotly-2.35.0.min.js"></script>                <div id="2d29fe85-48f8-4172-adbb-8d70d802f92d" class="plotly-graph-div" style="height:525px; width:100%;"></div>            <script type="text/javascript">                                    window.PLOTLYENV=window.PLOTLYENV || {};                                    if (document.getElementById("2d29fe85-48f8-4172-adbb-8d70d802f92d")) {                    Plotly.newPlot(                        "2d29fe85-48f8-4172-adbb-8d70d802f92d",                        [{"line":{"color":"blue","dash":"solid","width":2},"mode":"lines","name":"result","showlegend":true,"x":[0.0,6.0606060606060606,12.121212121212121,18.18181818181818,24.242424242424242,30.303030303030305,36.36363636363636,42.42424242424242,48.484848484848484,54.54545454545455,60.60606060606061,66.66666666666667,72.72727272727272,78.78787878787878,84.84848484848484,90.9090909090909,96.96969696969697,103.03030303030303,109.0909090909091,115.15151515151516,121.21212121212122,127.27272727272727,133.33333333333334,139.3939393939394,145.45454545454544,151.5151515151515,157.57575757575756,163.63636363636363,169.6969696969697,175.75757575757575,181.8181818181818,187.87878787878788,193.93939393939394,200.0,206.06060606060606,212.12121212121212,218.1818181818182,224.24242424242425,230.3030303030303,236.36363636363637,242.42424242424244,248.48484848484847,254.54545454545453,260.6060606060606,266.6666666666667,272.72727272727275,278.7878787878788,284.8484848484849,290.9090909090909,296.96969696969694,303.030303030303,309.09090909090907,315.1515151515151,321.2121212121212,327.27272727272725,333.3333333333333,339.3939393939394,345.45454545454544,351.5151515151515,357.57575757575756,363.6363636363636,369.6969696969697,375.75757575757575,381.8181818181818,387.8787878787879,393.93939393939394,400.0,406.06060606060606,412.1212121212121,418.1818181818182,424.24242424242425,430.3030303030303,436.3636363636364,442.42424242424244,448.4848484848485,454.54545454545456,460.6060606060606,466.6666666666667,472.72727272727275,478.7878787878788,484.8484848484849,490.9090909090909,496.96969696969694,503.030303030303,509.09090909090907,515.1515151515151,521.2121212121212,527.2727272727273,533.3333333333334,539.3939393939394,545.4545454545455,551.5151515151515,557.5757575757576,563.6363636363636,569.6969696969697,575.7575757575758,581.8181818181818,587.8787878787879,593.9393939393939,600.0],"y":[0.0,-0.0007626515125749894,-0.0030402999487786735,-0.0068174861563291365,-0.01207875098294446,-0.018808635276342703,-0.026991679884241934,-0.03661242565436024,-0.04765541343441568,-0.06010518407212633,-0.07394627841521026,-0.08916323731138556,-0.10574060160837027,-0.12366291215388252,-0.14291470979564042,-0.16348053538136192,-0.1853449297587652,-0.2084924337755684,-0.2329075882794894,-0.25857493411824567,-0.2854790121395566,-0.31360436319113966,-0.342935528120713,-0.37345704777599453,-0.40515346300470223,-0.4380093146545545,-0.4720091435732693,-0.5071374906085646,-0.5433788966081585,-0.5807179024197692,-0.6191390488911146,-0.6586268768699131,-0.6991659272038822,-0.7407407407407405,-0.7833358583282057,-0.8269358208139963,-0.8715251690458299,-0.9170884438714251,-0.9636101861384994,-1.011074936694771,-1.0594672363879587,-1.1087716260657796,-1.158972646575952,-1.2100548387661947,-1.2620027434842251,-1.3148009015777613,-1.3684338538945213,-1.4228861412822233,-1.478142304588585,-1.5341868846613258,-1.5910044223481623,-1.6485794584968136,-1.706896533954997,-1.7659401895704312,-1.825694966190834,-1.8861454046639228,-1.9472760458374172,-2.009071430559034,-2.0715160996764914,-2.1345945940375084,-2.198291454489802,-2.26259122188109,-2.3274784370590926,-2.3929376408715246,-2.458953374166108,-2.5255101777905575,-2.592592592592593,-2.6601851594199317,-2.728272419120293,-2.7968389125413924,-2.865869180530951,-2.935347763936684,-3.0052592036063115,-3.0755880403875513,-3.146318815128122,-3.2174360686757386,-3.2889243418781238,-3.360768175582991,-3.432952110638063,-3.5054606878910537,-3.5782784481896845,-3.651389932381669,-3.72477968131473,-3.7984322358365845,-3.8723321367949484,-3.9464639250375426,-4.020812141412083,-4.095361326766288,-4.170096021947878,-4.245000767804566,-4.320060105184077,-4.395258574934122,-4.470580717902425,-4.546011074936699,-4.621534186884666,-4.697134594594043,-4.772796838912546,-4.848505460687897,-4.924245000767809,-5.000000000000006],"type":"scatter"},{"line":{"color":"red","dash":"solid","width":2},"mode":"lines","name":"result 1","showlegend":true,"x":[0.0,6.0606060606060606,12.121212121212121,18.18181818181818,24.242424242424242,30.303030303030305,36.36363636363636,42.42424242424242,48.484848484848484,54.54545454545455,60.60606060606061,66.66666666666667,72.72727272727272,78.78787878787878,84.84848484848484,90.9090909090909,96.96969696969697,103.03030303030303,109.0909090909091,115.15151515151516,121.21212121212122,127.27272727272727,133.33333333333334,139.3939393939394,145.45454545454544,151.5151515151515,157.57575757575756,163.63636363636363,169.6969696969697,175.75757575757575,181.8181818181818,187.87878787878788,193.93939393939394,200.0,206.06060606060606,212.12121212121212,218.1818181818182,224.24242424242425,230.3030303030303,236.36363636363637,242.42424242424244,248.48484848484847,254.54545454545453,260.6060606060606,266.6666666666667,272.72727272727275,278.7878787878788,284.8484848484849,290.9090909090909,296.96969696969694,303.030303030303,309.09090909090907,315.1515151515151,321.2121212121212,327.27272727272725,333.3333333333333,339.3939393939394,345.45454545454544,351.5151515151515,357.57575757575756,363.6363636363636,369.6969696969697,375.75757575757575,381.8181818181818,387.8787878787879,393.93939393939394,400.0,406.06060606060606,412.1212121212121,418.1818181818182,424.24242424242425,430.3030303030303,436.3636363636364,442.42424242424244,448.4848484848485,454.54545454545456,460.6060606060606,466.6666666666667,472.72727272727275,478.7878787878788,484.8484848484849,490.9090909090909,496.96969696969694,503.030303030303,509.09090909090907,515.1515151515151,521.2121212121212,527.2727272727273,533.3333333333334,539.3939393939394,545.4545454545455,551.5151515151515,557.5757575757576,563.6363636363636,569.6969696969697,575.7575757575758,581.8181818181818,587.8787878787879,593.9393939393939,600.0],"y":[0.0,-0.0015253030251499795,-0.0060805998975573495,-0.013634972312658276,-0.024157501965888915,-0.037617270552685406,-0.05398335976848384,-0.07322485130872043,-0.09531082686883129,-0.12021036814425252,-0.14789255683042032,-0.17832647462277088,-0.21148120321674024,-0.2473258243077647,-0.2858294195912803,-0.3269610707627232,-0.3706898595175296,-0.41698486755113573,-0.4658151765589776,-0.5171498682364913,-0.5709580242791134,-0.6272087263822794,-0.6858710562414262,-0.7469140955519893,-0.8103069260094048,-0.8760186293091095,-0.9440182871465392,-1.01427498121713,-1.086757793216318,-1.1614358048395395,-1.2382780977822305,-1.3172537537398274,-1.3983318544077656,-1.4814814814814827,-1.5666717166564132,-1.6538716416279944,-1.743050338091662,-1.8341768877428524,-1.927220372277001,-2.022149873389545,-2.1189344727759196,-2.2175432521315614,-2.3179452931519067,-2.420109677532392,-2.524005486968453,-2.6296018031555253,-2.7368677077890453,-2.8457722825644494,-2.9562846091771733,-3.0683737693226543,-3.1820088446963273,-3.29715891699363,-3.413793067909997,-3.5318803791408646,-3.65138993238167,-3.7722908093278487,-3.8945520916748366,-4.01814286111807,-4.1430321993529855,-4.269189188075018,-4.396582908979607,-4.525182443762182,-4.654956874118187,-4.785875281743051,-4.917906748332217,-5.051020355581115,-5.185185185185187,-5.320370318839863,-5.4565448382405854,-5.593677825082783,-5.7317383610619,-5.870695527873367,-6.010518407212622,-6.1511760807751,-6.292637630256241,-6.4348721373514755,-6.577848683756245,-6.7215363511659785,-6.865904221276122,-7.010921375782103,-7.156556896379362,-7.302779864763334,-7.449559362629454,-7.596864471673162,-7.74466427358989,-7.892927850075076,-8.041624282824158,-8.19072265353257,-8.340192043895746,-8.490001535609123,-8.640120210368144,-8.790517149868235,-8.941161435804839,-9.092022149873387,-9.243068373769324,-9.394269189188071,-9.54559367782508,-9.697010921375782,-9.848490001535607,-9.999999999999998],"type":"scatter"}],                        {"template":{"data":{"candlestick":[{"decreasing":{"line":{"color":"#000033"}},"increasing":{"line":{"color":"#000032"}},"type":"candlestick"}],"contourcarpet":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contourcarpet"}],"contour":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contour"}],"heatmap":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"heatmap"}],"histogram2d":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"histogram2d"}],"icicle":[{"textfont":{"color":"white"},"type":"icicle"}],"sankey":[{"textfont":{"color":"#000036"},"type":"sankey"}],"scatter":[{"marker":{"line":{"width":0}},"type":"scatter"}],"table":[{"cells":{"fill":{"color":"#000038"},"font":{"color":"#000037"},"line":{"color":"#000039"}},"header":{"fill":{"color":"#000040"},"font":{"color":"#000036"},"line":{"color":"#000039"}},"type":"table"}],"waterfall":[{"connector":{"line":{"color":"#000036","width":2}},"decreasing":{"marker":{"color":"#000033"}},"increasing":{"marker":{"color":"#000032"}},"totals":{"marker":{"color":"#000034"}},"type":"waterfall"}]},"layout":{"coloraxis":{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorscale":{"diverging":[[0.0,"#000021"],[0.1,"#000022"],[0.2,"#000023"],[0.3,"#000024"],[0.4,"#000025"],[0.5,"#000026"],[0.6,"#000027"],[0.7,"#000028"],[0.8,"#000029"],[0.9,"#000030"],[1.0,"#000031"]],"sequential":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"sequentialminus":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorway":["#000001","#000002","#000003","#000004","#000005","#000006","#000007","#000008","#000009","#000010"]}},"title":{"text":""},"xaxis":{"title":{"text":"dplt_grid"},"showgrid":true},"yaxis":{"title":{"text":""},"showgrid":true}},                        {"responsive": true}                    )                };                            </script>        </div>'}

A model result can be compared to a data. A synthetic data is generated as a Pandas.DataFrame:

df = DataFrame.from_dict({
    "young_modulus": atleast_1d(9e4),
    "nu_p": atleast_1d(0.25),
    "reaction_forces": atleast_1d(1e3),
})
variable_names = list(df.columns.values)

The model result is added to the DataFrame, and the latter is plotted:

df = concat(
    [
        df,
        DataFrame([result.get_numeric_scalars(variable_names=variable_names)]),
    ],
    ignore_index=True,
)

The dataframe is plotted to compare the model result to the synthetic result. First, we compare with a bar plot:

plot = BarPlot(Dataset.from_dataframe(df))
plot.title = "Comparison of model result with data"
plot.font_size = 20
plot.labels = ["data", "model result"]
fig = plot.execute(save=True, show=True, file_format="html")[0]
fig

Out:

{'text/html': '<div>            <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_SVG"></script><script type="text/javascript">if (window.MathJax && window.MathJax.Hub && window.MathJax.Hub.Config) {window.MathJax.Hub.Config({SVG: {font: "STIX-Web"}});}</script>                <script type="text/javascript">window.PlotlyConfig = {MathJaxConfig: \'local\'};</script>\n        <script charset="utf-8" src="https://cdn.plot.ly/plotly-2.35.0.min.js"></script>                <div id="9b4ccaa7-72c1-4ace-a1e6-195aa7fefa45" class="plotly-graph-div" style="height:525px; width:100%;"></div>            <script type="text/javascript">                                    window.PLOTLYENV=window.PLOTLYENV || {};                                    if (document.getElementById("9b4ccaa7-72c1-4ace-a1e6-195aa7fefa45")) {                    Plotly.newPlot(                        "9b4ccaa7-72c1-4ace-a1e6-195aa7fefa45",                        [{"marker":{"color":"rgba(127,0,255,1.0)"},"name":"data","text":["90000.0","0.2","1000.0"],"width":0.375,"x":[0.1875,1.1875,2.1875],"y":[90000.0,0.25,1000.0],"type":"bar","textfont":{"size":20},"textangle":0.0,"textposition":"outside"},{"marker":{"color":"rgba(255,0,0,1.0)"},"name":"model result","text":["210000.0","0.3","-2333.3"],"width":0.375,"x":[0.5625,1.5625,2.5625],"y":[210000.0,0.3,-2333.3333333333335],"type":"bar","textfont":{"size":20},"textangle":0.0,"textposition":"outside"}],                        {"template":{"data":{"candlestick":[{"decreasing":{"line":{"color":"#000033"}},"increasing":{"line":{"color":"#000032"}},"type":"candlestick"}],"contourcarpet":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contourcarpet"}],"contour":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contour"}],"heatmap":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"heatmap"}],"histogram2d":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"histogram2d"}],"icicle":[{"textfont":{"color":"white"},"type":"icicle"}],"sankey":[{"textfont":{"color":"#000036"},"type":"sankey"}],"scatter":[{"marker":{"line":{"width":0}},"type":"scatter"}],"table":[{"cells":{"fill":{"color":"#000038"},"font":{"color":"#000037"},"line":{"color":"#000039"}},"header":{"fill":{"color":"#000040"},"font":{"color":"#000036"},"line":{"color":"#000039"}},"type":"table"}],"waterfall":[{"connector":{"line":{"color":"#000036","width":2}},"decreasing":{"marker":{"color":"#000033"}},"increasing":{"marker":{"color":"#000032"}},"totals":{"marker":{"color":"#000034"}},"type":"waterfall"}]},"layout":{"coloraxis":{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorscale":{"diverging":[[0.0,"#000021"],[0.1,"#000022"],[0.2,"#000023"],[0.3,"#000024"],[0.4,"#000025"],[0.5,"#000026"],[0.6,"#000027"],[0.7,"#000028"],[0.8,"#000029"],[0.9,"#000030"],[1.0,"#000031"]],"sequential":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"sequentialminus":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorway":["#000001","#000002","#000003","#000004","#000005","#000006","#000007","#000008","#000009","#000010"]}},"font":{"size":20},"title":{"font":{"size":24.0},"text":"Comparison of model result with data"},"xaxis":{"title":{"text":""},"showgrid":true,"tickvals":[0.375,1.375,2.375],"ticktext":["young_modulus","nu_p","reaction_forces"],"tickangle":0.0,"automargin":true},"yaxis":{"title":{"text":""},"showgrid":true,"automargin":true}},                        {"responsive": true}                    )                };                            </script>        </div>'}

And with a scatter matrix. For a small number of data to compare (two here), it is less relevant than the bar plot, It may become more interesting for a larger number of data to compare:

df["color"] = range(len(df))
plot = ScatterMatrix(Dataset.from_dataframe(df), coloring_variable="color")
plot.labels = ["data", "model result"]
fig = plot.execute(
    save=False,
    show=True,
)
fig
    plot 02 visualize model resultplot 02 visualize model result

Out:

C:\Users\sebastien.bocquet\Dev\vimseo\.tox\doc\Lib\site-packages\gemseo\utils\matplotlib_figure.py:59: UserWarning:

FigureCanvasAgg is non-interactive, and thus cannot be shown


[<Figure size 640x480 with 9 Axes>]

Retrieve and manipulate a field

The models above expose scalar outputs and curves. Some models also produce fields -- variables defined over a mesh -- which can be retrieved from a result and post-processed: probed at a point, sampled along a line, or reshaped onto a grid. Here we use the analytic Tan open-hole model, which computes the membrane stress field around a hole in a loaded composite plate.

Note

Executing TanOpenHole requires the mesh extra (pip install "vimseo[mesh]"): the field is read back with pyvista.

field_model_name = "TanOpenHole"
field_load_case = "Tension"
field_model = create_model(
    field_model_name,
    field_load_case,
    model_options=IntegratedModelSettings(
        directory_archive_root=EXAMPLE_RUNS_DIR / "archive/visualize_model_result",
        directory_scratch_root=EXAMPLE_RUNS_DIR / "scratch/visualize_model_result",
        cache_file_path=EXAMPLE_RUNS_DIR
        / f"caches/visualize_model_result/{field_model_name}_{field_load_case}_cache.hdf",
    ),
)
field_model.cache = None
field_output = field_model.execute()

Out:

    INFO - 09:11:57: Current root directory of scratch directory is C:\Users\sebastien.bocquet\Dev\vimseo\docs\runnable_examples\model_runs\scratch\visualize_model_result.
    INFO - 09:11:57: Current root directory of job directory is C:\Users\sebastien.bocquet\Dev\vimseo\docs\runnable_examples\model_runs\archive\visualize_model_result.

The field is retrieved by rebuilding a ModelResult with load_fields=True. result.fields maps each field name to a list of MeshField objects:

field_result = ModelResult.from_data(
    {"inputs": field_model.get_input_data(), "outputs": field_output},
    model=field_model,
    load_fields=True,
)
flux_field = field_result.fields["flux"][0]
flux_field.point_variable_names

Out:

['N_xx', 'N_yy', 'N_xy', 'sigma_xx', 'sigma_yy', 'sigma_xy']

The mesh file backing the field is kept on disk, ready to be opened in an external tool such as ParaView:

flux_field.path

Out:

'C:\\Users\\sebastien.bocquet\\Dev\\vimseo\\docs\\runnable_examples\\model_runs\\archive\\visualize_model_result\\TanOpenHole\\Tension\\13\\flux.vtk'

We read the plate geometry and the applied far-field stress from the inputs:

inputs = field_model.get_input_data()
length = float(inputs["length"][0])
width = float(inputs["width"][0])
radius = float(inputs["radius"][0])
d0 = float(inputs["d0"][0])
applied_stress = float(inputs["load"][0])

Whole-field view. Before probing into it, the field can be looked at as a whole. MeshField.to_structured_grid reshapes one component back onto the grid it is defined on, returning the x and y axes and the 2-D array of values (nan inside the blanked hole), which plots directly as a heatmap. The stress concentration at the hole edge and the relaxation towards the applied far-field stress away from it are both visible:

grid_x, grid_y, sigma_xx_grid = flux_field.to_structured_grid("sigma_xx")
fig = go.Figure(
    go.Heatmap(
        x=grid_x,
        y=grid_y,
        z=sigma_xx_grid.T,
        colorscale="Viridis",
        colorbar={"title": "sigma_xx (MPa)"},
    )
)
fig.update_layout(
    title="sigma_xx field over the plate",
    xaxis_title="x (mm)",
    yaxis_title="y (mm)",
)
# Equal aspect ratio so the hole stays circular:
fig.update_yaxes(scaleanchor="x")
fig

Probing. MeshField.probe bilinearly interpolates a component at an arbitrary point. Walking outward from the hole along the transverse mid-section (x = length / 2), sigma_xx decays from its peak towards the applied stress. The field is blanked inside r < radius + d0, so a point in that region returns nan:

probe_x = 0.5 * length
blank_edge_y = 0.5 * width + radius + d0
probe_ys = [
    0.5 * width,
    blank_edge_y + 0.5,
    blank_edge_y + 2.0,
    blank_edge_y + 5.0,
    blank_edge_y + 9.0,
]
probe_values = [flux_field.probe("sigma_xx", probe_x, y) for y in probe_ys]
for y, value in zip(probe_ys, probe_values, strict=False):
    print(f"sigma_xx at (x={probe_x:.1f}, y={y:5.2f}) = {value:8.1f} MPa")

Out:

sigma_xx at (x=40.0, y=16.00) =      nan MPa
sigma_xx at (x=40.0, y=20.39) =   1737.3 MPa
sigma_xx at (x=40.0, y=21.89) =   1332.3 MPa
sigma_xx at (x=40.0, y=24.89) =   1138.9 MPa
sigma_xx at (x=40.0, y=28.89) =   1083.7 MPa

Line extraction. extract_line samples the field along a segment. We cut the full transverse section at x = length / 2. It returns the sampling coords, the curvilinear distance dist from the first point, and one array per requested field; points falling in the blanked hole come back nan:

line = extract_line(
    flux_field.path,
    point_a=(probe_x, 0.0, 0.0),
    point_b=(probe_x, width, 0.0),
    n_points=200,
    fields=["sigma_xx"],
)
line["sigma_xx"].shape

Out:

(201,)

The extracted profile, the probe points and the model's own centre-line output (line_center_sigma_xx, sampled internally over the same segment) are drawn together. They overlap, which confirms the three retrieval routes are consistent:

fig = go.Figure()
fig.add_trace(
    go.Scatter(
        x=line["coords"][:, 1],
        y=line["sigma_xx"],
        mode="lines",
        name="extract_line",
    )
)
fig.add_trace(
    go.Scatter(
        x=field_output["line_center_y"],
        y=field_output["line_center_sigma_xx"],
        mode="lines",
        line={"dash": "dot"},
        name="line_center output",
    )
)
fig.add_trace(
    go.Scatter(
        x=probe_ys,
        y=probe_values,
        mode="markers",
        marker={"size": 9, "symbol": "x"},
        name="probe",
    )
)
fig.add_hline(y=applied_stress, line_dash="dash", annotation_text="applied stress")
fig.update_layout(
    title="sigma_xx across the transverse mid-section",
    xaxis_title="y (mm)",
    yaxis_title="sigma_xx (MPa)",
)
fig

Compare a field between two designs

Running the same extraction on a second design turns the field into a quantitative comparison. We re-execute with a 0-dominated layup, wrap each transverse profile in a Curve, and overlay them with plot_curves (the same helper used for the beam curves above), which gives each line its own colour and legend entry. Away from the hole both profiles relax to the applied far-field stress (~1000 MPa); they differ around the concentration:

field_output_ud = field_model.execute({"layup": atleast_1d([0.0] * 8)})
flux_field_ud = ModelResult.from_data(
    {"inputs": field_model.get_input_data(), "outputs": field_output_ud},
    model=field_model,
    load_fields=True,
).fields["flux"][0]
line_ud = extract_line(
    flux_field_ud.path,
    point_a=(probe_x, 0.0, 0.0),
    point_b=(probe_x, width, 0.0),
    n_points=200,
    fields=["sigma_xx"],
)

quasi_iso_curve = Curve({"y": line["coords"][:, 1], "sigma_xx": line["sigma_xx"]})
ud_curve = Curve({"y": line_ud["coords"][:, 1], "sigma_xx": line_ud["sigma_xx"]})
plot_curves(
    [quasi_iso_curve, ud_curve],
    labels=["quasi-isotropic", "0-dominated"],
)

Out:

    INFO - 09:11:57: Current root directory of scratch directory is C:\Users\sebastien.bocquet\Dev\vimseo\docs\runnable_examples\model_runs\scratch\visualize_model_result.
    INFO - 09:11:57: Current root directory of job directory is C:\Users\sebastien.bocquet\Dev\vimseo\docs\runnable_examples\model_runs\archive\visualize_model_result.
{'text/html': '<div>            <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_SVG"></script><script type="text/javascript">if (window.MathJax && window.MathJax.Hub && window.MathJax.Hub.Config) {window.MathJax.Hub.Config({SVG: {font: "STIX-Web"}});}</script>                <script type="text/javascript">window.PlotlyConfig = {MathJaxConfig: \'local\'};</script>\n        <script charset="utf-8" src="https://cdn.plot.ly/plotly-2.35.0.min.js"></script>                <div id="a2beefe1-bf38-437b-94c6-7db7dbfde664" class="plotly-graph-div" style="height:525px; width:100%;"></div>            <script type="text/javascript">                                    window.PLOTLYENV=window.PLOTLYENV || {};                                    if (document.getElementById("a2beefe1-bf38-437b-94c6-7db7dbfde664")) {                    Plotly.newPlot(                        "a2beefe1-bf38-437b-94c6-7db7dbfde664",                        [{"line":{"color":"blue","dash":"solid","width":2},"mode":"lines","name":"quasi-isotropic","showlegend":true,"x":[0.0,0.1599999964237213,0.3199999928474426,0.47999998927116394,0.6399999856948853,0.800000011920929,0.9599999785423279,1.1200000047683716,1.2799999713897705,1.440000057220459,1.600000023841858,1.7599999904632568,1.9199999570846558,2.0799999237060547,2.240000009536743,2.4000000953674316,2.559999942779541,2.7200000286102295,2.880000114440918,3.0399999618530273,3.200000047683716,3.359999895095825,3.5199999809265137,3.680000066757202,3.8399999141693115,4.0,4.159999847412109,4.320000171661377,4.480000019073486,4.639999866485596,4.800000190734863,4.960000038146973,5.119999885559082,5.28000020980835,5.440000057220459,5.599999904632568,5.760000228881836,5.920000076293945,6.079999923706055,6.239999771118164,6.400000095367432,6.559999942779541,6.71999979019165,6.880000114440918,7.039999961853027,7.199999809265137,7.360000133514404,7.519999980926514,7.679999828338623,7.840000152587891,8.0,8.15999984741211,8.319999694824219,8.479999542236328,8.640000343322754,8.800000190734863,8.960000038146973,9.119999885559082,9.279999732971191,9.4399995803833,9.600000381469727,9.760000228881836,9.920000076293945,10.079999923706055,10.239999771118164,10.399999618530273,10.5600004196167,10.720000267028809,10.880000114440918,11.039999961853027,11.199999809265137,11.359999656677246,11.520000457763672,11.680000305175781,11.84000015258789,12.0,12.15999984741211,12.319999694824219,12.479999542236328,12.640000343322754,12.800000190734863,12.960000038146973,13.119999885559082,13.279999732971191,13.4399995803833,13.600000381469727,13.760000228881836,13.920000076293945,14.079999923706055,14.239999771118164,14.399999618530273,14.5600004196167,14.720000267028809,14.880000114440918,15.039999961853027,15.199999809265137,15.359999656677246,15.520000457763672,15.680000305175781,15.84000015258789,16.0,16.15999984741211,16.31999969482422,16.479999542236328,16.639999389648438,16.799999237060547,16.959999084472656,17.1200008392334,17.280000686645508,17.440000534057617,17.600000381469727,17.760000228881836,17.920000076293945,18.079999923706055,18.239999771118164,18.399999618530273,18.559999465942383,18.719999313354492,18.8799991607666,19.040000915527344,19.200000762939453,19.360000610351562,19.520000457763672,19.68000030517578,19.84000015258789,20.0,20.15999984741211,20.31999969482422,20.479999542236328,20.639999389648438,20.799999237060547,20.959999084472656,21.1200008392334,21.280000686645508,21.440000534057617,21.600000381469727,21.760000228881836,21.920000076293945,22.079999923706055,22.239999771118164,22.399999618530273,22.559999465942383,22.719999313354492,22.8799991607666,23.040000915527344,23.200000762939453,23.360000610351562,23.520000457763672,23.68000030517578,23.84000015258789,24.0,24.15999984741211,24.31999969482422,24.479999542236328,24.639999389648438,24.799999237060547,24.959999084472656,25.1200008392334,25.280000686645508,25.440000534057617,25.600000381469727,25.760000228881836,25.920000076293945,26.079999923706055,26.239999771118164,26.399999618530273,26.559999465942383,26.719999313354492,26.8799991607666,27.040000915527344,27.200000762939453,27.360000610351562,27.520000457763672,27.68000030517578,27.84000015258789,28.0,28.15999984741211,28.31999969482422,28.479999542236328,28.639999389648438,28.799999237060547,28.959999084472656,29.1200008392334,29.280000686645508,29.440000534057617,29.600000381469727,29.760000228881836,29.920000076293945,30.079999923706055,30.239999771118164,30.399999618530273,30.559999465942383,30.719999313354492,30.8799991607666,31.040000915527344,31.200000762939453,31.360000610351562,31.520000457763672,31.68000030517578,31.84000015258789,32.0],"y":[1069.0033710226182,1069.5343984600443,1070.0654258974703,1070.6343096980652,1071.2039740440118,1071.81439394592,1072.4265296423955,1073.0827132862353,1073.7417384791108,1074.4484532081412,1075.15935985868,1075.921902223235,1076.6902463452354,1077.5147822339893,1078.3470693527188,1079.2405405248737,1080.1440877128991,1081.1145762962055,1082.0979690111244,1083.1545520799373,1084.2274015368994,1085.3807089514253,1086.5543876094616,1087.816702356663,1089.1043397820376,1090.4899256561714,1091.906852377883,1093.4323759659046,1094.9965718083706,1096.6816371420975,1098.4143745167694,1100.282125050962,1102.2085789530386,1104.2864326221556,1106.4365874975972,1108.7572764303784,1111.1671749632865,1113.7700130796673,1116.483105974278,1119.4156247210958,1122.484844616533,1125.8048382395934,1129.2948540017214,1133.0731517089275,1137.0638485269656,1141.3878957413958,1145.9786376696832,1150.9573814593164,1156.2728929260868,1162.0432036000511,1168.2415273593485,1174.9769598033768,1182.2604633898948,1190.183466152911,1198.814058194961,1208.2128775431788,1218.533625344635,1229.7861753698915,1242.252236754873,1255.860467614455,1271.0845559907307,1287.724690095527,1306.543479211677,1327.1403147453018,1350.7165809437106,1376.5561909974963,1406.5347027122764,1439.4382930478105,1478.1923456873567,1520.7908466274444,1571.8223285758395,1628.0004996436805,1696.602234256697,1772.2358810529972,1866.6221791403946,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,1866.6221675295599,1772.2358694419231,1696.602218464508,1628.0008869986905,1571.8226095236218,1520.7911275771557,1478.1920756804109,1439.438000047931,1406.534454355592,1376.5561213257702,1350.716548429828,1327.1403397097747,1306.5435040613195,1287.7246804602282,1271.0845327702477,1255.8605351359147,1242.2522743669028,1229.786189988626,1218.5335201664018,1208.2128183468349,1198.8140237040393,1190.1834716097717,1182.2604633898948,1174.9769598033768,1168.2415273593488,1162.0432036000511,1156.2729004047949,1150.9573716897687,1145.9786245204211,1141.387913521839,1137.0638646506486,1133.0731030181612,1129.2948209605702,1125.804833934124,1122.4848586903756,1119.4156479418775,1116.4831159573855,1113.7699885752731,1111.1671285139728,1108.7572371678084,1106.4365494369815,1104.286400306338,1102.2085611733944,1100.2821015501167,1098.4143641888709,1096.6816319781483,1094.9965606435076,1093.4323418078668,1091.9068180030567,1090.4899372631135,1089.1043881435276,1087.816750722733,1086.5544375571717,1085.3807606434414,1084.2274446474225,1083.154556559211,1082.0979335434165,1081.1145710295182,1080.1441045255415,1079.2405343489822,1078.347044891804,1077.5147590132183,1076.6902223036286,1075.9218672597922,1075.1593161670462,1074.4484215404711,1073.741719133143,1073.0827059255766,1072.42652622182,1071.8143909814214,1071.2039705282805,1070.6342722254042,1070.065355933412,1069.5343634780152,1069.0033710226182],"type":"scatter"}],                        {"template":{"data":{"candlestick":[{"decreasing":{"line":{"color":"#000033"}},"increasing":{"line":{"color":"#000032"}},"type":"candlestick"}],"contourcarpet":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contourcarpet"}],"contour":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contour"}],"heatmap":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"heatmap"}],"histogram2d":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"histogram2d"}],"icicle":[{"textfont":{"color":"white"},"type":"icicle"}],"sankey":[{"textfont":{"color":"#000036"},"type":"sankey"}],"scatter":[{"marker":{"line":{"width":0}},"type":"scatter"}],"table":[{"cells":{"fill":{"color":"#000038"},"font":{"color":"#000037"},"line":{"color":"#000039"}},"header":{"fill":{"color":"#000040"},"font":{"color":"#000036"},"line":{"color":"#000039"}},"type":"table"}],"waterfall":[{"connector":{"line":{"color":"#000036","width":2}},"decreasing":{"marker":{"color":"#000033"}},"increasing":{"marker":{"color":"#000032"}},"totals":{"marker":{"color":"#000034"}},"type":"waterfall"}]},"layout":{"coloraxis":{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorscale":{"diverging":[[0.0,"#000021"],[0.1,"#000022"],[0.2,"#000023"],[0.3,"#000024"],[0.4,"#000025"],[0.5,"#000026"],[0.6,"#000027"],[0.7,"#000028"],[0.8,"#000029"],[0.9,"#000030"],[1.0,"#000031"]],"sequential":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"sequentialminus":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorway":["#000001","#000002","#000003","#000004","#000005","#000006","#000007","#000008","#000009","#000010"]}},"title":{"text":""},"xaxis":{"title":{"text":"y"},"showgrid":true},"yaxis":{"title":{"text":""},"showgrid":true}},                        {"responsive": true}                    )                };                            </script>        </div>'}
{'text/html': '<div>            <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_SVG"></script><script type="text/javascript">if (window.MathJax && window.MathJax.Hub && window.MathJax.Hub.Config) {window.MathJax.Hub.Config({SVG: {font: "STIX-Web"}});}</script>                <script type="text/javascript">window.PlotlyConfig = {MathJaxConfig: \'local\'};</script>\n        <script charset="utf-8" src="https://cdn.plot.ly/plotly-2.35.0.min.js"></script>                <div id="608a60e8-95d2-4d2a-80f6-49ef721c1437" class="plotly-graph-div" style="height:525px; width:100%;"></div>            <script type="text/javascript">                                    window.PLOTLYENV=window.PLOTLYENV || {};                                    if (document.getElementById("608a60e8-95d2-4d2a-80f6-49ef721c1437")) {                    Plotly.newPlot(                        "608a60e8-95d2-4d2a-80f6-49ef721c1437",                        [{"line":{"color":"blue","dash":"solid","width":2},"mode":"lines","name":"quasi-isotropic","showlegend":true,"x":[0.0,0.1599999964237213,0.3199999928474426,0.47999998927116394,0.6399999856948853,0.800000011920929,0.9599999785423279,1.1200000047683716,1.2799999713897705,1.440000057220459,1.600000023841858,1.7599999904632568,1.9199999570846558,2.0799999237060547,2.240000009536743,2.4000000953674316,2.559999942779541,2.7200000286102295,2.880000114440918,3.0399999618530273,3.200000047683716,3.359999895095825,3.5199999809265137,3.680000066757202,3.8399999141693115,4.0,4.159999847412109,4.320000171661377,4.480000019073486,4.639999866485596,4.800000190734863,4.960000038146973,5.119999885559082,5.28000020980835,5.440000057220459,5.599999904632568,5.760000228881836,5.920000076293945,6.079999923706055,6.239999771118164,6.400000095367432,6.559999942779541,6.71999979019165,6.880000114440918,7.039999961853027,7.199999809265137,7.360000133514404,7.519999980926514,7.679999828338623,7.840000152587891,8.0,8.15999984741211,8.319999694824219,8.479999542236328,8.640000343322754,8.800000190734863,8.960000038146973,9.119999885559082,9.279999732971191,9.4399995803833,9.600000381469727,9.760000228881836,9.920000076293945,10.079999923706055,10.239999771118164,10.399999618530273,10.5600004196167,10.720000267028809,10.880000114440918,11.039999961853027,11.199999809265137,11.359999656677246,11.520000457763672,11.680000305175781,11.84000015258789,12.0,12.15999984741211,12.319999694824219,12.479999542236328,12.640000343322754,12.800000190734863,12.960000038146973,13.119999885559082,13.279999732971191,13.4399995803833,13.600000381469727,13.760000228881836,13.920000076293945,14.079999923706055,14.239999771118164,14.399999618530273,14.5600004196167,14.720000267028809,14.880000114440918,15.039999961853027,15.199999809265137,15.359999656677246,15.520000457763672,15.680000305175781,15.84000015258789,16.0,16.15999984741211,16.31999969482422,16.479999542236328,16.639999389648438,16.799999237060547,16.959999084472656,17.1200008392334,17.280000686645508,17.440000534057617,17.600000381469727,17.760000228881836,17.920000076293945,18.079999923706055,18.239999771118164,18.399999618530273,18.559999465942383,18.719999313354492,18.8799991607666,19.040000915527344,19.200000762939453,19.360000610351562,19.520000457763672,19.68000030517578,19.84000015258789,20.0,20.15999984741211,20.31999969482422,20.479999542236328,20.639999389648438,20.799999237060547,20.959999084472656,21.1200008392334,21.280000686645508,21.440000534057617,21.600000381469727,21.760000228881836,21.920000076293945,22.079999923706055,22.239999771118164,22.399999618530273,22.559999465942383,22.719999313354492,22.8799991607666,23.040000915527344,23.200000762939453,23.360000610351562,23.520000457763672,23.68000030517578,23.84000015258789,24.0,24.15999984741211,24.31999969482422,24.479999542236328,24.639999389648438,24.799999237060547,24.959999084472656,25.1200008392334,25.280000686645508,25.440000534057617,25.600000381469727,25.760000228881836,25.920000076293945,26.079999923706055,26.239999771118164,26.399999618530273,26.559999465942383,26.719999313354492,26.8799991607666,27.040000915527344,27.200000762939453,27.360000610351562,27.520000457763672,27.68000030517578,27.84000015258789,28.0,28.15999984741211,28.31999969482422,28.479999542236328,28.639999389648438,28.799999237060547,28.959999084472656,29.1200008392334,29.280000686645508,29.440000534057617,29.600000381469727,29.760000228881836,29.920000076293945,30.079999923706055,30.239999771118164,30.399999618530273,30.559999465942383,30.719999313354492,30.8799991607666,31.040000915527344,31.200000762939453,31.360000610351562,31.520000457763672,31.68000030517578,31.84000015258789,32.0],"y":[1069.0033710226182,1069.5343984600443,1070.0654258974703,1070.6343096980652,1071.2039740440118,1071.81439394592,1072.4265296423955,1073.0827132862353,1073.7417384791108,1074.4484532081412,1075.15935985868,1075.921902223235,1076.6902463452354,1077.5147822339893,1078.3470693527188,1079.2405405248737,1080.1440877128991,1081.1145762962055,1082.0979690111244,1083.1545520799373,1084.2274015368994,1085.3807089514253,1086.5543876094616,1087.816702356663,1089.1043397820376,1090.4899256561714,1091.906852377883,1093.4323759659046,1094.9965718083706,1096.6816371420975,1098.4143745167694,1100.282125050962,1102.2085789530386,1104.2864326221556,1106.4365874975972,1108.7572764303784,1111.1671749632865,1113.7700130796673,1116.483105974278,1119.4156247210958,1122.484844616533,1125.8048382395934,1129.2948540017214,1133.0731517089275,1137.0638485269656,1141.3878957413958,1145.9786376696832,1150.9573814593164,1156.2728929260868,1162.0432036000511,1168.2415273593485,1174.9769598033768,1182.2604633898948,1190.183466152911,1198.814058194961,1208.2128775431788,1218.533625344635,1229.7861753698915,1242.252236754873,1255.860467614455,1271.0845559907307,1287.724690095527,1306.543479211677,1327.1403147453018,1350.7165809437106,1376.5561909974963,1406.5347027122764,1439.4382930478105,1478.1923456873567,1520.7908466274444,1571.8223285758395,1628.0004996436805,1696.602234256697,1772.2358810529972,1866.6221791403946,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,1866.6221675295599,1772.2358694419231,1696.602218464508,1628.0008869986905,1571.8226095236218,1520.7911275771557,1478.1920756804109,1439.438000047931,1406.534454355592,1376.5561213257702,1350.716548429828,1327.1403397097747,1306.5435040613195,1287.7246804602282,1271.0845327702477,1255.8605351359147,1242.2522743669028,1229.786189988626,1218.5335201664018,1208.2128183468349,1198.8140237040393,1190.1834716097717,1182.2604633898948,1174.9769598033768,1168.2415273593488,1162.0432036000511,1156.2729004047949,1150.9573716897687,1145.9786245204211,1141.387913521839,1137.0638646506486,1133.0731030181612,1129.2948209605702,1125.804833934124,1122.4848586903756,1119.4156479418775,1116.4831159573855,1113.7699885752731,1111.1671285139728,1108.7572371678084,1106.4365494369815,1104.286400306338,1102.2085611733944,1100.2821015501167,1098.4143641888709,1096.6816319781483,1094.9965606435076,1093.4323418078668,1091.9068180030567,1090.4899372631135,1089.1043881435276,1087.816750722733,1086.5544375571717,1085.3807606434414,1084.2274446474225,1083.154556559211,1082.0979335434165,1081.1145710295182,1080.1441045255415,1079.2405343489822,1078.347044891804,1077.5147590132183,1076.6902223036286,1075.9218672597922,1075.1593161670462,1074.4484215404711,1073.741719133143,1073.0827059255766,1072.42652622182,1071.8143909814214,1071.2039705282805,1070.6342722254042,1070.065355933412,1069.5343634780152,1069.0033710226182],"type":"scatter"},{"line":{"color":"red","dash":"solid","width":2},"mode":"lines","name":"0-dominated","showlegend":true,"x":[0.0,0.1599999964237213,0.3199999928474426,0.47999998927116394,0.6399999856948853,0.800000011920929,0.9599999785423279,1.1200000047683716,1.2799999713897705,1.440000057220459,1.600000023841858,1.7599999904632568,1.9199999570846558,2.0799999237060547,2.240000009536743,2.4000000953674316,2.559999942779541,2.7200000286102295,2.880000114440918,3.0399999618530273,3.200000047683716,3.359999895095825,3.5199999809265137,3.680000066757202,3.8399999141693115,4.0,4.159999847412109,4.320000171661377,4.480000019073486,4.639999866485596,4.800000190734863,4.960000038146973,5.119999885559082,5.28000020980835,5.440000057220459,5.599999904632568,5.760000228881836,5.920000076293945,6.079999923706055,6.239999771118164,6.400000095367432,6.559999942779541,6.71999979019165,6.880000114440918,7.039999961853027,7.199999809265137,7.360000133514404,7.519999980926514,7.679999828338623,7.840000152587891,8.0,8.15999984741211,8.319999694824219,8.479999542236328,8.640000343322754,8.800000190734863,8.960000038146973,9.119999885559082,9.279999732971191,9.4399995803833,9.600000381469727,9.760000228881836,9.920000076293945,10.079999923706055,10.239999771118164,10.399999618530273,10.5600004196167,10.720000267028809,10.880000114440918,11.039999961853027,11.199999809265137,11.359999656677246,11.520000457763672,11.680000305175781,11.84000015258789,12.0,12.15999984741211,12.319999694824219,12.479999542236328,12.640000343322754,12.800000190734863,12.960000038146973,13.119999885559082,13.279999732971191,13.4399995803833,13.600000381469727,13.760000228881836,13.920000076293945,14.079999923706055,14.239999771118164,14.399999618530273,14.5600004196167,14.720000267028809,14.880000114440918,15.039999961853027,15.199999809265137,15.359999656677246,15.520000457763672,15.680000305175781,15.84000015258789,16.0,16.15999984741211,16.31999969482422,16.479999542236328,16.639999389648438,16.799999237060547,16.959999084472656,17.1200008392334,17.280000686645508,17.440000534057617,17.600000381469727,17.760000228881836,17.920000076293945,18.079999923706055,18.239999771118164,18.399999618530273,18.559999465942383,18.719999313354492,18.8799991607666,19.040000915527344,19.200000762939453,19.360000610351562,19.520000457763672,19.68000030517578,19.84000015258789,20.0,20.15999984741211,20.31999969482422,20.479999542236328,20.639999389648438,20.799999237060547,20.959999084472656,21.1200008392334,21.280000686645508,21.440000534057617,21.600000381469727,21.760000228881836,21.920000076293945,22.079999923706055,22.239999771118164,22.399999618530273,22.559999465942383,22.719999313354492,22.8799991607666,23.040000915527344,23.200000762939453,23.360000610351562,23.520000457763672,23.68000030517578,23.84000015258789,24.0,24.15999984741211,24.31999969482422,24.479999542236328,24.639999389648438,24.799999237060547,24.959999084472656,25.1200008392334,25.280000686645508,25.440000534057617,25.600000381469727,25.760000228881836,25.920000076293945,26.079999923706055,26.239999771118164,26.399999618530273,26.559999465942383,26.719999313354492,26.8799991607666,27.040000915527344,27.200000762939453,27.360000610351562,27.520000457763672,27.68000030517578,27.84000015258789,28.0,28.15999984741211,28.31999969482422,28.479999542236328,28.639999389648438,28.799999237060547,28.959999084472656,29.1200008392334,29.280000686645508,29.440000534057617,29.600000381469727,29.760000228881836,29.920000076293945,30.079999923706055,30.239999771118164,30.399999618530273,30.559999465942383,30.719999313354492,30.8799991607666,31.040000915527344,31.200000762939453,31.360000610351562,31.520000457763672,31.68000030517578,31.84000015258789,32.0],"y":[1067.4832232119472,1067.9511639930436,1068.41910477414,1068.9182803396086,1069.418099922719,1069.951394186224,1070.4860977098524,1071.056739489753,1071.629699645594,1072.241314534452,1072.8563271520454,1073.5129968680938,1074.1743471504076,1074.880683353347,1075.5932250588373,1076.3544538703914,1077.1237005794942,1077.9457633876566,1078.7780074118957,1079.6676841690219,1080.5701253295165,1081.5351859487516,1082.5161013872726,1083.5654840504487,1084.6344271849612,1085.7784551488642,1086.9465080610903,1088.1971670248538,1089.477242331309,1090.8485049791352,1092.2557330525524,1093.7639947856667,1095.3161858324852,1096.9807821579038,1098.699057271064,1100.5429154725882,1102.452468971696,1104.5029905279882,1106.6340681344946,1108.924209661051,1111.3134476605999,1113.8831663237831,1116.5752494792744,1119.4734078503266,1122.5233963963533,1125.81026888789,1129.2866594045643,1133.0374266291383,1137.0263407459015,1141.3358058219928,1145.9469410968277,1150.936127225168,1156.311080273854,1162.1367823959324,1168.4612281332713,1175.3297960430555,1182.851351514172,1191.0393550422023,1200.0952919868698,1209.9813441011802,1221.0417821866595,1233.157136343374,1246.8955274464383,1262.007733959366,1279.4220107217966,1298.6801981014041,1321.3102728370845,1346.512514851674,1376.8593151981288,1410.9828723107296,1453.3909258171104,1501.754225418675,1564.4927604571021,1637.680062182505,1738.731434450678,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,1738.7314344506779,1637.6800621825064,1564.4927604571017,1501.7545993676117,1453.3911785890477,1410.9831250826674,1376.8591343169312,1346.512333970476,1321.310137952003,1298.6801981014037,1279.4220107217964,1262.0077339593659,1246.8955274464377,1233.1571363433734,1221.041782186659,1209.9814100261983,1200.095345964512,1191.039409019844,1182.8513066821647,1175.329751211049,1168.461190436826,1162.1367823959322,1156.3110802738536,1150.9361272251676,1145.9469410968277,1141.3358058219928,1137.0263526338035,1133.03743851704,1129.2866697649945,1125.8102896087505,1122.523414575719,1119.4733896709608,1116.575241456234,1113.8831583007427,1111.3134405401304,1108.924209661051,1106.6340681344948,1104.5029905279885,1102.4524689716964,1100.54292116349,1098.6990623919282,1096.9807872787678,1095.3161950842737,1093.7639855338782,1092.2557246648364,1090.8485007852773,1089.4772385163837,1088.1971632099285,1086.94650806109,1085.778455148864,1084.634428777812,1083.5654856432996,1082.5161043106268,1081.5351903337828,1080.5701293637405,1079.6676895479875,1078.7780024513377,1077.9457596672382,1077.1236982869584,1076.3544515778558,1075.5932239970684,1074.880683353347,1074.174347643152,1073.5129978535829,1072.8563285267062,1072.2413163673327,1071.6297022069264,1071.0567424779738,1070.4860947219631,1069.9513915967198,1069.4180980607462,1068.9182789431288,1068.4191039025327,1067.9511635572399,1067.4832232119472],"type":"scatter"}],                        {"template":{"data":{"candlestick":[{"decreasing":{"line":{"color":"#000033"}},"increasing":{"line":{"color":"#000032"}},"type":"candlestick"}],"contourcarpet":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contourcarpet"}],"contour":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"contour"}],"heatmap":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"heatmap"}],"histogram2d":[{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"type":"histogram2d"}],"icicle":[{"textfont":{"color":"white"},"type":"icicle"}],"sankey":[{"textfont":{"color":"#000036"},"type":"sankey"}],"scatter":[{"marker":{"line":{"width":0}},"type":"scatter"}],"table":[{"cells":{"fill":{"color":"#000038"},"font":{"color":"#000037"},"line":{"color":"#000039"}},"header":{"fill":{"color":"#000040"},"font":{"color":"#000036"},"line":{"color":"#000039"}},"type":"table"}],"waterfall":[{"connector":{"line":{"color":"#000036","width":2}},"decreasing":{"marker":{"color":"#000033"}},"increasing":{"marker":{"color":"#000032"}},"totals":{"marker":{"color":"#000034"}},"type":"waterfall"}]},"layout":{"coloraxis":{"colorscale":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorscale":{"diverging":[[0.0,"#000021"],[0.1,"#000022"],[0.2,"#000023"],[0.3,"#000024"],[0.4,"#000025"],[0.5,"#000026"],[0.6,"#000027"],[0.7,"#000028"],[0.8,"#000029"],[0.9,"#000030"],[1.0,"#000031"]],"sequential":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]],"sequentialminus":[[0.0,"#000011"],[0.1111111111111111,"#000012"],[0.2222222222222222,"#000013"],[0.3333333333333333,"#000014"],[0.4444444444444444,"#000015"],[0.5555555555555556,"#000016"],[0.6666666666666666,"#000017"],[0.7777777777777778,"#000018"],[0.8888888888888888,"#000019"],[1.0,"#000020"]]},"colorway":["#000001","#000002","#000003","#000004","#000005","#000006","#000007","#000008","#000009","#000010"]}},"title":{"text":""},"xaxis":{"title":{"text":"y"},"showgrid":true},"yaxis":{"title":{"text":""},"showgrid":true}},                        {"responsive": true}                    )                };                            </script>        </div>'}

Total running time of the script: ( 0 minutes 2.302 seconds)

Download Python source code: plot_02_visualize-model_result.py

Download Jupyter notebook: plot_02_visualize-model_result.ipynb

Gallery generated by mkdocs-gallery