ExamplesΒΆ

Hide code cell source
import math
import pathlib
import warnings

import demes
import demesdraw
import demesdraw.utils
import matplotlib.pyplot as plt

# Output SVG.
from matplotlib_inline.backend_inline import set_matplotlib_formats
set_matplotlib_formats("svg")


# Ignore warnings about simultaneous pulses in our examples.
warnings.filterwarnings("ignore", "Multiple pulses", UserWarning, "demes")


def plot_from_yaml(yaml_filename):
    graph = demes.load(yaml_filename)
    log_time = demesdraw.utils.log_time_heuristic(graph)
    log_size = demesdraw.utils.log_size_heuristic(graph)

    ax1 = demesdraw.size_history(
        graph,
        invert_x=True,
        log_time=log_time,
        log_size=log_size,
        title=example.name,
    )

    ax2 = demesdraw.tubes(
        graph,
        log_time=log_time,
        title=example.name,
    )

    plt.show(ax1.figure)
    plt.show(ax2.figure)
    
    plt.close(ax1.figure)
    plt.close(ax2.figure)
    print("\n\n")

    
# Plot each example yaml in the examples folder.
cwd = pathlib.Path(".").parent.resolve()
examples = list((cwd / ".." / "examples").glob("**/*.yaml"))
for example in sorted(examples):
    plot_from_yaml(example)
_images/17dd59422d0d43f80cef044f7b2db93eaf9591db486ed750d3613f6a1186ed86.svg_images/b72f503e5e27ea53a4ec126b246fd824d3968bb5d7863a75b44ee91a9ccc763a.svg

_images/4109494e33732ca927e6799f98410f10e3cec599235053942762a75d28c7da24.svg_images/b741a858a7c11b81e8f91f0862261cb0ce2c000456332bc465a32a11f2c9f55e.svg

_images/704b0ac92d703752217a1561976ae7823d190f09c181fcd52953f88aa60023a2.svg_images/87f0892d76f7749c2d0b204cd78c5e7993bddcac938b7114771b45393fb9a985.svg

_images/9f9de12bbbb13857d715dac0cc653125cc0a6ac30af7769b20e0d6897541bdee.svg_images/99ad1d67cc1549a9d19569b61bb0087312d4c6f93049cd2a67680f7f3391e958.svg

_images/9317f57f88a9a9af82beb6244ae7bc76920183469ce76b036a26ac5743795131.svg_images/e28c16703e0f1db411caa91a4718a67fc5167b7bb270a9ff7b67ec82366e487e.svg

_images/737718eb84650f321e48193cee5cde4064d885ae3daafe4c756cd7103931004c.svg_images/6cb91e4744c660ad77d67fc04a727662b91abbab0ad83bebc1442ba8b589035c.svg

_images/fdd957bd55f026c7d6f419ea5e8488f519a4381ef4e82bf7695f152b97769a74.svg_images/2b6517090aea79828b6f47315d9b2609ca137b0ebca8488fe3b42a6e06ca4377.svg

_images/2d49918e63a88a44e41b12799c123cd0a6943fa7d43ff39c50db2012d9f2c6f0.svg_images/80a75abbaa6f12569b585da7c661e7d6ab613f1d80faa55a9fa1faeb227cbff8.svg

_images/5d58294a7ddc3edee9ea24b674b4aae789df5907fcd0d0f82459f823ed378088.svg_images/84ca3b46db9d3035611e33f89392eb0a3eb253c1667d07345ccafa87e6234b00.svg

_images/abebece1ee8258af743c27bd3691067dd1e85532af62b519caefee21fd4d094f.svg_images/da8273d1d368b1ae5c5efde37cb159d9863e08db1fd98ade131c368f65ce7372.svg

_images/cb284f3b3c212fade099e99a89d0e447263da115bae8411cb7af767b9ad9670c.svg_images/bd4c005842002fe46640d23a83463b9c808119857741c8ebc4e8d491fd5bff45.svg

_images/c93b416591a0a39819772f2ffcf73b6f74708040fa2ccebed69546f55e7ddc86.svg_images/fe5613dbd9a567ba7b4cb4e308b06257be75399fe77548afae0e98987a1e8218.svg

_images/51a068b4a63a551a7797e08c9763dd70c1b208b33f12ca57647db7136e00327a.svg_images/8391ea2c32da2a66d3b91ab5a865c438333772e7bb61846413d096968b32b93f.svg

