chiark / gitweb /
m.plots: adapt for matplotlib 3.0.
authorVladimír Vondruš <mosra@centrum.cz>
Sun, 7 Jul 2019 20:28:19 +0000 (22:28 +0200)
committerVladimír Vondruš <mosra@centrum.cz>
Sun, 7 Jul 2019 21:22:49 +0000 (23:22 +0200)
3.0 uses a HTTPS URL in the SVG preamble, so the regex needed updating.
That's it. And I was putting this off for over a year, heh.

Well, actually now I have THREE DIFFERENT OUTPUTS to test for --
Python 3.5 and older has slightly different number rounding, while
matplotlib 3.1 adds a CSS property that 3.0 didn't have. Yay this is
annoying as hell.

documentation/test_python/page_plugins/index.html
documentation/test_python/page_plugins/index.rst
documentation/test_python/page_plugins/plots.html [new file with mode: 0644]
documentation/test_python/page_plugins/plots.rst [new file with mode: 0644]
documentation/test_python/test_page.py
plugins/m/plots.py
plugins/m/test/plots/page-22.html [new file with mode: 0644]
plugins/m/test/plots/page-py35.html [new file with mode: 0644]
plugins/m/test/plots/page.html
plugins/m/test/test_plots.py

index 03673af73fb039f46c5091fdb29b5520f5ff05d9..b39085e2a56a64f64f3d46a9d0c54a4253a944c6 100644 (file)
@@ -52,142 +52,6 @@ Yup!</aside>
 <figcaption>Image in a subdir</figcaption>
 </figure>
 <p class="m-transition">~~~ Custom plugins! ~~~</p>
-<p>And now something totally different:</p>
-<style>
-div.m-plot svg { font-family: DejaVu Sans; }
-</style><div class="m-plot">
-<svg viewBox="0 0 576 113.76">
- <defs>
-  <style type="text/css">
-*{stroke-linecap:butt;stroke-linejoin:round;}
-  </style>
- </defs>
- <g id="figure_1">
-  <g id="axes_1">
-   <g id="patch_1">
-    <path d="M 59.365156 69.588125 L 560.62 69.588125 L 560.62 27.757969 L 59.365156 27.757969 z" class="m-background"/>
-   </g>
-   <g id="plot1-value0-0"><title>15.0 meters, i guess?</title>
-    <path clip-path="url(#p2abd2612b1)" d="M 59.365156 29.659339 L 298.057939 29.659339 L 298.057939 46.560413 L 59.365156 46.560413 z" class="m-bar m-success"/>
-   </g>
-   <g id="plot1-value0-1"><title>30.0 meters, i guess?</title>
-    <path clip-path="url(#p2abd2612b1)" d="M 59.365156 50.785681 L 536.750722 50.785681 L 536.750722 67.686754 L 59.365156 67.686754 z" class="m-bar m-success"/>
-   </g>
-   <g id="matplotlib.axis_1">
-    <g id="xtick_1">
-     <g id="line2d_1">
-      <defs>
-       <path d="M 0 0 L 0 3.5" id="m15f0a304df" class="m-line"/>
-      </defs>
-      <g>
-       <use x="59.365156" xlink:href="#m15f0a304df" y="69.588125"/>
-      </g>
-     </g>
-     <g id="text_1">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 59.365156, 84.946406)" x="59.365156" y="84.946406">0</text>
-     </g>
-    </g>
-    <g id="xtick_2">
-     <g id="line2d_2">
-      <g>
-       <use x="138.929417" xlink:href="#m15f0a304df" y="69.588125"/>
-      </g>
-     </g>
-     <g id="text_2">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 138.929417, 84.946406)" x="138.929417" y="84.946406">5</text>
-     </g>
-    </g>
-    <g id="xtick_3">
-     <g id="line2d_3">
-      <g>
-       <use x="218.493678" xlink:href="#m15f0a304df" y="69.588125"/>
-      </g>
-     </g>
-     <g id="text_3">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 218.493678, 84.946406)" x="218.493678" y="84.946406">10</text>
-     </g>
-    </g>
-    <g id="xtick_4">
-     <g id="line2d_4">
-      <g>
-       <use x="298.057939" xlink:href="#m15f0a304df" y="69.588125"/>
-      </g>
-     </g>
-     <g id="text_4">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 298.057939, 84.946406)" x="298.057939" y="84.946406">15</text>
-     </g>
-    </g>
-    <g id="xtick_5">
-     <g id="line2d_5">
-      <g>
-       <use x="377.6222" xlink:href="#m15f0a304df" y="69.588125"/>
-      </g>
-     </g>
-     <g id="text_5">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 377.6222, 84.946406)" x="377.6222" y="84.946406">20</text>
-     </g>
-    </g>
-    <g id="xtick_6">
-     <g id="line2d_6">
-      <g>
-       <use x="457.186461" xlink:href="#m15f0a304df" y="69.588125"/>
-      </g>
-     </g>
-     <g id="text_6">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 457.186461, 84.946406)" x="457.186461" y="84.946406">25</text>
-     </g>
-    </g>
-    <g id="xtick_7">
-     <g id="line2d_7">
-      <g>
-       <use x="536.750722" xlink:href="#m15f0a304df" y="69.588125"/>
-      </g>
-     </g>
-     <g id="text_7">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 536.750722, 84.946406)" x="536.750722" y="84.946406">30</text>
-     </g>
-    </g>
-    <g id="text_8">
-     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 309.992578, 99.592344)" x="309.992578" y="99.592344">meters, i guess?</text>
-    </g>
-   </g>
-   <g id="matplotlib.axis_2">
-    <g id="ytick_1">
-     <g id="line2d_8">
-      <defs>
-       <path d="M 0 0 L -3.5 0" id="mba4ce04b6c" class="m-line"/>
-      </defs>
-      <g>
-       <use x="59.365156" xlink:href="#mba4ce04b6c" y="38.109876"/>
-      </g>
-     </g>
-     <g id="text_9">
-      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 52.365156, 42.289017)" x="52.365156" y="42.289017">First</text>
-     </g>
-    </g>
-    <g id="ytick_2">
-     <g id="line2d_9">
-      <g>
-       <use x="59.365156" xlink:href="#mba4ce04b6c" y="59.236218"/>
-      </g>
-     </g>
-     <g id="text_10">
-      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 52.365156, 63.415358)" x="52.365156" y="63.415358">Second</text>
-     </g>
-    </g>
-   </g>
-   <g id="text_11">
-    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 309.992578, 21.757969)" x="309.992578" y="21.757969">A plot with a single color</text>
-   </g>
-  </g>
- </g>
- <defs>
-  <clipPath id="p2abd2612b1">
-   <rect height="41.830156" width="501.254844" x="59.365156" y="27.757969"/>
-  </clipPath>
- </defs>
-</svg>
-</div>
       </div>
     </div>
   </div>
index c9a6d7f14a099c661d64ae86a2df454bc439f34e..c8098534c111f421a374d199eaf3922eced05675 100644 (file)
@@ -41,20 +41,3 @@ Images!
     Image in a subdir
 
 .. fancy-line:: Custom plugins!
-
-And now something totally different:
-
-.. raw:: html
-
-    <style>
-    div.m-plot svg { font-family: DejaVu Sans; }
-    </style>
-
-.. plot:: A plot with a single color
-    :type: barh
-    :labels:
-        First
-        Second
-    :units: meters, i guess?
-    :values: 15 30
-    :colors: success
diff --git a/documentation/test_python/page_plugins/plots.html b/documentation/test_python/page_plugins/plots.html
new file mode 100644 (file)
index 0000000..f60ed49
--- /dev/null
@@ -0,0 +1,165 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8" />
+  <title>And now something totally different | My Python Project</title>
+  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i%7CSource+Code+Pro:400,400i,600" />
+  <link rel="stylesheet" href="m-dark+documentation.compiled.css" />
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+</head>
+<body>
+<header><nav id="navigation">
+  <div class="m-container">
+    <div class="m-row">
+      <a href="index.html" id="m-navbar-brand" class="m-col-t-8 m-col-m-none m-left-m">My Python Project</a>
+    </div>
+  </div>
+</nav></header>
+<main><article>
+  <div class="m-container m-container-inflatable">
+    <div class="m-row">
+      <div class="m-col-l-10 m-push-l-1">
+        <h1>
+          And now something totally different
+        </h1>
+<style>
+div.m-plot svg { font-family: DejaVu Sans; }
+</style><div class="m-plot">
+<svg viewBox="0 0 576 113.76">
+ <defs>
+  <style type="text/css">
+*{stroke-linecap:butt;stroke-linejoin:round;}
+  </style>
+ </defs>
+ <g id="figure_1">
+  <g id="axes_1">
+   <g id="patch_1">
+    <path d="M 59.365156 69.588125 L 564.12 69.588125 L 564.12 27.757969 L 59.365156 27.757969 z" class="m-background"/>
+   </g>
+   <g id="plot1-value0-0"><title>15.0 meters, i guess?</title>
+    <path clip-path="url(#p88358d5b26)" d="M 59.365156 29.659339 L 299.724606 29.659339 L 299.724606 46.560413 L 59.365156 46.560413 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot1-value0-1"><title>30.0 meters, i guess?</title>
+    <path clip-path="url(#p88358d5b26)" d="M 59.365156 50.785681 L 540.084055 50.785681 L 540.084055 67.686754 L 59.365156 67.686754 z" class="m-bar m-success"/>
+   </g>
+   <g id="matplotlib.axis_1">
+    <g id="xtick_1">
+     <g id="line2d_1">
+      <defs>
+       <path d="M 0 0 L 0 3.5" id="m15f0a304df" class="m-line"/>
+      </defs>
+      <g>
+       <use x="59.365156" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_1">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 59.365156, 84.946406)" x="59.365156" y="84.946406">0</text>
+     </g>
+    </g>
+    <g id="xtick_2">
+     <g id="line2d_2">
+      <g>
+       <use x="139.484973" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_2">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 139.484973, 84.946406)" x="139.484973" y="84.946406">5</text>
+     </g>
+    </g>
+    <g id="xtick_3">
+     <g id="line2d_3">
+      <g>
+       <use x="219.604789" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_3">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 219.604789, 84.946406)" x="219.604789" y="84.946406">10</text>
+     </g>
+    </g>
+    <g id="xtick_4">
+     <g id="line2d_4">
+      <g>
+       <use x="299.724606" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_4">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 299.724606, 84.946406)" x="299.724606" y="84.946406">15</text>
+     </g>
+    </g>
+    <g id="xtick_5">
+     <g id="line2d_5">
+      <g>
+       <use x="379.844422" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_5">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 379.844422, 84.946406)" x="379.844422" y="84.946406">20</text>
+     </g>
+    </g>
+    <g id="xtick_6">
+     <g id="line2d_6">
+      <g>
+       <use x="459.964239" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_6">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 459.964239, 84.946406)" x="459.964239" y="84.946406">25</text>
+     </g>
+    </g>
+    <g id="xtick_7">
+     <g id="line2d_7">
+      <g>
+       <use x="540.084055" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_7">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 540.084055, 84.946406)" x="540.084055" y="84.946406">30</text>
+     </g>
+    </g>
+    <g id="text_8">
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 311.742578, 99.592344)" x="311.742578" y="99.592344">meters, i guess?</text>
+    </g>
+   </g>
+   <g id="matplotlib.axis_2">
+    <g id="ytick_1">
+     <g id="line2d_8">
+      <defs>
+       <path d="M 0 0 L -3.5 0" id="mba4ce04b6c" class="m-line"/>
+      </defs>
+      <g>
+       <use x="59.365156" xlink:href="#mba4ce04b6c" y="38.109876"/>
+      </g>
+     </g>
+     <g id="text_9">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 52.365156, 42.289017)" x="52.365156" y="42.289017">First</text>
+     </g>
+    </g>
+    <g id="ytick_2">
+     <g id="line2d_9">
+      <g>
+       <use x="59.365156" xlink:href="#mba4ce04b6c" y="59.236218"/>
+      </g>
+     </g>
+     <g id="text_10">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 52.365156, 63.415358)" x="52.365156" y="63.415358">Second</text>
+     </g>
+    </g>
+   </g>
+   <g id="text_11">
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 311.742578, 21.757969)" x="311.742578" y="21.757969">A plot with a single color</text>
+   </g>
+  </g>
+ </g>
+ <defs>
+  <clipPath id="p88358d5b26">
+   <rect height="41.830156" width="504.754844" x="59.365156" y="27.757969"/>
+  </clipPath>
+ </defs>
+</svg>
+</div>
+      </div>
+    </div>
+  </div>
+</article></main>
+</body>
+</html>
diff --git a/documentation/test_python/page_plugins/plots.rst b/documentation/test_python/page_plugins/plots.rst
new file mode 100644 (file)
index 0000000..15dba9c
--- /dev/null
@@ -0,0 +1,17 @@
+And now something totally different
+###################################
+
+.. raw:: html
+
+    <style>
+    div.m-plot svg { font-family: DejaVu Sans; }
+    </style>
+
+.. plot:: A plot with a single color
+    :type: barh
+    :labels:
+        First
+        Second
+    :units: meters, i guess?
+    :values: 15 30
+    :colors: success
index 6c6f3475520cb54cca4b2933f2334313bc6ad5af..0dd6a6ecd24b3b99b4a9ef1c40b3df649acacf36 100644 (file)
@@ -22,6 +22,7 @@
 #   DEALINGS IN THE SOFTWARE.
 #
 
+import matplotlib
 import os
 import re
 import subprocess
@@ -79,7 +80,7 @@ class Plugins(BaseTestCase):
                 'fancyline'
             ],
             'PLUGIN_PATHS': ['plugins'],
-            'INPUT_PAGES': ['index.rst', 'dot.rst'],
+            'INPUT_PAGES': ['index.rst', 'dot.rst', 'plots.rst'],
             'M_HTMLSANITY_SMART_QUOTES': True,
             'M_DOT_FONT': 'DejaVu Sans',
             'M_PLOTS_FONT': 'DejaVu Sans',
@@ -90,8 +91,11 @@ class Plugins(BaseTestCase):
         self.assertEqual(*self.actual_expected_contents('index.html'))
         # The output is different for older Graphviz
         self.assertEqual(*self.actual_expected_contents('dot.html', 'dot.html' if LooseVersion(dot_version()) >= LooseVersion("2.40.1") else 'dot-238.html'))
+        # I assume this will be a MASSIVE ANNOYANCE at some point as well so
+        # keeping it separate
+        self.assertEqual(*self.actual_expected_contents('plots.html'))
         self.assertTrue(os.path.exists(os.path.join(self.path, 'output/tiny.png')))
 
         import fancyline
-        self.assertEqual(fancyline.pre_page_call_count, 3)
+        self.assertEqual(fancyline.pre_page_call_count, 4)
         self.assertEqual(fancyline.post_run_call_count, 1)
index 94e0b35d43a0db5a87fd14b3ce3b32dcbf3227de..41505b90a20383282db74803dea80cd927568831 100644 (file)
@@ -73,11 +73,12 @@ style_mapping = {
     'dim': '#cafe09'
 }
 