_images/835eb65b1964cb2688761956056720b6e9825c439298c864d61ba281e6c56a06.svg_images/b857d43c9143dd482131bf8fe408e5eb2ab57f30aa1e0dec5efd63fa6d378763.svg

_images/c6ec9fe90863749302c3412cabc51bebb23e6f51f0e332988fcad09c1daf615b.svg_images/ee5f471d46923264bccbc15a9f0e905c1a6736f4c855e36882f2ed96980e20ac.svg

_images/c61cc7919eb3303834d779e231ad91d7b21ff070c287d5860921c42cce598ac9.svg_images/ae74a4d284d9a6d14664a619ede5a5ca94f71671623e0c12e792e034efe5cdf0.svg

_images/36db8e6edabebf9e6f1185043001a0dc706c1b25cbfba102780e3b708dafa3af.svg_images/42e9987e4cf1ae19274d590008e24921c9846ad493f5dc7d8eee1a28ea9ab3e9.svg

_images/776e5f37c1fa0f60d44cbb3d1e3affe559c3558927c24a0f6d4e6e0056c0d641.svg_images/b851aba0ea84c1d297357f4019e7158eae95d58ab06c7460dff4c92dffa46875.svg

_images/58694f2de5e80592b4973ac039383e366e3b1632f8b531c18efc9c71ac39255a.svg_images/98f4231a8d78c31e50f296fdca818867148c20d9ea84823e7dcdf9db57a09a28.svg

_images/d25fc0ec08c7bc909d04d7f99afae78dc6042bb3c603c50bfa8bef83579116f8.svg_images/2e4feaa8dd9d4c781cb803cc5e22c524cbda957a00229058c7d028931b77a0a8.svg

_images/28cbec90ea59633c5fc0f4209379b1412724d78a802478227cf558469e6e53bf.svg_images/b45671c3a6ef71a661f0091414c98b4e029ecbb11ed01c0405bbb70d1f1c8c33.svg

_images/91dbee5f0a005115e8565767a0edc15fe499f0c90c8b32cd34bd668702c50c39.svg_images/a6d9c77b55ced4aaec67361f8682ad65f4eb6d06c0ea80f573d4f7b3a660c231.svg

_images/8aea0231f4dddc2604cfca27a75a0c1d8e769cd7fa00f58e923a43969e5edad2.svg_images/75620b41770328b4db2bce43bafc42bc80f0471f99c2328c861ed3ca186ff28b.svg

_images/28cd69eb05dcf4f3fe9ffb71d1c38e478738b1c06b3a85b1b356e8685ae30a03.svg_images/8db8eb4e5f29bd84daa9e02f76128c2dbd4c0cb0206468c28ba0b4e1374a0fed.svg

_images/faf173cc7e05f7cfbfeb1bc4c38bbc6f2add4bb8314c04c91d1a6ad15c59fc34.svg_images/b09d915e22efdc26abe12c5f4712ebc51cc04ff0e9e735aad5e28b0b26dceef7.svg

/home/runner/work/demesdraw/demesdraw/demesdraw/utils.py:582: UserWarning: Failed to optimise:            message: The maximum number of function evaluations is exceeded.
           success: False
            status: 0
               fun: 267700252081.24774
                 x: [ 2.580e+04  2.580e+04 -1.061e+03  5.266e+04 -1.446e+05
                     -4.599e+04  1.513e+05]
               nit: 1000
              nfev: 1000
              njev: 7223
              nhev: 0
          cg_niter: 3236
      cg_stop_cond: 4
              grad: [-1.379e-02 -1.095e-02 -2.638e+04  1.201e+06 -1.870e+06
                     -4.889e+05  1.184e+06]
   lagrangian_grad: [-1.380e-02 -1.095e-02 -1.120e-02 -1.120e-02 -1.120e-02
                     -1.120e-02 -1.120e-02]
            constr: [array([ 5.372e+04,  1.973e+05,  9.865e+04,  9.865e+04,
                            9.865e+04,  2.960e+05,  1.973e+05]), array([ 2.580e+04,  2.580e+04, -1.061e+03,  5.266e+04,
                           -1.446e+05, -4.599e+04,  1.513e+05])]
               jac: [array([[ 0.000e+00,  0.000e+00, ...,  0.000e+00,
                             0.000e+00],
                           [ 0.000e+00,  0.000e+00, ...,  0.000e+00,
                             0.000e+00],
                           ...,
                           [ 0.000e+00,  0.000e+00, ...,  0.000e+00,
                             1.000e+00],
                           [ 0.000e+00,  0.000e+00, ..., -1.000e+00,
                             1.000e+00]]), array([[ 1.000e+00,  0.000e+00, ...,  0.000e+00,
                             0.000e+00],
                           [ 0.000e+00,  1.000e+00, ...,  0.000e+00,
                             0.000e+00],
                           ...,
                           [ 0.000e+00,  0.000e+00, ...,  1.000e+00,
                             0.000e+00],
                           [ 0.000e+00,  0.000e+00, ...,  0.000e+00,
                             1.000e+00]])]
       constr_nfev: [0, 0]
       constr_njev: [0, 0]
       constr_nhev: [0, 0]
                 v: [array([-2.638e+04, -1.014e-06, -2.359e+06, -1.184e+06,
                           -1.870e+06, -5.068e-07, -1.014e-06]), array([-6.531e-07, -6.531e-07, -8.801e-07, -5.041e-07,
                           -8.073e-02, -1.763e-06, -2.146e-07])]
            method: tr_interior_point
        optimality: 0.013795645412239533
  constr_violation: 45990.61737782677
    execution_time: 3.144824504852295
         tr_radius: 6039085.662223612
    constr_penalty: 26333.43775024477
 barrier_parameter: 0.1
 barrier_tolerance: 0.1
             niter: 1000

Please report this in the issue tracker at https://github.com/grahamgower/demesdraw/issues
  warnings.warn(
_images/7803bfbd302ba869e69c793bf166acf150b428ad003b6c98ec252ea93b01701a.svg_images/568af45345bfff270c7dc32799c0cdef1abbd9f8047103d6fb93c9103c1e331d.svg

_images/5bbd71f9bca4a066548f6a8b8a08f710b559180ef2c210ff86fc67ff1a885ffb.svg_images/e4b1815b92d9dd0c97ed77ff5037a856d125e44dd2b9d1f8ce06153806ead364.svg

_images/86c4715b6ffd1dda0643d248362505d47d9e3e63c7ae69f108c01b65ee09873e.svg_images/161c37c157c4547a8f3ced327aed343b5c5d53585e1eaa196293dac258af2dfa.svg

_images/68581f950279741e90ce740c95640c13a0bb0b63381288fd7ce608d2b33db8be.svg_images/b1b130795834f3c8f892ebb6c38e08d5fa08391f6c2233d14bbd7502a55e2e7e.svg

_images/f39ae1f90ca00c3567d92483ce0f3ef4a36d5f71590533c524a6d6a6ef744cc4.svg_images/2c1e69e299a857d10c2ba2ba68683029b2ef6f067cd71e28f36a16351163e4b9.svg

_images/ff147d3651ac926b599d7929093a3f225d49b457848f45b04440e28f5ae55b7a.svg_images/ae92d29526a5a14fe8e8f09f1836c2465acc5a11e704379ba427b1ce167ed9fa.svg

_images/3996151be3eff37f7c1a549f508827e42edf95c202bf8463caf30d150c6c7ab3.svg_images/51f78070f172be4a50f105999298dfa6e0cbb18fa14955f9329576adde35c0c1.svg

_images/c58767e8675c9913522f4eeddf6b2d62022c51dcd91afc13742d8a996216e6a6.svg_images/040f835704cf22ddaccace350078f77be8066209cb1c9f5879ba61e8ba1131b2.svg

_images/a59950a74392524d080a0c594a08973659cb71eefffd9a6b21808700fe1bad29.svg_images/ba7eba1c10fcd9485b52e6344b8677a6b17493e3ae40ee6fef3e470c6737f970.svg

_images/e872697d2fc0a614857e61aa0d54c2f3d777fe7cf528c0e7d23246e441126cea.svg_images/7c5e2dbb47f0900d7c14426e1ad4f1699b320b64a88dcdaadc83deba26209c7f.svg

_images/666df78981a2d1ad3c40bd2cce1b6f97f34135cbc9db01271bc0047bcf2a2f46.svg_images/1044c2b7a8b62de54c48f8384d32880341b0c03560fadddfaf7b2da89f0fea47.svg

_images/2e403d9f741d14ad8f17c5334bb14600a37f8b880dc22c73de222f868b0d381c.svg_images/4fe2e9c4e6284300fd9dc0181b8f4069b7449d0c2599615beca9203882e655d3.svg

_images/bceef1bdd2ea026ca0bffa555507278923ebf3ccb4741e89a7de62f81f080451.svg_images/23c65a56599a68e649423c182e118aa8f77cf7a977ca5404964b0a1e27a60e4b.svg