-# Patch to remove preamble and hardcoded sizes
+# Patch to remove preamble and hardcoded sizes. Matplotlib 2.2 has a http URL
+# while matplotlib 3 has a https URL, check for both.
 _patch_src = re.compile(r"""<\?xml version="1\.0" encoding="utf-8" standalone="no"\?>
 <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1\.1//EN"
   "http://www\.w3\.org/Graphics/SVG/1\.1/DTD/svg11\.dtd">
-<!-- Created with matplotlib \(http://matplotlib.org/\) -->
+<!-- Created with matplotlib \(https?://matplotlib.org/\) -->
 <svg height="\d+(\.\d+)?pt" version="1.1" (?P<viewBox>viewBox="0 0 \d+ \d+(\.\d+)?") width="\d+(\.\d+)?pt" xmlns="http://www\.w3\.org/2000/svg" xmlns:xlink="http://www\.w3\.org/1999/xlink">
 """)
 _patch_dst = r"""<svg \g<viewBox>>
diff --git a/plugins/m/test/plots/page-22.html b/plugins/m/test/plots/page-22.html
new file mode 100644 (file)
index 0000000..e659820
--- /dev/null
@@ -0,0 +1,687 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8" />
+  <title>m.plots | A Pelican Blog</title>
+  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i" />
+  <link rel="stylesheet" href="static/m-dark.css" />
+  <link rel="canonical" href="page.html" />
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+</head>
+<body>
+<header><nav id="navigation">
+  <div class="m-container">
+    <div class="m-row">
+      <a href="./" id="m-navbar-brand" class="m-col-t-9 m-col-m-none m-left-m">A Pelican Blog</a>
+    </div>
+  </div>
+</nav></header>
+<main>
+<article>
+  <div class="m-container m-container-inflatable">
+    <div class="m-row">
+      <div class="m-col-l-10 m-push-l-1">
+        <h1>m.plots</h1>
+<!-- content -->
+<p>Note: the test uses DejaVu Sans instead of Source Sans Pro in order to have
+predictable rendering on the CIs.</p>
+<style>
+div.m-plot svg { font-family: DejaVu Sans; }
+</style><div class="m-plot">
+<svg viewBox="0 0 576 113.76">
+ <defs>
+  <style type="text/css">
+*{stroke-linecap:butt;stroke-linejoin:round;}
+  </style>
+ </defs>
+ <g id="figure_1">
+  <g id="axes_1">
+   <g id="patch_1">
+    <path d="M 59.365156 69.588125 L 560.62 69.588125 L 560.62 27.757969 L 59.365156 27.757969 z" class="m-background"/>
+   </g>
+   <g id="plot1-value0-0"><title>15.0 meters, i guess?</title>
+    <path clip-path="url(#p2abd2612b1)" d="M 59.365156 29.659339 L 298.057939 29.659339 L 298.057939 46.560413 L 59.365156 46.560413 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot1-value0-1"><title>30.0 meters, i guess?</title>
+    <path clip-path="url(#p2abd2612b1)" d="M 59.365156 50.785681 L 536.750722 50.785681 L 536.750722 67.686754 L 59.365156 67.686754 z" class="m-bar m-success"/>
+   </g>
+   <g id="matplotlib.axis_1">
+    <g id="xtick_1">
+     <g id="line2d_1">
+      <defs>
+       <path d="M 0 0 L 0 3.5" id="m15f0a304df" class="m-line"/>
+      </defs>
+      <g>
+       <use x="59.365156" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_1">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 59.365156, 84.946406)" x="59.365156" y="84.946406">0</text>
+     </g>
+    </g>
+    <g id="xtick_2">
+     <g id="line2d_2">
+      <g>
+       <use x="138.929417" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_2">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 138.929417, 84.946406)" x="138.929417" y="84.946406">5</text>
+     </g>
+    </g>
+    <g id="xtick_3">
+     <g id="line2d_3">
+      <g>
+       <use x="218.493678" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_3">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 218.493678, 84.946406)" x="218.493678" y="84.946406">10</text>
+     </g>
+    </g>
+    <g id="xtick_4">
+     <g id="line2d_4">
+      <g>
+       <use x="298.057939" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_4">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 298.057939, 84.946406)" x="298.057939" y="84.946406">15</text>
+     </g>
+    </g>
+    <g id="xtick_5">
+     <g id="line2d_5">
+      <g>
+       <use x="377.6222" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_5">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 377.6222, 84.946406)" x="377.6222" y="84.946406">20</text>
+     </g>
+    </g>
+    <g id="xtick_6">
+     <g id="line2d_6">
+      <g>
+       <use x="457.186461" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_6">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 457.186461, 84.946406)" x="457.186461" y="84.946406">25</text>
+     </g>
+    </g>
+    <g id="xtick_7">
+     <g id="line2d_7">
+      <g>
+       <use x="536.750722" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_7">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 536.750722, 84.946406)" x="536.750722" y="84.946406">30</text>
+     </g>
+    </g>
+    <g id="text_8">
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 309.992578, 99.592344)" x="309.992578" y="99.592344">meters, i guess?</text>
+    </g>
+   </g>
+   <g id="matplotlib.axis_2">
+    <g id="ytick_1">
+     <g id="line2d_8">
+      <defs>
+       <path d="M 0 0 L -3.5 0" id="mba4ce04b6c" class="m-line"/>
+      </defs>
+      <g>
+       <use x="59.365156" xlink:href="#mba4ce04b6c" y="38.109876"/>
+      </g>
+     </g>
+     <g id="text_9">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 52.365156, 42.289017)" x="52.365156" y="42.289017">First</text>
+     </g>
+    </g>
+    <g id="ytick_2">
+     <g id="line2d_9">
+      <g>
+       <use x="59.365156" xlink:href="#mba4ce04b6c" y="59.236218"/>
+      </g>
+     </g>
+     <g id="text_10">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 52.365156, 63.415358)" x="52.365156" y="63.415358">Second</text>
+     </g>
+    </g>
+   </g>
+   <g id="text_11">
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 309.992578, 21.757969)" x="309.992578" y="21.757969">A plot with a single color</text>
+   </g>
+  </g>
+ </g>
+ <defs>
+  <clipPath id="p2abd2612b1">
+   <rect height="41.830156" width="501.254844" x="59.365156" y="27.757969"/>
+  </clipPath>
+ </defs>
+</svg>
+</div>
+<div class="m-plot">
+<svg viewBox="0 0 576 218.16">
+ <defs>
+  <style type="text/css">
+*{stroke-linecap:butt;stroke-linejoin:round;}
+  </style>
+ </defs>
+ <g id="figure_1">
+  <g id="axes_1">
+   <g id="patch_1">
+    <path d="M 68.216719 173.988125 L 558.482422 173.988125 L 558.482422 27.757969 L 68.216719 27.757969 z" class="m-background"/>
+   </g>
+   <g id="plot2-value0-0"><title>3.0 ± 0.1 Mondays</title>
+    <path clip-path="url(#p1198f4ed7e)" d="M 68.216719 34.404794 L 297.849367 34.404794 L 297.849367 72.386653 L 68.216719 72.386653 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot2-value0-1"><title>4.0 ± 2.1 Mondays</title>
+    <path clip-path="url(#p1198f4ed7e)" d="M 68.216719 81.882117 L 374.393583 81.882117 L 374.393583 119.863976 L 68.216719 119.863976 z" class="m-bar m-info"/>
+   </g>
+   <g id="plot2-value0-2"><title>5.0 ± 1.0 Mondays</title>
+    <path clip-path="url(#p1198f4ed7e)" d="M 68.216719 129.359441 L 450.937798 129.359441 L 450.937798 167.3413 L 68.216719 167.3413 z" class="m-bar m-danger"/>
+   </g>
+   <g id="matplotlib.axis_1">
+    <g id="xtick_1">
+     <g id="line2d_1">
+      <defs>
+       <path d="M 0 0 L 0 3.5" id="m7a9c636c50" class="m-line"/>
+      </defs>
+      <g>
+       <use x="68.216719" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_1">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 68.216719, 189.346406)" x="68.216719" y="189.346406">0</text>
+     </g>
+    </g>
+    <g id="xtick_2">
+     <g id="line2d_2">
+      <g>
+       <use x="144.760935" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_2">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 144.760935, 189.346406)" x="144.760935" y="189.346406">1</text>
+     </g>
+    </g>
+    <g id="xtick_3">
+     <g id="line2d_3">
+      <g>
+       <use x="221.305151" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_3">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 221.305151, 189.346406)" x="221.305151" y="189.346406">2</text>
+     </g>
+    </g>
+    <g id="xtick_4">
+     <g id="line2d_4">
+      <g>
+       <use x="297.849367" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_4">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 297.849367, 189.346406)" x="297.849367" y="189.346406">3</text>
+     </g>
+    </g>
+    <g id="xtick_5">
+     <g id="line2d_5">
+      <g>
+       <use x="374.393583" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_5">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 374.393583, 189.346406)" x="374.393583" y="189.346406">4</text>
+     </g>
+    </g>
+    <g id="xtick_6">
+     <g id="line2d_6">
+      <g>
+       <use x="450.937798" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_6">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 450.937798, 189.346406)" x="450.937798" y="189.346406">5</text>
+     </g>
+    </g>
+    <g id="xtick_7">
+     <g id="line2d_7">
+      <g>
+       <use x="527.482014" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_7">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 527.482014, 189.346406)" x="527.482014" y="189.346406">6</text>
+     </g>
+    </g>
+    <g id="text_8">
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 313.34957, 203.992344)" x="313.34957" y="203.992344">Mondays</text>
+    </g>
+   </g>
+   <g id="matplotlib.axis_2">
+    <g id="ytick_1">
+     <g id="line2d_8">
+      <defs>
+       <path d="M 0 0 L -3.5 0" id="m03b20617ea" class="m-line"/>
+      </defs>
+      <g>
+       <use x="68.216719" xlink:href="#m03b20617ea" y="53.395723"/>
+      </g>
+     </g>
+     <g id="text_9">
+      <text class="m-label" transform="translate(19.514688 51.416067)">January</text>
+      <text class="m-label" transform="translate(61.216719 63.733661)"/>
+     </g>
+    </g>
+    <g id="ytick_2">
+     <g id="line2d_9">
+      <g>
+       <use x="68.216719" xlink:href="#m03b20617ea" y="100.873047"/>
+      </g>
+     </g>
+     <g id="text_10">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 61.216719, 105.052188)" x="61.216719" y="105.052188">February</text>
+     </g>
+    </g>
+    <g id="ytick_3">
+     <g id="line2d_10">
+      <g>
+       <use x="68.216719" xlink:href="#m03b20617ea" y="148.35037"/>
+      </g>
+     </g>
+     <g id="text_11">
+      <text class="m-label" transform="translate(27.446719 146.370714)">March</text>
+      <text class="m-label" transform="translate(61.216719 158.688308)"/>
+     </g>
+    </g>
+   </g>
+   <g id="LineCollection_1">
+    <path clip-path="url(#p1198f4ed7e)" d="M 290.194945 53.395723 L 305.503788 53.395723" class="m-error"/>
+    <path clip-path="url(#p1198f4ed7e)" d="M 213.650729 100.873047 L 535.136436 100.873047" class="m-error"/>
+    <path clip-path="url(#p1198f4ed7e)" d="M 374.393583 148.35037 L 527.482014 148.35037" class="m-error"/>
+   </g>
+   <g id="line2d_11">
+    <defs>
+     <path d="M 0 9.375 L 0 -9.375" id="m63fa77ade3" class="m-error"/>
+    </defs>
+    <g clip-path="url(#p1198f4ed7e)">
+     <use x="290.194945" xlink:href="#m63fa77ade3" y="53.395723"/>
+     <use x="213.650729" xlink:href="#m63fa77ade3" y="100.873047"/>
+     <use x="374.393583" xlink:href="#m63fa77ade3" y="148.35037"/>
+    </g>
+   </g>
+   <g id="line2d_12">
+    <g clip-path="url(#p1198f4ed7e)">
+     <use x="305.503788" xlink:href="#m63fa77ade3" y="53.395723"/>
+     <use x="535.136436" xlink:href="#m63fa77ade3" y="100.873047"/>
+     <use x="527.482014" xlink:href="#m63fa77ade3" y="148.35037"/>
+    </g>
+   </g>
+   <g id="text_12">
+    <text class="m-label m-dim" transform="translate(61.216719 52.646105)"/>
+    <text class="m-label m-dim" transform="translate(3.454687 64.963699)">a paradise</text>
+   </g>
+   <g id="text_13">
+    <text class="m-label m-dim" transform="translate(61.216719 147.600752)"/>
+    <text class="m-label m-dim" transform="translate(36.954844 159.918346)">hell!</text>
+   </g>
+   <g id="text_14">
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 313.34957, 21.757969)" x="313.34957" y="21.757969">A plot with separate colors, extra labels, error bars and custom height</text>
+   </g>
+  </g>
+ </g>
+ <defs>
+  <clipPath id="p1198f4ed7e">
+   <rect height="146.230156" width="490.265703" x="68.216719" y="27.757969"/>
+  </clipPath>
+ </defs>
+</svg>
+</div>
+<div class="m-plot">
+<svg viewBox="0 0 576 142.56">
+ <defs>
+  <style type="text/css">
+*{stroke-linecap:butt;stroke-linejoin:round;}
+  </style>
+ </defs>
+ <g id="figure_1">
+  <g id="axes_1">
+   <g id="patch_1">
+    <path d="M 26.561094 98.388125 L 560.62 98.388125 L 560.62 27.757969 L 26.561094 27.757969 z" class="m-background"/>
+   </g>
+   <g id="plot3-value0-0"><title>111.9 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 26.561094 30.96843 L 94.068413 30.96843 L 94.068413 49.313926 L 26.561094 49.313926 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot3-value0-1"><title>74.4 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 26.561094 53.900299 L 71.445317 53.900299 L 71.445317 72.245794 L 26.561094 72.245794 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot3-value0-2"><title>52.1 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 26.561094 76.832168 L 57.992115 76.832168 L 57.992115 95.177663 L 26.561094 95.177663 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot3-value1-0"><title>731.2 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 94.068413 30.96843 L 535.188624 30.96843 L 535.188624 49.313926 L 94.068413 49.313926 z" class="m-bar m-info"/>
+   </g>
+   <g id="plot3-value1-1"><title>226.3 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 71.445317 53.900299 L 207.968161 53.900299 L 207.968161 72.245794 L 71.445317 72.245794 z" class="m-bar m-info"/>
+   </g>
+   <g id="plot3-value1-2"><title>226.0 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 57.992115 76.832168 L 194.333975 76.832168 L 194.333975 95.177663 L 57.992115 95.177663 z" class="m-bar m-info"/>
+   </g>
+   <g id="matplotlib.axis_1">
+    <g id="xtick_1">
+     <g id="line2d_1">
+      <defs>
+       <path d="M 0 0 L 0 3.5" id="m230bf1d664" class="m-line"/>
+      </defs>
+      <g>
+       <use x="26.561094" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_1">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 26.561094, 113.746406)" x="26.561094" y="113.746406">0</text>
+     </g>
+    </g>
+    <g id="xtick_2">
+     <g id="line2d_2">
+      <g>
+       <use x="86.88935" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_2">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 86.88935, 113.746406)" x="86.88935" y="113.746406">100</text>
+     </g>
+    </g>
+    <g id="xtick_3">
+     <g id="line2d_3">
+      <g>
+       <use x="147.217607" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_3">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 147.217607, 113.746406)" x="147.217607" y="113.746406">200</text>
+     </g>
+    </g>
+    <g id="xtick_4">
+     <g id="line2d_4">
+      <g>
+       <use x="207.545863" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_4">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 207.545863, 113.746406)" x="207.545863" y="113.746406">300</text>
+     </g>
+    </g>
+    <g id="xtick_5">
+     <g id="line2d_5">
+      <g>
+       <use x="267.874119" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_5">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 267.874119, 113.746406)" x="267.874119" y="113.746406">400</text>
+     </g>
+    </g>
+    <g id="xtick_6">
+     <g id="line2d_6">
+      <g>
+       <use x="328.202376" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_6">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 328.202376, 113.746406)" x="328.202376" y="113.746406">500</text>
+     </g>
+    </g>
+    <g id="xtick_7">
+     <g id="line2d_7">
+      <g>
+       <use x="388.530632" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_7">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 388.530632, 113.746406)" x="388.530632" y="113.746406">600</text>
+     </g>
+    </g>
+    <g id="xtick_8">
+     <g id="line2d_8">
+      <g>
+       <use x="448.858889" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_8">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 448.858889, 113.746406)" x="448.858889" y="113.746406">700</text>
+     </g>
+    </g>
+    <g id="xtick_9">
+     <g id="line2d_9">
+      <g>
+       <use x="509.187145" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_9">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 509.187145, 113.746406)" x="509.187145" y="113.746406">800</text>
+     </g>
+    </g>
+    <g id="text_10">
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 293.590547, 128.392344)" x="293.590547" y="128.392344">kB</text>
+    </g>
+   </g>
+   <g id="matplotlib.axis_2">
+    <g id="ytick_1">
+     <g id="line2d_10">
+      <defs>
+       <path d="M 0 0 L -3.5 0" id="m1924854559" class="m-line"/>
+      </defs>
+      <g>
+       <use x="26.561094" xlink:href="#m1924854559" y="40.141178"/>
+      </g>
+     </g>
+     <g id="text_11">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 19.561094, 44.320319)" x="19.561094" y="44.320319">A</text>
+     </g>
+    </g>
+    <g id="ytick_2">
+     <g id="line2d_11">
+      <g>
+       <use x="26.561094" xlink:href="#m1924854559" y="63.073047"/>
+      </g>
+     </g>
+     <g id="text_12">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 19.561094, 67.252188)" x="19.561094" y="67.252188">B</text>
+     </g>
+    </g>
+    <g id="ytick_3">
+     <g id="line2d_12">
+      <g>
+       <use x="26.561094" xlink:href="#m1924854559" y="86.004916"/>
+      </g>
+     </g>
+     <g id="text_13">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 19.561094, 90.184056)" x="19.561094" y="90.184056">C</text>
+     </g>
+    </g>
+   </g>
+   <g id="text_14">
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 293.590547, 21.757969)" x="293.590547" y="21.757969">Stacked plot</text>
+   </g>
+  </g>
+ </g>
+ <defs>
+  <clipPath id="pd6a36f6853">
+   <rect height="70.630156" width="534.058906" x="26.561094" y="27.757969"/>
+  </clipPath>
+ </defs>
+</svg>
+</div>
+<div class="m-plot">
+<svg viewBox="0 0 576 113.76">
+ <defs>
+  <style type="text/css">
+*{stroke-linecap:butt;stroke-linejoin:round;}
+  </style>
+ </defs>
+ <g id="figure_1">
+  <g id="axes_1">
+   <g id="patch_1">
+    <path d="M 26.427031 69.588125 L 560.62 69.588125 L 560.62 27.757969 L 26.427031 27.757969 z" class="m-background"/>
+   </g>
+   <g id="plot4-value0-0"><title>111.9 ± 25.0 kB</title>
+    <path clip-path="url(#pf9f5e4e753)" d="M 26.427031 29.659339 L 81.004452 29.659339 L 81.004452 46.560413 L 26.427031 46.560413 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot4-value0-1"><title>74.4 ± 15.3 kB</title>
+    <path clip-path="url(#pf9f5e4e753)" d="M 26.427031 50.785681 L 62.714432 50.785681 L 62.714432 67.686754 L 26.427031 67.686754 z" class="m-bar m-danger"/>
+   </g>
+   <g id="plot4-value1-0"><title>731.2 ± 200.0 kB</title>
+    <path clip-path="url(#pf9f5e4e753)" d="M 81.004452 29.659339 L 437.635464 29.659339 L 437.635464 46.560413 L 81.004452 46.560413 z" class="m-bar m-info"/>
+   </g>
+   <g id="plot4-value1-1"><title>226.3 ± 5.0 kB</title>
+    <path clip-path="url(#pf9f5e4e753)" d="M 62.714432 50.785681 L 173.088608 50.785681 L 173.088608 67.686754 L 62.714432 67.686754 z" class="m-bar m-primary"/>
+   </g>
+   <g id="matplotlib.axis_1">
+    <g id="xtick_1">
+     <g id="line2d_1">
+      <defs>
+       <path d="M 0 0 L 0 3.5" id="med42be8496" class="m-line"/>
+      </defs>
+      <g>
+       <use x="26.427031" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_1">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 26.427031, 84.946406)" x="26.427031" y="84.946406">0</text>
+     </g>
+    </g>
+    <g id="xtick_2">
+     <g id="line2d_2">
+      <g>
+       <use x="123.973807" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_2">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 123.973807, 84.946406)" x="123.973807" y="84.946406">200</text>
+     </g>
+    </g>
+    <g id="xtick_3">
+     <g id="line2d_3">
+      <g>
+       <use x="221.520583" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_3">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 221.520583, 84.946406)" x="221.520583" y="84.946406">400</text>
+     </g>
+    </g>
+    <g id="xtick_4">
+     <g id="line2d_4">
+      <g>
+       <use x="319.067358" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_4">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 319.067358, 84.946406)" x="319.067358" y="84.946406">600</text>
+     </g>
+    </g>
+    <g id="xtick_5">
+     <g id="line2d_5">
+      <g>
+       <use x="416.614134" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_5">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 416.614134, 84.946406)" x="416.614134" y="84.946406">800</text>
+     </g>
+    </g>
+    <g id="xtick_6">
+     <g id="line2d_6">
+      <g>
+       <use x="514.160909" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_6">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 514.160909, 84.946406)" x="514.160909" y="84.946406">1000</text>
+     </g>
+    </g>
+    <g id="text_7">
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 293.523516, 99.592344)" x="293.523516" y="99.592344">kB</text>
+    </g>
+   </g>
+   <g id="matplotlib.axis_2">
+    <g id="ytick_1">
+     <g id="line2d_7">
+      <defs>
+       <path d="M 0 0 L -3.5 0" id="m786f014bed" class="m-line"/>
+      </defs>
+      <g>
+       <use x="26.427031" xlink:href="#m786f014bed" y="38.109876"/>
+      </g>
+     </g>
+     <g id="text_8">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 19.427031, 42.289017)" x="19.427031" y="42.289017">A</text>
+     </g>
+    </g>
+    <g id="ytick_2">
+     <g id="line2d_8">
+      <g>
+       <use x="26.427031" xlink:href="#m786f014bed" y="59.236218"/>
+      </g>
+     </g>
+     <g id="text_9">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 19.427031, 63.415358)" x="19.427031" y="63.415358">B</text>
+     </g>
+    </g>
+   </g>
+   <g id="LineCollection_1">
+    <path clip-path="url(#pf9f5e4e753)" d="M 68.811105 38.109876 L 93.197799 38.109876" class="m-error"/>
+    <path clip-path="url(#pf9f5e4e753)" d="M 55.252103 59.236218 L 70.17676 59.236218" class="m-error"/>
+   </g>
+   <g id="LineCollection_2">
+    <path clip-path="url(#pf9f5e4e753)" d="M 340.088688 38.109876 L 535.18224 38.109876" class="m-error"/>
+    <path clip-path="url(#pf9f5e4e753)" d="M 170.649939 59.236218 L 175.527278 59.236218" class="m-error"/>
+   </g>
+   <g id="line2d_9">
+    <defs>
+     <path d="M 0 5 L 0 -5" id="m1e7a6d6b54" class="m-error"/>
+    </defs>
+    <g clip-path="url(#pf9f5e4e753)">
+     <use x="68.811105" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="55.252103" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    </g>
+   </g>
+   <g id="line2d_10">
+    <g clip-path="url(#pf9f5e4e753)">
+     <use x="93.197799" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="70.17676" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    </g>
+   </g>
+   <g id="line2d_11">
+    <g clip-path="url(#pf9f5e4e753)">
+     <use x="340.088688" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="170.649939" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    </g>
+   </g>
+   <g id="line2d_12">
+    <g clip-path="url(#pf9f5e4e753)">
+     <use x="535.18224" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="175.527278" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    </g>
+   </g>
+   <g id="text_10">
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 293.523516, 21.757969)" x="293.523516" y="21.757969">Stacked plot with errors and full colors</text>
+   </g>
+  </g>
+ </g>
+ <defs>
+  <clipPath id="pf9f5e4e753">
+   <rect height="41.830156" width="534.192969" x="26.427031" y="27.757969"/>
+  </clipPath>
+ </defs>
+</svg>
+</div>
+<!-- /content -->
+      </div>
+    </div>
+  </div>
+</article>
+</main>
+</body>
+</html>
diff --git a/plugins/m/test/plots/page-py35.html b/plugins/m/test/plots/page-py35.html
new file mode 100644 (file)
index 0000000..3e53854
--- /dev/null
@@ -0,0 +1,687 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8" />
+  <title>m.plots | A Pelican Blog</title>
+  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i" />
+  <link rel="stylesheet" href="static/m-dark.css" />
+  <link rel="canonical" href="page.html" />
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+</head>
+<body>
+<header><nav id="navigation">
+  <div class="m-container">
+    <div class="m-row">
+      <a href="./" id="m-navbar-brand" class="m-col-t-9 m-col-m-none m-left-m">A Pelican Blog</a>
+    </div>
+  </div>
+</nav></header>
+<main>
+<article>
+  <div class="m-container m-container-inflatable">
+    <div class="m-row">
+      <div class="m-col-l-10 m-push-l-1">
+        <h1>m.plots</h1>
+<!-- content -->
+<p>Note: the test uses DejaVu Sans instead of Source Sans Pro in order to have
+predictable rendering on the CIs.</p>
+<style>
+div.m-plot svg { font-family: DejaVu Sans; }
+</style><div class="m-plot">
+<svg viewBox="0 0 576 113.76">
+ <defs>
+  <style type="text/css">
+*{stroke-linecap:butt;stroke-linejoin:round;}
+  </style>
+ </defs>
+ <g id="figure_1">
+  <g id="axes_1">
+   <g id="patch_1">
+    <path d="M 59.365156 69.588125 L 560.62 69.588125 L 560.62 27.757969 L 59.365156 27.757969 z" class="m-background"/>
+   </g>
+   <g id="plot1-value0-0"><title>15.0 meters, i guess?</title>
+    <path clip-path="url(#p2abd2612b1)" d="M 59.365156 29.659339 L 298.057939 29.659339 L 298.057939 46.560413 L 59.365156 46.560413 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot1-value0-1"><title>30.0 meters, i guess?</title>
+    <path clip-path="url(#p2abd2612b1)" d="M 59.365156 50.785681 L 536.750722 50.785681 L 536.750722 67.686754 L 59.365156 67.686754 z" class="m-bar m-success"/>
+   </g>
+   <g id="matplotlib.axis_1">
+    <g id="xtick_1">
+     <g id="line2d_1">
+      <defs>
+       <path d="M 0 0 L 0 3.5" id="m15f0a304df" class="m-line"/>
+      </defs>
+      <g>
+       <use x="59.365156" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_1">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 59.365156, 84.946406)" x="59.365156" y="84.946406">0</text>
+     </g>
+    </g>
+    <g id="xtick_2">
+     <g id="line2d_2">
+      <g>
+       <use x="138.929417" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_2">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 138.929417, 84.946406)" x="138.929417" y="84.946406">5</text>
+     </g>
+    </g>
+    <g id="xtick_3">
+     <g id="line2d_3">
+      <g>
+       <use x="218.493678" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_3">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 218.493678, 84.946406)" x="218.493678" y="84.946406">10</text>
+     </g>
+    </g>
+    <g id="xtick_4">
+     <g id="line2d_4">
+      <g>
+       <use x="298.057939" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_4">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 298.057939, 84.946406)" x="298.057939" y="84.946406">15</text>
+     </g>
+    </g>
+    <g id="xtick_5">
+     <g id="line2d_5">
+      <g>
+       <use x="377.6222" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_5">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 377.6222, 84.946406)" x="377.6222" y="84.946406">20</text>
+     </g>
+    </g>
+    <g id="xtick_6">
+     <g id="line2d_6">
+      <g>
+       <use x="457.186461" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_6">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 457.186461, 84.946406)" x="457.186461" y="84.946406">25</text>
+     </g>
+    </g>
+    <g id="xtick_7">
+     <g id="line2d_7">
+      <g>
+       <use x="536.750722" xlink:href="#m15f0a304df" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_7">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 536.750722, 84.946406)" x="536.750722" y="84.946406">30</text>
+     </g>
+    </g>
+    <g id="text_8">
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 309.992578, 99.592344)" x="309.992578" y="99.592344">meters, i guess?</text>
+    </g>
+   </g>
+   <g id="matplotlib.axis_2">
+    <g id="ytick_1">
+     <g id="line2d_8">
+      <defs>
+       <path d="M 0 0 L -3.5 0" id="mba4ce04b6c" class="m-line"/>
+      </defs>
+      <g>
+       <use x="59.365156" xlink:href="#mba4ce04b6c" y="38.109876"/>
+      </g>
+     </g>
+     <g id="text_9">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 52.365156, 42.289017)" x="52.365156" y="42.289017">First</text>
+     </g>
+    </g>
+    <g id="ytick_2">
+     <g id="line2d_9">
+      <g>
+       <use x="59.365156" xlink:href="#mba4ce04b6c" y="59.236218"/>
+      </g>
+     </g>
+     <g id="text_10">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 52.365156, 63.415358)" x="52.365156" y="63.415358">Second</text>
+     </g>
+    </g>
+   </g>
+   <g id="text_11">
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 309.992578, 21.757969)" x="309.992578" y="21.757969">A plot with a single color</text>
+   </g>
+  </g>
+ </g>
+ <defs>
+  <clipPath id="p2abd2612b1">
+   <rect height="41.830156" width="501.254844" x="59.365156" y="27.757969"/>
+  </clipPath>
+ </defs>
+</svg>
+</div>
+<div class="m-plot">
+<svg viewBox="0 0 576 218.16">
+ <defs>
+  <style type="text/css">
+*{stroke-linecap:butt;stroke-linejoin:round;}
+  </style>
+ </defs>
+ <g id="figure_1">
+  <g id="axes_1">
+   <g id="patch_1">
+    <path d="M 76.642031 173.988125 L 558.482422 173.988125 L 558.482422 27.757969 L 76.642031 27.757969 z" class="m-background"/>
+   </g>
+   <g id="plot2-value0-0"><title>3.0 ± 0.1 Mondays</title>
+    <path clip-path="url(#p284e84a89d)" d="M 76.642031 34.404794 L 302.328397 34.404794 L 302.328397 72.386653 L 76.642031 72.386653 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot2-value0-1"><title>4.0 ± 2.1 Mondays</title>
+    <path clip-path="url(#p284e84a89d)" d="M 76.642031 81.882117 L 377.557185 81.882117 L 377.557185 119.863976 L 76.642031 119.863976 z" class="m-bar m-info"/>
+   </g>
+   <g id="plot2-value0-2"><title>5.0 ± 1.0 Mondays</title>
+    <path clip-path="url(#p284e84a89d)" d="M 76.642031 129.359441 L 452.785974 129.359441 L 452.785974 167.3413 L 76.642031 167.3413 z" class="m-bar m-danger"/>
+   </g>
+   <g id="matplotlib.axis_1">
+    <g id="xtick_1">
+     <g id="line2d_1">
+      <defs>
+       <path d="M 0 0 L 0 3.5" id="m7a9c636c50" class="m-line"/>
+      </defs>
+      <g>
+       <use x="76.642031" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_1">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 76.642031, 189.346406)" x="76.642031" y="189.346406">0</text>
+     </g>
+    </g>
+    <g id="xtick_2">
+     <g id="line2d_2">
+      <g>
+       <use x="151.87082" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_2">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 151.87082, 189.346406)" x="151.87082" y="189.346406">1</text>
+     </g>
+    </g>
+    <g id="xtick_3">
+     <g id="line2d_3">
+      <g>
+       <use x="227.099608" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_3">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 227.099608, 189.346406)" x="227.099608" y="189.346406">2</text>
+     </g>
+    </g>
+    <g id="xtick_4">
+     <g id="line2d_4">
+      <g>
+       <use x="302.328397" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_4">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 302.328397, 189.346406)" x="302.328397" y="189.346406">3</text>
+     </g>
+    </g>
+    <g id="xtick_5">
+     <g id="line2d_5">
+      <g>
+       <use x="377.557185" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_5">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 377.557185, 189.346406)" x="377.557185" y="189.346406">4</text>
+     </g>
+    </g>
+    <g id="xtick_6">
+     <g id="line2d_6">
+      <g>
+       <use x="452.785974" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_6">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 452.785974, 189.346406)" x="452.785974" y="189.346406">5</text>
+     </g>
+    </g>
+    <g id="xtick_7">
+     <g id="line2d_7">
+      <g>
+       <use x="528.014763" xlink:href="#m7a9c636c50" y="173.988125"/>
+      </g>
+     </g>
+     <g id="text_7">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 528.014763, 189.346406)" x="528.014763" y="189.346406">6</text>
+     </g>
+    </g>
+    <g id="text_8">
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 317.562227, 203.992344)" x="317.562227" y="203.992344">Mondays</text>
+    </g>
+   </g>
+   <g id="matplotlib.axis_2">
+    <g id="ytick_1">
+     <g id="line2d_8">
+      <defs>
+       <path d="M 0 0 L -3.5 0" id="m03b20617ea" class="m-line"/>
+      </defs>
+      <g>
+       <use x="76.642031" xlink:href="#m03b20617ea" y="53.395723"/>
+      </g>
+     </g>
+     <g id="text_9">
+      <text class="m-label" transform="translate(27.94 51.416067)">January</text>
+      <text class="m-label" transform="translate(69.642031 63.733661)"/>
+     </g>
+    </g>
+    <g id="ytick_2">
+     <g id="line2d_9">
+      <g>
+       <use x="76.642031" xlink:href="#m03b20617ea" y="100.873047"/>
+      </g>
+     </g>
+     <g id="text_10">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 69.642031, 105.052188)" x="69.642031" y="105.052188">February</text>
+     </g>
+    </g>
+    <g id="ytick_3">
+     <g id="line2d_10">
+      <g>
+       <use x="76.642031" xlink:href="#m03b20617ea" y="148.35037"/>
+      </g>
+     </g>
+     <g id="text_11">
+      <text class="m-label" transform="translate(35.872031 146.370714)">March</text>
+      <text class="m-label" transform="translate(69.642031 158.688308)"/>
+     </g>
+    </g>
+   </g>
+   <g id="LineCollection_1">
+    <path clip-path="url(#p284e84a89d)" d="M 294.805518 53.395723 L 309.851276 53.395723" class="m-error"/>
+    <path clip-path="url(#p284e84a89d)" d="M 219.576729 100.873047 L 535.537641 100.873047" class="m-error"/>
+    <path clip-path="url(#p284e84a89d)" d="M 377.557185 148.35037 L 528.014763 148.35037" class="m-error"/>
+   </g>
+   <g id="line2d_11">
+    <defs>
+     <path d="M 0 9.375 L 0 -9.375" id="m63fa77ade3" class="m-error"/>
+    </defs>
+    <g clip-path="url(#p284e84a89d)">
+     <use x="294.805518" xlink:href="#m63fa77ade3" y="53.395723"/>
+     <use x="219.576729" xlink:href="#m63fa77ade3" y="100.873047"/>
+     <use x="377.557185" xlink:href="#m63fa77ade3" y="148.35037"/>
+    </g>
+   </g>
+   <g id="line2d_12">
+    <g clip-path="url(#p284e84a89d)">
+     <use x="309.851276" xlink:href="#m63fa77ade3" y="53.395723"/>
+     <use x="535.537641" xlink:href="#m63fa77ade3" y="100.873047"/>
+     <use x="528.014763" xlink:href="#m63fa77ade3" y="148.35037"/>
+    </g>
+   </g>
+   <g id="text_12">
+    <text class="m-label m-dim" transform="translate(69.642031 52.646105)"/>
+    <text class="m-label m-dim" transform="translate(11.88 64.963699)">a paradise</text>
+   </g>
+   <g id="text_13">
+    <text class="m-label m-dim" transform="translate(69.642031 147.600752)"/>
+    <text class="m-label m-dim" transform="translate(45.380156 159.918346)">hell!</text>
+   </g>
+   <g id="text_14">
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 317.562227, 21.757969)" x="317.562227" y="21.757969">A plot with separate colors, extra labels, error bars and custom height</text>
+   </g>
+  </g>
+ </g>
+ <defs>
+  <clipPath id="p284e84a89d">
+   <rect height="146.230156" width="481.840391" x="76.642031" y="27.757969"/>
+  </clipPath>
+ </defs>
+</svg>
+</div>
+<div class="m-plot">
+<svg viewBox="0 0 576 142.56">
+ <defs>
+  <style type="text/css">
+*{stroke-linecap:butt;stroke-linejoin:round;}
+  </style>
+ </defs>
+ <g id="figure_1">
+  <g id="axes_1">
+   <g id="patch_1">
+    <path d="M 26.561094 98.388125 L 560.62 98.388125 L 560.62 27.757969 L 26.561094 27.757969 z" class="m-background"/>
+   </g>
+   <g id="plot3-value0-0"><title>111.9 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 26.561094 30.96843 L 94.068413 30.96843 L 94.068413 49.313926 L 26.561094 49.313926 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot3-value0-1"><title>74.4 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 26.561094 53.900299 L 71.445317 53.900299 L 71.445317 72.245794 L 26.561094 72.245794 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot3-value0-2"><title>52.1 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 26.561094 76.832168 L 57.992115 76.832168 L 57.992115 95.177663 L 26.561094 95.177663 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot3-value1-0"><title>731.2 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 94.068413 30.96843 L 535.188624 30.96843 L 535.188624 49.313926 L 94.068413 49.313926 z" class="m-bar m-info"/>
+   </g>
+   <g id="plot3-value1-1"><title>226.3 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 71.445317 53.900299 L 207.968161 53.900299 L 207.968161 72.245794 L 71.445317 72.245794 z" class="m-bar m-info"/>
+   </g>
+   <g id="plot3-value1-2"><title>226.0 kB</title>
+    <path clip-path="url(#pd6a36f6853)" d="M 57.992115 76.832168 L 194.333975 76.832168 L 194.333975 95.177663 L 57.992115 95.177663 z" class="m-bar m-info"/>
+   </g>
+   <g id="matplotlib.axis_1">
+    <g id="xtick_1">
+     <g id="line2d_1">
+      <defs>
+       <path d="M 0 0 L 0 3.5" id="m230bf1d664" class="m-line"/>
+      </defs>
+      <g>
+       <use x="26.561094" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_1">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 26.561094, 113.746406)" x="26.561094" y="113.746406">0</text>
+     </g>
+    </g>
+    <g id="xtick_2">
+     <g id="line2d_2">
+      <g>
+       <use x="86.88935" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_2">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 86.88935, 113.746406)" x="86.88935" y="113.746406">100</text>
+     </g>
+    </g>
+    <g id="xtick_3">
+     <g id="line2d_3">
+      <g>
+       <use x="147.217607" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_3">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 147.217607, 113.746406)" x="147.217607" y="113.746406">200</text>
+     </g>
+    </g>
+    <g id="xtick_4">
+     <g id="line2d_4">
+      <g>
+       <use x="207.545863" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_4">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 207.545863, 113.746406)" x="207.545863" y="113.746406">300</text>
+     </g>
+    </g>
+    <g id="xtick_5">
+     <g id="line2d_5">
+      <g>
+       <use x="267.874119" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_5">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 267.874119, 113.746406)" x="267.874119" y="113.746406">400</text>
+     </g>
+    </g>
+    <g id="xtick_6">
+     <g id="line2d_6">
+      <g>
+       <use x="328.202376" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_6">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 328.202376, 113.746406)" x="328.202376" y="113.746406">500</text>
+     </g>
+    </g>
+    <g id="xtick_7">
+     <g id="line2d_7">
+      <g>
+       <use x="388.530632" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_7">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 388.530632, 113.746406)" x="388.530632" y="113.746406">600</text>
+     </g>
+    </g>
+    <g id="xtick_8">
+     <g id="line2d_8">
+      <g>
+       <use x="448.858889" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_8">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 448.858889, 113.746406)" x="448.858889" y="113.746406">700</text>
+     </g>
+    </g>
+    <g id="xtick_9">
+     <g id="line2d_9">
+      <g>
+       <use x="509.187145" xlink:href="#m230bf1d664" y="98.388125"/>
+      </g>
+     </g>
+     <g id="text_9">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 509.187145, 113.746406)" x="509.187145" y="113.746406">800</text>
+     </g>
+    </g>
+    <g id="text_10">
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 293.590547, 128.392344)" x="293.590547" y="128.392344">kB</text>
+    </g>
+   </g>
+   <g id="matplotlib.axis_2">
+    <g id="ytick_1">
+     <g id="line2d_10">
+      <defs>
+       <path d="M 0 0 L -3.5 0" id="m1924854559" class="m-line"/>
+      </defs>
+      <g>
+       <use x="26.561094" xlink:href="#m1924854559" y="40.141178"/>
+      </g>
+     </g>
+     <g id="text_11">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 19.561094, 44.320319)" x="19.561094" y="44.320319">A</text>
+     </g>
+    </g>
+    <g id="ytick_2">
+     <g id="line2d_11">
+      <g>
+       <use x="26.561094" xlink:href="#m1924854559" y="63.073047"/>
+      </g>
+     </g>
+     <g id="text_12">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 19.561094, 67.252188)" x="19.561094" y="67.252188">B</text>
+     </g>
+    </g>
+    <g id="ytick_3">
+     <g id="line2d_12">
+      <g>
+       <use x="26.561094" xlink:href="#m1924854559" y="86.004916"/>
+      </g>
+     </g>
+     <g id="text_13">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 19.561094, 90.184056)" x="19.561094" y="90.184056">C</text>
+     </g>
+    </g>
+   </g>
+   <g id="text_14">
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 293.590547, 21.757969)" x="293.590547" y="21.757969">Stacked plot</text>
+   </g>
+  </g>
+ </g>
+ <defs>
+  <clipPath id="pd6a36f6853">
+   <rect height="70.630156" width="534.058906" x="26.561094" y="27.757969"/>
+  </clipPath>
+ </defs>
+</svg>
+</div>
+<div class="m-plot">
+<svg viewBox="0 0 576 113.76">
+ <defs>
+  <style type="text/css">
+*{stroke-linecap:butt;stroke-linejoin:round;}
+  </style>
+ </defs>
+ <g id="figure_1">
+  <g id="axes_1">
+   <g id="patch_1">
+    <path d="M 26.427031 69.588125 L 560.62 69.588125 L 560.62 27.757969 L 26.427031 27.757969 z" class="m-background"/>
+   </g>
+   <g id="plot4-value0-0"><title>111.9 ± 25.0 kB</title>
+    <path clip-path="url(#pf9f5e4e753)" d="M 26.427031 29.659339 L 81.004452 29.659339 L 81.004452 46.560413 L 26.427031 46.560413 z" class="m-bar m-success"/>
+   </g>
+   <g id="plot4-value0-1"><title>74.4 ± 15.3 kB</title>
+    <path clip-path="url(#pf9f5e4e753)" d="M 26.427031 50.785681 L 62.714432 50.785681 L 62.714432 67.686754 L 26.427031 67.686754 z" class="m-bar m-danger"/>
+   </g>
+   <g id="plot4-value1-0"><title>731.2 ± 200.0 kB</title>
+    <path clip-path="url(#pf9f5e4e753)" d="M 81.004452 29.659339 L 437.635464 29.659339 L 437.635464 46.560413 L 81.004452 46.560413 z" class="m-bar m-info"/>
+   </g>
+   <g id="plot4-value1-1"><title>226.3 ± 5.0 kB</title>
+    <path clip-path="url(#pf9f5e4e753)" d="M 62.714432 50.785681 L 173.088608 50.785681 L 173.088608 67.686754 L 62.714432 67.686754 z" class="m-bar m-primary"/>
+   </g>
+   <g id="matplotlib.axis_1">
+    <g id="xtick_1">
+     <g id="line2d_1">
+      <defs>
+       <path d="M 0 0 L 0 3.5" id="med42be8496" class="m-line"/>
+      </defs>
+      <g>
+       <use x="26.427031" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_1">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 26.427031, 84.946406)" x="26.427031" y="84.946406">0</text>
+     </g>
+    </g>
+    <g id="xtick_2">
+     <g id="line2d_2">
+      <g>
+       <use x="123.973807" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_2">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 123.973807, 84.946406)" x="123.973807" y="84.946406">200</text>
+     </g>
+    </g>
+    <g id="xtick_3">
+     <g id="line2d_3">
+      <g>
+       <use x="221.520583" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_3">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 221.520583, 84.946406)" x="221.520583" y="84.946406">400</text>
+     </g>
+    </g>
+    <g id="xtick_4">
+     <g id="line2d_4">
+      <g>
+       <use x="319.067358" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_4">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 319.067358, 84.946406)" x="319.067358" y="84.946406">600</text>
+     </g>
+    </g>
+    <g id="xtick_5">
+     <g id="line2d_5">
+      <g>
+       <use x="416.614134" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_5">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 416.614134, 84.946406)" x="416.614134" y="84.946406">800</text>
+     </g>
+    </g>
+    <g id="xtick_6">
+     <g id="line2d_6">
+      <g>
+       <use x="514.160909" xlink:href="#med42be8496" y="69.588125"/>
+      </g>
+     </g>
+     <g id="text_6">
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 514.160909, 84.946406)" x="514.160909" y="84.946406">1000</text>
+     </g>
+    </g>
+    <g id="text_7">
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 293.523516, 99.592344)" x="293.523516" y="99.592344">kB</text>
+    </g>
+   </g>
+   <g id="matplotlib.axis_2">
+    <g id="ytick_1">
+     <g id="line2d_7">
+      <defs>
+       <path d="M 0 0 L -3.5 0" id="m786f014bed" class="m-line"/>
+      </defs>
+      <g>
+       <use x="26.427031" xlink:href="#m786f014bed" y="38.109876"/>
+      </g>
+     </g>
+     <g id="text_8">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 19.427031, 42.289017)" x="19.427031" y="42.289017">A</text>
+     </g>
+    </g>
+    <g id="ytick_2">
+     <g id="line2d_8">
+      <g>
+       <use x="26.427031" xlink:href="#m786f014bed" y="59.236218"/>
+      </g>
+     </g>
+     <g id="text_9">
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 19.427031, 63.415358)" x="19.427031" y="63.415358">B</text>
+     </g>
+    </g>
+   </g>
+   <g id="LineCollection_1">
+    <path clip-path="url(#pf9f5e4e753)" d="M 68.811105 38.109876 L 93.197799 38.109876" class="m-error"/>
+    <path clip-path="url(#pf9f5e4e753)" d="M 55.252103 59.236218 L 70.17676 59.236218" class="m-error"/>
+   </g>
+   <g id="LineCollection_2">
+    <path clip-path="url(#pf9f5e4e753)" d="M 340.088688 38.109876 L 535.18224 38.109876" class="m-error"/>
+    <path clip-path="url(#pf9f5e4e753)" d="M 170.649939 59.236218 L 175.527278 59.236218" class="m-error"/>
+   </g>
+   <g id="line2d_9">
+    <defs>
+     <path d="M 0 5 L 0 -5" id="m1e7a6d6b54" class="m-error"/>
+    </defs>
+    <g clip-path="url(#pf9f5e4e753)">
+     <use x="68.811105" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="55.252103" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    </g>
+   </g>
+   <g id="line2d_10">
+    <g clip-path="url(#pf9f5e4e753)">
+     <use x="93.197799" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="70.17676" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    </g>
+   </g>
+   <g id="line2d_11">
+    <g clip-path="url(#pf9f5e4e753)">
+     <use x="340.088688" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="170.649939" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    </g>
+   </g>
+   <g id="line2d_12">
+    <g clip-path="url(#pf9f5e4e753)">
+     <use x="535.18224" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="175.527278" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    </g>
+   </g>
+   <g id="text_10">
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 293.523516, 21.757969)" x="293.523516" y="21.757969">Stacked plot with errors and full colors</text>
+   </g>
+  </g>
+ </g>
+ <defs>
+  <clipPath id="pf9f5e4e753">
+   <rect height="41.830156" width="534.192969" x="26.427031" y="27.757969"/>
+  </clipPath>
+ </defs>
+</svg>
+</div>
+<!-- /content -->
+      </div>
+    </div>
+  </div>
+</article>
+</main>
+</body>
+</html>
index e6598208de4feb2e2f1a29ac31bae3a9334f4981..6939e60dc5805f3450bd8aeabe9943f2ffd1637b 100644 (file)
@@ -37,13 +37,13 @@ div.m-plot svg { font-family: DejaVu Sans; }
  <g id="figure_1">
   <g id="axes_1">
    <g id="patch_1">
-    <path d="M 59.365156 69.588125 L 560.62 69.588125 L 560.62 27.757969 L 59.365156 27.757969 z" class="m-background"/>
+    <path d="M 59.365156 69.588125 L 564.12 69.588125 L 564.12 27.757969 L 59.365156 27.757969 z" class="m-background"/>
    </g>
    <g id="plot1-value0-0"><title>15.0 meters, i guess?</title>
-    <path clip-path="url(#p2abd2612b1)" d="M 59.365156 29.659339 L 298.057939 29.659339 L 298.057939 46.560413 L 59.365156 46.560413 z" class="m-bar m-success"/>
+    <path clip-path="url(#p88358d5b26)" d="M 59.365156 29.659339 L 299.724606 29.659339 L 299.724606 46.560413 L 59.365156 46.560413 z" class="m-bar m-success"/>
    </g>
    <g id="plot1-value0-1"><title>30.0 meters, i guess?</title>
-    <path clip-path="url(#p2abd2612b1)" d="M 59.365156 50.785681 L 536.750722 50.785681 L 536.750722 67.686754 L 59.365156 67.686754 z" class="m-bar m-success"/>
+    <path clip-path="url(#p88358d5b26)" d="M 59.365156 50.785681 L 540.084055 50.785681 L 540.084055 67.686754 L 59.365156 67.686754 z" class="m-bar m-success"/>
    </g>
    <g id="matplotlib.axis_1">
     <g id="xtick_1">
@@ -62,65 +62,65 @@ div.m-plot svg { font-family: DejaVu Sans; }
     <g id="xtick_2">
      <g id="line2d_2">
       <g>
-       <use x="138.929417" xlink:href="#m15f0a304df" y="69.588125"/>
+       <use x="139.484973" xlink:href="#m15f0a304df" y="69.588125"/>
       </g>
      </g>
      <g id="text_2">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 138.929417, 84.946406)" x="138.929417" y="84.946406">5</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 139.484973, 84.946406)" x="139.484973" y="84.946406">5</text>
      </g>
     </g>
     <g id="xtick_3">
      <g id="line2d_3">
       <g>
-       <use x="218.493678" xlink:href="#m15f0a304df" y="69.588125"/>
+       <use x="219.604789" xlink:href="#m15f0a304df" y="69.588125"/>
       </g>
      </g>
      <g id="text_3">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 218.493678, 84.946406)" x="218.493678" y="84.946406">10</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 219.604789, 84.946406)" x="219.604789" y="84.946406">10</text>
      </g>
     </g>
     <g id="xtick_4">
      <g id="line2d_4">
       <g>
-       <use x="298.057939" xlink:href="#m15f0a304df" y="69.588125"/>
+       <use x="299.724606" xlink:href="#m15f0a304df" y="69.588125"/>
       </g>
      </g>
      <g id="text_4">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 298.057939, 84.946406)" x="298.057939" y="84.946406">15</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 299.724606, 84.946406)" x="299.724606" y="84.946406">15</text>
      </g>
     </g>
     <g id="xtick_5">
      <g id="line2d_5">
       <g>
-       <use x="377.6222" xlink:href="#m15f0a304df" y="69.588125"/>
+       <use x="379.844422" xlink:href="#m15f0a304df" y="69.588125"/>
       </g>
      </g>
      <g id="text_5">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 377.6222, 84.946406)" x="377.6222" y="84.946406">20</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 379.844422, 84.946406)" x="379.844422" y="84.946406">20</text>
      </g>
     </g>
     <g id="xtick_6">
      <g id="line2d_6">
       <g>
-       <use x="457.186461" xlink:href="#m15f0a304df" y="69.588125"/>
+       <use x="459.964239" xlink:href="#m15f0a304df" y="69.588125"/>
       </g>
      </g>
      <g id="text_6">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 457.186461, 84.946406)" x="457.186461" y="84.946406">25</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 459.964239, 84.946406)" x="459.964239" y="84.946406">25</text>
      </g>
     </g>
     <g id="xtick_7">
      <g id="line2d_7">
       <g>
-       <use x="536.750722" xlink:href="#m15f0a304df" y="69.588125"/>
+       <use x="540.084055" xlink:href="#m15f0a304df" y="69.588125"/>
       </g>
      </g>
      <g id="text_7">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 536.750722, 84.946406)" x="536.750722" y="84.946406">30</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 540.084055, 84.946406)" x="540.084055" y="84.946406">30</text>
      </g>
     </g>
     <g id="text_8">
-     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 309.992578, 99.592344)" x="309.992578" y="99.592344">meters, i guess?</text>
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 311.742578, 99.592344)" x="311.742578" y="99.592344">meters, i guess?</text>
     </g>
    </g>
    <g id="matplotlib.axis_2">
@@ -149,13 +149,13 @@ div.m-plot svg { font-family: DejaVu Sans; }
     </g>
    </g>
    <g id="text_11">
-    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 309.992578, 21.757969)" x="309.992578" y="21.757969">A plot with a single color</text>
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 311.742578, 21.757969)" x="311.742578" y="21.757969">A plot with a single color</text>
    </g>
   </g>
  </g>
  <defs>
-  <clipPath id="p2abd2612b1">
-   <rect height="41.830156" width="501.254844" x="59.365156" y="27.757969"/>
+  <clipPath id="p88358d5b26">
+   <rect height="41.830156" width="504.754844" x="59.365156" y="27.757969"/>
   </clipPath>
  </defs>
 </svg>
@@ -170,16 +170,16 @@ div.m-plot svg { font-family: DejaVu Sans; }
  <g id="figure_1">
   <g id="axes_1">
    <g id="patch_1">
-    <path d="M 68.216719 173.988125 L 558.482422 173.988125 L 558.482422 27.757969 L 68.216719 27.757969 z" class="m-background"/>
+    <path d="M 76.642031 173.988125 L 558.482422 173.988125 L 558.482422 27.757969 L 76.642031 27.757969 z" class="m-background"/>
    </g>
    <g id="plot2-value0-0"><title>3.0 ± 0.1 Mondays</title>
-    <path clip-path="url(#p1198f4ed7e)" d="M 68.216719 34.404794 L 297.849367 34.404794 L 297.849367 72.386653 L 68.216719 72.386653 z" class="m-bar m-success"/>
+    <path clip-path="url(#p284e84a89d)" d="M 76.642031 34.404794 L 302.328397 34.404794 L 302.328397 72.386653 L 76.642031 72.386653 z" class="m-bar m-success"/>
    </g>
    <g id="plot2-value0-1"><title>4.0 ± 2.1 Mondays</title>
-    <path clip-path="url(#p1198f4ed7e)" d="M 68.216719 81.882117 L 374.393583 81.882117 L 374.393583 119.863976 L 68.216719 119.863976 z" class="m-bar m-info"/>
+    <path clip-path="url(#p284e84a89d)" d="M 76.642031 81.882117 L 377.557185 81.882117 L 377.557185 119.863976 L 76.642031 119.863976 z" class="m-bar m-info"/>
    </g>
    <g id="plot2-value0-2"><title>5.0 ± 1.0 Mondays</title>
-    <path clip-path="url(#p1198f4ed7e)" d="M 68.216719 129.359441 L 450.937798 129.359441 L 450.937798 167.3413 L 68.216719 167.3413 z" class="m-bar m-danger"/>
+    <path clip-path="url(#p284e84a89d)" d="M 76.642031 129.359441 L 452.785974 129.359441 L 452.785974 167.3413 L 76.642031 167.3413 z" class="m-bar m-danger"/>
    </g>
    <g id="matplotlib.axis_1">
     <g id="xtick_1">
@@ -188,75 +188,75 @@ div.m-plot svg { font-family: DejaVu Sans; }
        <path d="M 0 0 L 0 3.5" id="m7a9c636c50" class="m-line"/>
       </defs>
       <g>
-       <use x="68.216719" xlink:href="#m7a9c636c50" y="173.988125"/>
+       <use x="76.642031" xlink:href="#m7a9c636c50" y="173.988125"/>
       </g>
      </g>
      <g id="text_1">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 68.216719, 189.346406)" x="68.216719" y="189.346406">0</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 76.642031, 189.346406)" x="76.642031" y="189.346406">0</text>
      </g>
     </g>
     <g id="xtick_2">
      <g id="line2d_2">
       <g>
-       <use x="144.760935" xlink:href="#m7a9c636c50" y="173.988125"/>
+       <use x="151.87082" xlink:href="#m7a9c636c50" y="173.988125"/>
       </g>
      </g>
      <g id="text_2">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 144.760935, 189.346406)" x="144.760935" y="189.346406">1</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 151.87082, 189.346406)" x="151.87082" y="189.346406">1</text>
      </g>
     </g>
     <g id="xtick_3">
      <g id="line2d_3">
       <g>
-       <use x="221.305151" xlink:href="#m7a9c636c50" y="173.988125"/>
+       <use x="227.099608" xlink:href="#m7a9c636c50" y="173.988125"/>
       </g>
      </g>
      <g id="text_3">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 221.305151, 189.346406)" x="221.305151" y="189.346406">2</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 227.099608, 189.346406)" x="227.099608" y="189.346406">2</text>
      </g>
     </g>
     <g id="xtick_4">
      <g id="line2d_4">
       <g>
-       <use x="297.849367" xlink:href="#m7a9c636c50" y="173.988125"/>
+       <use x="302.328397" xlink:href="#m7a9c636c50" y="173.988125"/>
       </g>
      </g>
      <g id="text_4">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 297.849367, 189.346406)" x="297.849367" y="189.346406">3</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 302.328397, 189.346406)" x="302.328397" y="189.346406">3</text>
      </g>
     </g>
     <g id="xtick_5">
      <g id="line2d_5">
       <g>
-       <use x="374.393583" xlink:href="#m7a9c636c50" y="173.988125"/>
+       <use x="377.557185" xlink:href="#m7a9c636c50" y="173.988125"/>
       </g>
      </g>
      <g id="text_5">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 374.393583, 189.346406)" x="374.393583" y="189.346406">4</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 377.557185, 189.346406)" x="377.557185" y="189.346406">4</text>
      </g>
     </g>
     <g id="xtick_6">
      <g id="line2d_6">
       <g>
-       <use x="450.937798" xlink:href="#m7a9c636c50" y="173.988125"/>
+       <use x="452.785974" xlink:href="#m7a9c636c50" y="173.988125"/>
       </g>
      </g>
      <g id="text_6">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 450.937798, 189.346406)" x="450.937798" y="189.346406">5</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 452.785974, 189.346406)" x="452.785974" y="189.346406">5</text>
      </g>
     </g>
     <g id="xtick_7">
      <g id="line2d_7">
       <g>
-       <use x="527.482014" xlink:href="#m7a9c636c50" y="173.988125"/>
+       <use x="528.014763" xlink:href="#m7a9c636c50" y="173.988125"/>
       </g>
      </g>
      <g id="text_7">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 527.482014, 189.346406)" x="527.482014" y="189.346406">6</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 528.014763, 189.346406)" x="528.014763" y="189.346406">6</text>
      </g>
     </g>
     <g id="text_8">
-     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 313.34957, 203.992344)" x="313.34957" y="203.992344">Mondays</text>
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 317.562227, 203.992344)" x="317.562227" y="203.992344">Mondays</text>
     </g>
    </g>
    <g id="matplotlib.axis_2">
@@ -266,74 +266,74 @@ div.m-plot svg { font-family: DejaVu Sans; }
        <path d="M 0 0 L -3.5 0" id="m03b20617ea" class="m-line"/>
       </defs>
       <g>
-       <use x="68.216719" xlink:href="#m03b20617ea" y="53.395723"/>
+       <use x="76.642031" xlink:href="#m03b20617ea" y="53.395723"/>
       </g>
      </g>
      <g id="text_9">
-      <text class="m-label" transform="translate(19.514688 51.416067)">January</text>
-      <text class="m-label" transform="translate(61.216719 63.733661)"/>
+      <text class="m-label" transform="translate(27.94 52.251895)">January</text>
+      <text class="m-label" transform="translate(69.642031 64.569489)"/>
      </g>
     </g>
     <g id="ytick_2">
      <g id="line2d_9">
       <g>
-       <use x="68.216719" xlink:href="#m03b20617ea" y="100.873047"/>
+       <use x="76.642031" xlink:href="#m03b20617ea" y="100.873047"/>
       </g>
      </g>
      <g id="text_10">
-      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 61.216719, 105.052188)" x="61.216719" y="105.052188">February</text>
+      <text class="m-label" style="text-anchor:end;" transform="rotate(-0, 69.642031, 105.052188)" x="69.642031" y="105.052188">February</text>
      </g>
     </g>
     <g id="ytick_3">
      <g id="line2d_10">
       <g>
-       <use x="68.216719" xlink:href="#m03b20617ea" y="148.35037"/>
+       <use x="76.642031" xlink:href="#m03b20617ea" y="148.35037"/>
       </g>
      </g>
      <g id="text_11">
-      <text class="m-label" transform="translate(27.446719 146.370714)">March</text>
-      <text class="m-label" transform="translate(61.216719 158.688308)"/>
+      <text class="m-label" transform="translate(35.872031 147.206542)">March</text>
+      <text class="m-label" transform="translate(69.642031 159.524136)"/>
      </g>
     </g>
    </g>
    <g id="LineCollection_1">
-    <path clip-path="url(#p1198f4ed7e)" d="M 290.194945 53.395723 L 305.503788 53.395723" class="m-error"/>
-    <path clip-path="url(#p1198f4ed7e)" d="M 213.650729 100.873047 L 535.136436 100.873047" class="m-error"/>
-    <path clip-path="url(#p1198f4ed7e)" d="M 374.393583 148.35037 L 527.482014 148.35037" class="m-error"/>
+    <path clip-path="url(#p284e84a89d)" d="M 294.805518 53.395723 L 309.851276 53.395723" class="m-error"/>
+    <path clip-path="url(#p284e84a89d)" d="M 219.576729 100.873047 L 535.537641 100.873047" class="m-error"/>
+    <path clip-path="url(#p284e84a89d)" d="M 377.557185 148.35037 L 528.014763 148.35037" class="m-error"/>
    </g>
    <g id="line2d_11">
     <defs>
      <path d="M 0 9.375 L 0 -9.375" id="m63fa77ade3" class="m-error"/>
     </defs>
-    <g clip-path="url(#p1198f4ed7e)">
-     <use x="290.194945" xlink:href="#m63fa77ade3" y="53.395723"/>
-     <use x="213.650729" xlink:href="#m63fa77ade3" y="100.873047"/>
-     <use x="374.393583" xlink:href="#m63fa77ade3" y="148.35037"/>
+    <g clip-path="url(#p284e84a89d)">
+     <use x="294.805518" xlink:href="#m63fa77ade3" y="53.395723"/>
+     <use x="219.576729" xlink:href="#m63fa77ade3" y="100.873047"/>
+     <use x="377.557185" xlink:href="#m63fa77ade3" y="148.35037"/>
     </g>
    </g>
    <g id="line2d_12">
-    <g clip-path="url(#p1198f4ed7e)">
-     <use x="305.503788" xlink:href="#m63fa77ade3" y="53.395723"/>
-     <use x="535.136436" xlink:href="#m63fa77ade3" y="100.873047"/>
-     <use x="527.482014" xlink:href="#m63fa77ade3" y="148.35037"/>
+    <g clip-path="url(#p284e84a89d)">
+     <use x="309.851276" xlink:href="#m63fa77ade3" y="53.395723"/>
+     <use x="535.537641" xlink:href="#m63fa77ade3" y="100.873047"/>
+     <use x="528.014763" xlink:href="#m63fa77ade3" y="148.35037"/>
     </g>
    </g>
    <g id="text_12">
-    <text class="m-label m-dim" transform="translate(61.216719 52.646105)"/>
-    <text class="m-label m-dim" transform="translate(3.454687 64.963699)">a paradise</text>
+    <text class="m-label m-dim" transform="translate(69.642031 52.646105)"/>
+    <text class="m-label m-dim" transform="translate(11.88 64.963699)">a paradise</text>
    </g>
    <g id="text_13">
-    <text class="m-label m-dim" transform="translate(61.216719 147.600752)"/>
-    <text class="m-label m-dim" transform="translate(36.954844 159.918346)">hell!</text>
+    <text class="m-label m-dim" transform="translate(69.642031 147.600752)"/>
+    <text class="m-label m-dim" transform="translate(45.380156 159.918346)">hell!</text>
    </g>
    <g id="text_14">
-    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 313.34957, 21.757969)" x="313.34957" y="21.757969">A plot with separate colors, extra labels, error bars and custom height</text>
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 317.562227, 21.757969)" x="317.562227" y="21.757969">A plot with separate colors, extra labels, error bars and custom height</text>
    </g>
   </g>
  </g>
  <defs>
-  <clipPath id="p1198f4ed7e">
-   <rect height="146.230156" width="490.265703" x="68.216719" y="27.757969"/>
+  <clipPath id="p284e84a89d">
+   <rect height="146.230156" width="481.840391" x="76.642031" y="27.757969"/>
   </clipPath>
  </defs>
 </svg>
@@ -348,25 +348,25 @@ div.m-plot svg { font-family: DejaVu Sans; }
  <g id="figure_1">
   <g id="axes_1">
    <g id="patch_1">
-    <path d="M 26.561094 98.388125 L 560.62 98.388125 L 560.62 27.757969 L 26.561094 27.757969 z" class="m-background"/>
+    <path d="M 26.561094 98.388125 L 564.12 98.388125 L 564.12 27.757969 L 26.561094 27.757969 z" class="m-background"/>
    </g>
    <g id="plot3-value0-0"><title>111.9 kB</title>
-    <path clip-path="url(#pd6a36f6853)" d="M 26.561094 30.96843 L 94.068413 30.96843 L 94.068413 49.313926 L 26.561094 49.313926 z" class="m-bar m-success"/>
+    <path clip-path="url(#p340f3fa6c0)" d="M 26.561094 30.96843 L 94.510828 30.96843 L 94.510828 49.313926 L 26.561094 49.313926 z" class="m-bar m-success"/>
    </g>
    <g id="plot3-value0-1"><title>74.4 kB</title>
-    <path clip-path="url(#pd6a36f6853)" d="M 26.561094 53.900299 L 71.445317 53.900299 L 71.445317 72.245794 L 26.561094 72.245794 z" class="m-bar m-success"/>
+    <path clip-path="url(#p340f3fa6c0)" d="M 26.561094 53.900299 L 71.739469 53.900299 L 71.739469 72.245794 L 26.561094 72.245794 z" class="m-bar m-success"/>
    </g>
    <g id="plot3-value0-2"><title>52.1 kB</title>
-    <path clip-path="url(#pd6a36f6853)" d="M 26.561094 76.832168 L 57.992115 76.832168 L 57.992115 95.177663 L 26.561094 95.177663 z" class="m-bar m-success"/>
+    <path clip-path="url(#p340f3fa6c0)" d="M 26.561094 76.832168 L 58.198101 76.832168 L 58.198101 95.177663 L 26.561094 95.177663 z" class="m-bar m-success"/>
    </g>
    <g id="plot3-value1-0"><title>731.2 kB</title>
-    <path clip-path="url(#pd6a36f6853)" d="M 94.068413 30.96843 L 535.188624 30.96843 L 535.188624 49.313926 L 94.068413 49.313926 z" class="m-bar m-info"/>
+    <path clip-path="url(#p340f3fa6c0)" d="M 94.510828 30.96843 L 538.521957 30.96843 L 538.521957 49.313926 L 94.510828 49.313926 z" class="m-bar m-info"/>
    </g>
    <g id="plot3-value1-1"><title>226.3 kB</title>
-    <path clip-path="url(#pd6a36f6853)" d="M 71.445317 53.900299 L 207.968161 53.900299 L 207.968161 72.245794 L 71.445317 72.245794 z" class="m-bar m-info"/>
+    <path clip-path="url(#p340f3fa6c0)" d="M 71.739469 53.900299 L 209.157027 53.900299 L 209.157027 72.245794 L 71.739469 72.245794 z" class="m-bar m-info"/>
    </g>
    <g id="plot3-value1-2"><title>226.0 kB</title>
-    <path clip-path="url(#pd6a36f6853)" d="M 57.992115 76.832168 L 194.333975 76.832168 L 194.333975 95.177663 L 57.992115 95.177663 z" class="m-bar m-info"/>
+    <path clip-path="url(#p340f3fa6c0)" d="M 58.198101 76.832168 L 195.433489 76.832168 L 195.433489 95.177663 L 58.198101 95.177663 z" class="m-bar m-info"/>
    </g>
    <g id="matplotlib.axis_1">
     <g id="xtick_1">
@@ -385,85 +385,85 @@ div.m-plot svg { font-family: DejaVu Sans; }
     <g id="xtick_2">
      <g id="line2d_2">
       <g>
-       <use x="86.88935" xlink:href="#m230bf1d664" y="98.388125"/>
+       <use x="87.284716" xlink:href="#m230bf1d664" y="98.388125"/>
       </g>
      </g>
      <g id="text_2">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 86.88935, 113.746406)" x="86.88935" y="113.746406">100</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 87.284716, 113.746406)" x="87.284716" y="113.746406">100</text>
      </g>
     </g>
     <g id="xtick_3">
      <g id="line2d_3">
       <g>
-       <use x="147.217607" xlink:href="#m230bf1d664" y="98.388125"/>
+       <use x="148.008339" xlink:href="#m230bf1d664" y="98.388125"/>
       </g>
      </g>
      <g id="text_3">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 147.217607, 113.746406)" x="147.217607" y="113.746406">200</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 148.008339, 113.746406)" x="148.008339" y="113.746406">200</text>
      </g>
     </g>
     <g id="xtick_4">
      <g id="line2d_4">
       <g>
-       <use x="207.545863" xlink:href="#m230bf1d664" y="98.388125"/>
+       <use x="208.731962" xlink:href="#m230bf1d664" y="98.388125"/>
       </g>
      </g>
      <g id="text_4">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 207.545863, 113.746406)" x="207.545863" y="113.746406">300</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 208.731962, 113.746406)" x="208.731962" y="113.746406">300</text>
      </g>
     </g>
     <g id="xtick_5">
      <g id="line2d_5">
       <g>
-       <use x="267.874119" xlink:href="#m230bf1d664" y="98.388125"/>
+       <use x="269.455585" xlink:href="#m230bf1d664" y="98.388125"/>
       </g>
      </g>
      <g id="text_5">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 267.874119, 113.746406)" x="267.874119" y="113.746406">400</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 269.455585, 113.746406)" x="269.455585" y="113.746406">400</text>
      </g>
     </g>
     <g id="xtick_6">
      <g id="line2d_6">
       <g>
-       <use x="328.202376" xlink:href="#m230bf1d664" y="98.388125"/>
+       <use x="330.179207" xlink:href="#m230bf1d664" y="98.388125"/>
       </g>
      </g>
      <g id="text_6">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 328.202376, 113.746406)" x="328.202376" y="113.746406">500</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 330.179207, 113.746406)" x="330.179207" y="113.746406">500</text>
      </g>
     </g>
     <g id="xtick_7">
      <g id="line2d_7">
       <g>
-       <use x="388.530632" xlink:href="#m230bf1d664" y="98.388125"/>
+       <use x="390.90283" xlink:href="#m230bf1d664" y="98.388125"/>
       </g>
      </g>
      <g id="text_7">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 388.530632, 113.746406)" x="388.530632" y="113.746406">600</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 390.90283, 113.746406)" x="390.90283" y="113.746406">600</text>
      </g>
     </g>
     <g id="xtick_8">
      <g id="line2d_8">
       <g>
-       <use x="448.858889" xlink:href="#m230bf1d664" y="98.388125"/>
+       <use x="451.626453" xlink:href="#m230bf1d664" y="98.388125"/>
       </g>
      </g>
      <g id="text_8">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 448.858889, 113.746406)" x="448.858889" y="113.746406">700</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 451.626453, 113.746406)" x="451.626453" y="113.746406">700</text>
      </g>
     </g>
     <g id="xtick_9">
      <g id="line2d_9">
       <g>
-       <use x="509.187145" xlink:href="#m230bf1d664" y="98.388125"/>
+       <use x="512.350075" xlink:href="#m230bf1d664" y="98.388125"/>
       </g>
      </g>
      <g id="text_9">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 509.187145, 113.746406)" x="509.187145" y="113.746406">800</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 512.350075, 113.746406)" x="512.350075" y="113.746406">800</text>
      </g>
     </g>
     <g id="text_10">
-     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 293.590547, 128.392344)" x="293.590547" y="128.392344">kB</text>
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 295.340547, 128.392344)" x="295.340547" y="128.392344">kB</text>
     </g>
    </g>
    <g id="matplotlib.axis_2">
@@ -502,13 +502,13 @@ div.m-plot svg { font-family: DejaVu Sans; }
     </g>
    </g>
    <g id="text_14">
-    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 293.590547, 21.757969)" x="293.590547" y="21.757969">Stacked plot</text>
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 295.340547, 21.757969)" x="295.340547" y="21.757969">Stacked plot</text>
    </g>
   </g>
  </g>
  <defs>
-  <clipPath id="pd6a36f6853">
-   <rect height="70.630156" width="534.058906" x="26.561094" y="27.757969"/>
+  <clipPath id="p340f3fa6c0">
+   <rect height="70.630156" width="537.558906" x="26.561094" y="27.757969"/>
   </clipPath>
  </defs>
 </svg>
@@ -523,19 +523,19 @@ div.m-plot svg { font-family: DejaVu Sans; }
  <g id="figure_1">
   <g id="axes_1">
    <g id="patch_1">
-    <path d="M 26.427031 69.588125 L 560.62 69.588125 L 560.62 27.757969 L 26.427031 27.757969 z" class="m-background"/>
+    <path d="M 26.427031 69.588125 L 564.12 69.588125 L 564.12 27.757969 L 26.427031 27.757969 z" class="m-background"/>
    </g>
    <g id="plot4-value0-0"><title>111.9 ± 25.0 kB</title>
-    <path clip-path="url(#pf9f5e4e753)" d="M 26.427031 29.659339 L 81.004452 29.659339 L 81.004452 46.560413 L 26.427031 46.560413 z" class="m-bar m-success"/>
+    <path clip-path="url(#p53493eefeb)" d="M 26.427031 29.659339 L 81.36204 29.659339 L 81.36204 46.560413 L 26.427031 46.560413 z" class="m-bar m-success"/>
    </g>
    <g id="plot4-value0-1"><title>74.4 ± 15.3 kB</title>
-    <path clip-path="url(#pf9f5e4e753)" d="M 26.427031 50.785681 L 62.714432 50.785681 L 62.714432 67.686754 L 26.427031 67.686754 z" class="m-bar m-danger"/>
+    <path clip-path="url(#p53493eefeb)" d="M 26.427031 50.785681 L 62.952185 50.785681 L 62.952185 67.686754 L 26.427031 67.686754 z" class="m-bar m-danger"/>
    </g>
    <g id="plot4-value1-0"><title>731.2 ± 200.0 kB</title>
-    <path clip-path="url(#pf9f5e4e753)" d="M 81.004452 29.659339 L 437.635464 29.659339 L 437.635464 46.560413 L 81.004452 46.560413 z" class="m-bar m-info"/>
+    <path clip-path="url(#p53493eefeb)" d="M 81.36204 29.659339 L 440.329677 29.659339 L 440.329677 46.560413 L 81.36204 46.560413 z" class="m-bar m-info"/>
    </g>
    <g id="plot4-value1-1"><title>226.3 ± 5.0 kB</title>
-    <path clip-path="url(#pf9f5e4e753)" d="M 62.714432 50.785681 L 173.088608 50.785681 L 173.088608 67.686754 L 62.714432 67.686754 z" class="m-bar m-primary"/>
+    <path clip-path="url(#p53493eefeb)" d="M 62.952185 50.785681 L 174.049526 50.785681 L 174.049526 67.686754 L 62.952185 67.686754 z" class="m-bar m-primary"/>
    </g>
    <g id="matplotlib.axis_1">
     <g id="xtick_1">
@@ -554,55 +554,55 @@ div.m-plot svg { font-family: DejaVu Sans; }
     <g id="xtick_2">
      <g id="line2d_2">
       <g>
-       <use x="123.973807" xlink:href="#med42be8496" y="69.588125"/>
+       <use x="124.612927" xlink:href="#med42be8496" y="69.588125"/>
       </g>
      </g>
      <g id="text_2">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 123.973807, 84.946406)" x="123.973807" y="84.946406">200</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 124.612927, 84.946406)" x="124.612927" y="84.946406">200</text>
      </g>
     </g>
     <g id="xtick_3">
      <g id="line2d_3">
       <g>
-       <use x="221.520583" xlink:href="#med42be8496" y="69.588125"/>
+       <use x="222.798824" xlink:href="#med42be8496" y="69.588125"/>
       </g>
      </g>
      <g id="text_3">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 221.520583, 84.946406)" x="221.520583" y="84.946406">400</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 222.798824, 84.946406)" x="222.798824" y="84.946406">400</text>
      </g>
     </g>
     <g id="xtick_4">
      <g id="line2d_4">
       <g>
-       <use x="319.067358" xlink:href="#med42be8496" y="69.588125"/>
+       <use x="320.98472" xlink:href="#med42be8496" y="69.588125"/>
       </g>
      </g>
      <g id="text_4">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 319.067358, 84.946406)" x="319.067358" y="84.946406">600</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 320.98472, 84.946406)" x="320.98472" y="84.946406">600</text>
      </g>
     </g>
     <g id="xtick_5">
      <g id="line2d_5">
       <g>
-       <use x="416.614134" xlink:href="#med42be8496" y="69.588125"/>
+       <use x="419.170616" xlink:href="#med42be8496" y="69.588125"/>
       </g>
      </g>
      <g id="text_5">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 416.614134, 84.946406)" x="416.614134" y="84.946406">800</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 419.170616, 84.946406)" x="419.170616" y="84.946406">800</text>
      </g>
     </g>
     <g id="xtick_6">
      <g id="line2d_6">
       <g>
-       <use x="514.160909" xlink:href="#med42be8496" y="69.588125"/>
+       <use x="517.356512" xlink:href="#med42be8496" y="69.588125"/>
       </g>
      </g>
      <g id="text_6">
-      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 514.160909, 84.946406)" x="514.160909" y="84.946406">1000</text>
+      <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 517.356512, 84.946406)" x="517.356512" y="84.946406">1000</text>
      </g>
     </g>
     <g id="text_7">
-     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 293.523516, 99.592344)" x="293.523516" y="99.592344">kB</text>
+     <text class="m-label" style="text-anchor:middle;" transform="rotate(-0, 295.273516, 99.592344)" x="295.273516" y="99.592344">kB</text>
     </g>
    </g>
    <g id="matplotlib.axis_2">
@@ -631,48 +631,48 @@ div.m-plot svg { font-family: DejaVu Sans; }
     </g>
    </g>
    <g id="LineCollection_1">
-    <path clip-path="url(#pf9f5e4e753)" d="M 68.811105 38.109876 L 93.197799 38.109876" class="m-error"/>
-    <path clip-path="url(#pf9f5e4e753)" d="M 55.252103 59.236218 L 70.17676 59.236218" class="m-error"/>
+    <path clip-path="url(#p53493eefeb)" d="M 69.088803 38.109876 L 93.635277 38.109876" class="m-error"/>
+    <path clip-path="url(#p53493eefeb)" d="M 55.440964 59.236218 L 70.463406 59.236218" class="m-error"/>
    </g>
    <g id="LineCollection_2">
-    <path clip-path="url(#pf9f5e4e753)" d="M 340.088688 38.109876 L 535.18224 38.109876" class="m-error"/>
-    <path clip-path="url(#pf9f5e4e753)" d="M 170.649939 59.236218 L 175.527278 59.236218" class="m-error"/>
+    <path clip-path="url(#p53493eefeb)" d="M 342.143781 38.109876 L 538.515573 38.109876" class="m-error"/>
+    <path clip-path="url(#p53493eefeb)" d="M 171.594879 59.236218 L 176.504174 59.236218" class="m-error"/>
    </g>
    <g id="line2d_9">
     <defs>
      <path d="M 0 5 L 0 -5" id="m1e7a6d6b54" class="m-error"/>
     </defs>
-    <g clip-path="url(#pf9f5e4e753)">
-     <use x="68.811105" xlink:href="#m1e7a6d6b54" y="38.109876"/>
-     <use x="55.252103" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    <g clip-path="url(#p53493eefeb)">
+     <use x="69.088803" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="55.440964" xlink:href="#m1e7a6d6b54" y="59.236218"/>
     </g>
    </g>
    <g id="line2d_10">
-    <g clip-path="url(#pf9f5e4e753)">
-     <use x="93.197799" xlink:href="#m1e7a6d6b54" y="38.109876"/>
-     <use x="70.17676" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    <g clip-path="url(#p53493eefeb)">
+     <use x="93.635277" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="70.463406" xlink:href="#m1e7a6d6b54" y="59.236218"/>
     </g>
    </g>
    <g id="line2d_11">
-    <g clip-path="url(#pf9f5e4e753)">
-     <use x="340.088688" xlink:href="#m1e7a6d6b54" y="38.109876"/>
-     <use x="170.649939" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    <g clip-path="url(#p53493eefeb)">
+     <use x="342.143781" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="171.594879" xlink:href="#m1e7a6d6b54" y="59.236218"/>
     </g>
    </g>
    <g id="line2d_12">
-    <g clip-path="url(#pf9f5e4e753)">
-     <use x="535.18224" xlink:href="#m1e7a6d6b54" y="38.109876"/>
-     <use x="175.527278" xlink:href="#m1e7a6d6b54" y="59.236218"/>
+    <g clip-path="url(#p53493eefeb)">
+     <use x="538.515573" xlink:href="#m1e7a6d6b54" y="38.109876"/>
+     <use x="176.504174" xlink:href="#m1e7a6d6b54" y="59.236218"/>
     </g>
    </g>
    <g id="text_10">
-    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 293.523516, 21.757969)" x="293.523516" y="21.757969">Stacked plot with errors and full colors</text>
+    <text class="m-title" style="text-anchor:middle;" transform="rotate(-0, 295.273516, 21.757969)" x="295.273516" y="21.757969">Stacked plot with errors and full colors</text>
    </g>
   </g>
  </g>
  <defs>
-  <clipPath id="pf9f5e4e753">
-   <rect height="41.830156" width="534.192969" x="26.427031" y="27.757969"/>
+  <clipPath id="p53493eefeb">
+   <rect height="41.830156" width="537.692969" x="26.427031" y="27.757969"/>
   </clipPath>
  </defs>
 </svg>
index 3660abaa25ce191ae8a92d6151a84f5e2d83f8ac..a7338080c489023b7e1c3cffe1ccd26bb4818e3a 100644 (file)
 #   DEALINGS IN THE SOFTWARE.
 #
 
+import matplotlib
 import os
+import sys
 import unittest
 
+from distutils.version import LooseVersion
+
 from . import PelicanPluginTestCase
 
 class Plots(PelicanPluginTestCase):
@@ -37,4 +41,11 @@ class Plots(PelicanPluginTestCase):
             'M_PLOTS_FONT': 'DejaVu Sans'
         })
 
-        self.assertEqual(*self.actual_expected_contents('page.html'))
+        # FUCK this is annoying
+        if LooseVersion(matplotlib.__version__) >= LooseVersion("3.0"):
+            if LooseVersion(sys.version) >= LooseVersion("3.6"):
+                self.assertEqual(*self.actual_expected_contents('page.html'))
+            else:
+                self.assertEqual(*self.actual_expected_contents('page.html', 'page-py35.html'))
+        else:
+            self.assertEqual(*self.actual_expected_contents('page.html', 'page-22.html'))