diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 9b738dc..8303409 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -25,4 +25,4 @@ formats: # Optionally declare the Python requirements required to build your docs python: install: - - requirements: docs/requirements.txt + - requirements: requirements_doc.txt diff --git a/MANIFEST.in b/MANIFEST.in index 2a1c82b..b465f23 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -3,4 +3,4 @@ include *.md include *.rst include requirements.txt -recursive-include pywaffle *.py *.otf +recursive-include pywaffle *.py diff --git a/build.sh b/build.sh index 754eab7..7de75fc 100755 --- a/build.sh +++ b/build.sh @@ -11,7 +11,7 @@ python3 -m examples.generate_plots #python3 -m sphinx -T -E -b html -d _build/doctrees -D language=en . _build/html # Upgrade Font Awesome -#python3 scripts/get_fontawesome.py +#python3 scripts/fontawesome_mapping_generator.py deactivate diff --git a/examples/docs/add_other_elements.svg b/examples/docs/add_other_elements.svg index d15daad..014d31d 100644 --- a/examples/docs/add_other_elements.svg +++ b/examples/docs/add_other_elements.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.833431 + 2022-06-07T10:35:55.050704 image/svg+xml @@ -35,7 +35,7 @@ L 44.420339 223.077966 L 44.420339 185.857627 L 7.2 185.857627 z -" clip-path="url(#p773a749772)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p52262b505a)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> @@ -605,7 +605,7 @@ z - + diff --git a/examples/docs/adjust_figure_change_background.svg b/examples/docs/adjust_figure_change_background.svg index 157a043..10fd29c 100644 --- a/examples/docs/adjust_figure_change_background.svg +++ b/examples/docs/adjust_figure_change_background.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.776388 + 2022-06-07T10:35:54.990023 image/svg+xml @@ -35,7 +35,7 @@ L 44.420339 223.077966 L 44.420339 185.857627 L 7.2 185.857627 z -" clip-path="url(#p1a692164f3)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #dcb732; stroke: #dcb732; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #dcb732; stroke: #dcb732; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #dcb732; stroke: #dcb732; stroke-linejoin: miter"/> +" clip-path="url(#p1c54d32bcc)" style="fill: #dcb732; stroke: #dcb732; stroke-linejoin: miter"/> - + diff --git a/examples/docs/adjust_figure_location.svg b/examples/docs/adjust_figure_location.svg index cc6a121..e59740a 100644 --- a/examples/docs/adjust_figure_location.svg +++ b/examples/docs/adjust_figure_location.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.795122 + 2022-06-07T10:35:55.008829 image/svg+xml @@ -35,7 +35,7 @@ L 48.020339 334.8 L 48.020339 297.579661 L 10.8 297.579661 z -" clip-path="url(#pcd2c6a7ad4)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd9bc44cd59)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> - + diff --git a/examples/docs/basic_dict_values.svg b/examples/docs/basic_dict_values.svg index afc86c2..2419725 100644 --- a/examples/docs/basic_dict_values.svg +++ b/examples/docs/basic_dict_values.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:25.930535 + 2022-06-07T10:35:54.156502 image/svg+xml @@ -35,7 +35,7 @@ L 38.963242 191.426801 L 38.963242 159.663559 L 7.2 159.663559 z -" clip-path="url(#p17e500680c)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pf1bad8cd92)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> @@ -649,7 +649,7 @@ z - + diff --git a/examples/docs/basic_list_values.svg b/examples/docs/basic_list_values.svg index a57728e..4e8044e 100644 --- a/examples/docs/basic_list_values.svg +++ b/examples/docs/basic_list_values.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:25.892207 + 2022-06-07T10:35:54.118271 image/svg+xml @@ -35,7 +35,7 @@ L 44.420339 223.077966 L 44.420339 185.857627 L 7.2 185.857627 z -" clip-path="url(#p1f2c143669)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pb479797148)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> - + diff --git a/examples/docs/block_colors.svg b/examples/docs/block_colors.svg index 1912ab4..a991781 100644 --- a/examples/docs/block_colors.svg +++ b/examples/docs/block_colors.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.161138 + 2022-06-07T10:35:54.403206 image/svg+xml @@ -35,7 +35,7 @@ L 44.420339 223.077966 L 44.420339 185.857627 L 7.2 185.857627 z -" clip-path="url(#p5d2d3af4a8)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #232066; stroke: #232066; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #983d3d; stroke: #983d3d; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #dcb732; stroke: #dcb732; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #dcb732; stroke: #dcb732; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #dcb732; stroke: #dcb732; stroke-linejoin: miter"/> +" clip-path="url(#p372e3a3f69)" style="fill: #dcb732; stroke: #dcb732; stroke-linejoin: miter"/> - + diff --git a/examples/docs/block_colors_custom_cmap_name.svg b/examples/docs/block_colors_custom_cmap_name.svg index c62dcc6..383451b 100644 --- a/examples/docs/block_colors_custom_cmap_name.svg +++ b/examples/docs/block_colors_custom_cmap_name.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.235635 + 2022-06-07T10:35:54.439435 image/svg+xml @@ -35,7 +35,7 @@ L 44.420339 223.077966 L 44.420339 185.857627 L 7.2 185.857627 z -" clip-path="url(#pa3202f72c5)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #1f77b4; stroke: #1f77b4; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #ff7f0e; stroke: #ff7f0e; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #2ca02c; stroke: #2ca02c; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #2ca02c; stroke: #2ca02c; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #2ca02c; stroke: #2ca02c; stroke-linejoin: miter"/> +" clip-path="url(#pcb6b295abe)" style="fill: #2ca02c; stroke: #2ca02c; stroke-linejoin: miter"/> - + diff --git a/examples/docs/block_direction.svg b/examples/docs/block_direction.svg index 2189719..e73d154 100644 --- a/examples/docs/block_direction.svg +++ b/examples/docs/block_direction.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.742043 + 2022-06-07T10:35:54.952370 image/svg+xml @@ -35,7 +35,7 @@ L 44.420339 223.077966 L 44.420339 185.857627 L 7.2 185.857627 z -" clip-path="url(#pd6e83d875b)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p3e9edee13f)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> - + diff --git a/examples/docs/block_distance.svg b/examples/docs/block_distance.svg index d0567f0..3920460 100644 --- a/examples/docs/block_distance.svg +++ b/examples/docs/block_distance.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.561358 + 2022-06-07T10:35:54.768825 image/svg+xml @@ -35,7 +35,7 @@ L 30.315789 169.010526 L 30.315789 145.894737 L 7.2 145.894737 z -" clip-path="url(#p58e3efb58f)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd46f551558)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> - + diff --git a/examples/docs/block_location.svg b/examples/docs/block_location.svg index c57fc0c..edd1415 100644 --- a/examples/docs/block_location.svg +++ b/examples/docs/block_location.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.596352 + 2022-06-07T10:35:54.803475 image/svg+xml @@ -35,7 +35,7 @@ L 446.4 223.077966 L 446.4 185.857627 L 409.179661 185.857627 z -" clip-path="url(#pc63fa8a1c3)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p86df6bfca2)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> - + diff --git a/examples/docs/block_shape.svg b/examples/docs/block_shape.svg index f0dc1af..c43bbcc 100644 --- a/examples/docs/block_shape.svg +++ b/examples/docs/block_shape.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.527539 + 2022-06-07T10:35:54.731630 image/svg+xml @@ -35,7 +35,7 @@ L 44.420339 140.622723 L 44.420339 117.618805 L 7.2 117.618805 z -" clip-path="url(#p540119ddcb)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p4dc033d786)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> - + diff --git a/examples/docs/characters.svg b/examples/docs/characters.svg index 1ba5d93..6281d03 100644 --- a/examples/docs/characters.svg +++ b/examples/docs/characters.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.290142 + 2022-06-07T10:35:54.495951 image/svg+xml diff --git a/examples/docs/icons.svg b/examples/docs/icons.svg index a9f8e0b..a10dbb6 100644 --- a/examples/docs/icons.svg +++ b/examples/docs/icons.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.357394 + 2022-06-07T10:35:54.560504 image/svg+xml diff --git a/examples/docs/icons_different_per_category.svg b/examples/docs/icons_different_per_category.svg index 182b13d..b6b5596 100644 --- a/examples/docs/icons_different_per_category.svg +++ b/examples/docs/icons_different_per_category.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.421384 + 2022-06-07T10:35:54.621719 image/svg+xml diff --git a/examples/docs/icons_different_style.svg b/examples/docs/icons_different_style.svg index a5607a3..359ede4 100644 --- a/examples/docs/icons_different_style.svg +++ b/examples/docs/icons_different_style.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.485957 + 2022-06-07T10:35:54.688443 image/svg+xml diff --git a/examples/docs/new_line_pattern.svg b/examples/docs/new_line_pattern.svg index c2f4c9a..213281a 100644 --- a/examples/docs/new_line_pattern.svg +++ b/examples/docs/new_line_pattern.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.703205 + 2022-06-07T10:35:54.916557 image/svg+xml @@ -35,7 +35,7 @@ L 44.420339 267.742373 L 44.420339 230.522034 L 7.2 230.522034 z -" clip-path="url(#p334a71e84d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: none"/> +" clip-path="url(#p69dcd7112d)" style="fill: none"/> +" clip-path="url(#p69dcd7112d)" style="fill: none"/> +" clip-path="url(#p69dcd7112d)" style="fill: none"/> +" clip-path="url(#p69dcd7112d)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p69dcd7112d)" style="fill: none"/> +" clip-path="url(#p69dcd7112d)" style="fill: none"/> +" clip-path="url(#p69dcd7112d)" style="fill: none"/> +" clip-path="url(#p69dcd7112d)" style="fill: none"/> +" clip-path="url(#p69dcd7112d)" style="fill: none"/> +" clip-path="url(#p69dcd7112d)" style="fill: none"/> - + diff --git a/examples/docs/plot_on_existed_axis.svg b/examples/docs/plot_on_existed_axis.svg index b9cdf7a..34d661c 100644 --- a/examples/docs/plot_on_existed_axis.svg +++ b/examples/docs/plot_on_existed_axis.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:25.964207 + 2022-06-07T10:35:54.194494 image/svg+xml @@ -35,7 +35,7 @@ L 37.464407 197.851684 L 37.464407 167.587278 L 7.2 167.587278 z -" clip-path="url(#p8e061ee984)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p4c76cd3b89)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> @@ -678,7 +678,7 @@ z - + diff --git a/examples/docs/snake_pattern.svg b/examples/docs/snake_pattern.svg index dde9506..5b63caf 100644 --- a/examples/docs/snake_pattern.svg +++ b/examples/docs/snake_pattern.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.664558 + 2022-06-07T10:35:54.869815 image/svg+xml @@ -35,7 +35,7 @@ L 38.129577 186.591549 L 38.129577 155.661972 L 7.2 155.661972 z -" clip-path="url(#p241d2b9e08)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #e78ac3; stroke: #e78ac3; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #e78ac3; stroke: #e78ac3; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #e78ac3; stroke: #e78ac3; stroke-linejoin: miter"/> +" clip-path="url(#pbc89e9f8ee)" style="fill: #e78ac3; stroke: #e78ac3; stroke-linejoin: miter"/> - + diff --git a/examples/docs/title_label_ledend.svg b/examples/docs/title_label_ledend.svg index 35ebe32..3b7cf23 100644 --- a/examples/docs/title_label_ledend.svg +++ b/examples/docs/title_label_ledend.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.113469 + 2022-06-07T10:35:54.359374 image/svg+xml @@ -35,7 +35,7 @@ L 44.131303 242.598432 L 44.131303 205.667129 L 7.2 205.667129 z -" clip-path="url(#p24de155d7e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p09b7d75836)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> @@ -989,7 +989,7 @@ z - + diff --git a/examples/docs/value_scaling_and_auto_sizing_ignore_columns.svg b/examples/docs/value_scaling_and_auto_sizing_ignore_columns.svg index 4eb466b..b6e88eb 100644 --- a/examples/docs/value_scaling_and_auto_sizing_ignore_columns.svg +++ b/examples/docs/value_scaling_and_auto_sizing_ignore_columns.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:26.064684 + 2022-06-07T10:35:54.308153 image/svg+xml @@ -35,7 +35,7 @@ L 25.653782 114.231933 L 25.653782 95.778151 L 7.2 95.778151 z -" clip-path="url(#p371854fbf1)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p67c01e76e7)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> - + diff --git a/examples/docs/value_scaling_and_auto_sizing_rounding_rule.svg b/examples/docs/value_scaling_and_auto_sizing_rounding_rule.svg index d4bdb71..034729f 100644 --- a/examples/docs/value_scaling_and_auto_sizing_rounding_rule.svg +++ b/examples/docs/value_scaling_and_auto_sizing_rounding_rule.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:25.997939 + 2022-06-07T10:35:54.230848 image/svg+xml @@ -35,7 +35,7 @@ L 44.420339 223.077966 L 44.420339 185.857627 L 7.2 185.857627 z -" clip-path="url(#p7a2bb4b463)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pc484a0473e)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> - + diff --git a/examples/readme/absolute_block_numbers.svg b/examples/readme/absolute_block_numbers.svg index 2dcc5cd..e58e082 100644 --- a/examples/readme/absolute_block_numbers.svg +++ b/examples/readme/absolute_block_numbers.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:25.314998 + 2022-06-07T10:35:53.344881 image/svg+xml @@ -35,7 +35,7 @@ L 25.986855 116.163761 L 25.986855 97.376905 L 7.2 97.376905 z -" clip-path="url(#pdaf4f6273a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pd631120828)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> @@ -857,7 +857,7 @@ z - + diff --git a/examples/readme/basic.svg b/examples/readme/basic.svg index 0a73f30..0cf7537 100644 --- a/examples/readme/basic.svg +++ b/examples/readme/basic.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:25.264786 + 2022-06-07T10:35:53.294656 image/svg+xml @@ -35,7 +35,7 @@ L 35.877966 173.532203 L 35.877966 144.854237 L 7.2 144.854237 z -" clip-path="url(#p3d4e5fe99a)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#pdc1f736a75)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> - + diff --git a/examples/readme/existed_axis.svg b/examples/readme/existed_axis.svg index c4dd601..b9ddabc 100644 --- a/examples/readme/existed_axis.svg +++ b/examples/readme/existed_axis.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:25.532434 + 2022-06-07T10:35:53.576476 image/svg+xml @@ -35,7 +35,7 @@ L 37.464407 197.851684 L 37.464407 167.587278 L 7.2 167.587278 z -" clip-path="url(#paec89eb1dd)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #66c2a5; stroke: #66c2a5; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #fc8d62; stroke: #fc8d62; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> +" clip-path="url(#p0c078ae41e)" style="fill: #8da0cb; stroke: #8da0cb; stroke-linejoin: miter"/> @@ -678,7 +678,7 @@ z - + diff --git a/examples/readme/fontawesome.svg b/examples/readme/fontawesome.svg index 24bdc8a..2c36646 100644 --- a/examples/readme/fontawesome.svg +++ b/examples/readme/fontawesome.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:25.476048 + 2022-06-07T10:35:53.516508 image/svg+xml diff --git a/examples/readme/multiple_plots.svg b/examples/readme/multiple_plots.svg index 8db9149..c505e63 100644 --- a/examples/readme/multiple_plots.svg +++ b/examples/readme/multiple_plots.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:25.826219 + 2022-06-07T10:35:54.048731 image/svg+xml @@ -35,7 +35,7 @@ L 23.928987 126.525 L 23.928987 113.396013 L 10.8 113.396013 z -" clip-path="url(#p9f4395d2b6)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #fdc086; stroke: #fdc086; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #fdc086; stroke: #fdc086; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #fdc086; stroke: #fdc086; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #fdc086; stroke: #fdc086; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #fdc086; stroke: #fdc086; stroke-linejoin: miter"/> +" clip-path="url(#p960d0cbde7)" style="fill: #fdc086; stroke: #fdc086; stroke-linejoin: miter"/> @@ -1184,7 +1184,7 @@ L 23.928987 228.59125 L 23.928987 215.462263 L 10.8 215.462263 z -" clip-path="url(#p89ed1b9b2d)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #fdc086; stroke: #fdc086; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #fdc086; stroke: #fdc086; stroke-linejoin: miter"/> +" clip-path="url(#pcf9c623dc5)" style="fill: #fdc086; stroke: #fdc086; stroke-linejoin: miter"/> @@ -1658,7 +1658,7 @@ L 23.928987 330.6575 L 23.928987 317.528513 L 10.8 317.528513 z -" clip-path="url(#p4c6d733b8a)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #7fc97f; stroke: #7fc97f; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #beaed4; stroke: #beaed4; stroke-linejoin: miter"/> +" clip-path="url(#p25dc6cea68)" style="fill: #fdc086; stroke: #fdc086; stroke-linejoin: miter"/> @@ -2429,13 +2429,13 @@ z - + - + - + diff --git a/examples/readme/title_and_legend.svg b/examples/readme/title_and_legend.svg index 8cb9e0a..e5c527b 100644 --- a/examples/readme/title_and_legend.svg +++ b/examples/readme/title_and_legend.svg @@ -6,7 +6,7 @@ - 2022-06-05T10:50:25.376635 + 2022-06-07T10:35:53.413430 image/svg+xml @@ -35,7 +35,7 @@ L 22.094748 37.212873 L 22.094748 22.318125 L 7.2 22.318125 z -" clip-path="url(#p685eff0a75)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #c1d82f; stroke: #c1d82f; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #00a4e4; stroke: #00a4e4; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #fbb034; stroke: #fbb034; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #fbb034; stroke: #fbb034; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #fbb034; stroke: #fbb034; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #fbb034; stroke: #fbb034; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #fbb034; stroke: #fbb034; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #fbb034; stroke: #fbb034; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #fbb034; stroke: #fbb034; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #fbb034; stroke: #fbb034; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #fbb034; stroke: #fbb034; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #fbb034; stroke: #fbb034; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #fbb034; stroke: #fbb034; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #6a737b; stroke: #6a737b; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #6a737b; stroke: #6a737b; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #6a737b; stroke: #6a737b; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #6a737b; stroke: #6a737b; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #6a737b; stroke: #6a737b; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #6a737b; stroke: #6a737b; stroke-linejoin: miter"/> +" clip-path="url(#p367e4c6a65)" style="fill: #6a737b; stroke: #6a737b; stroke-linejoin: miter"/> @@ -1574,7 +1574,7 @@ z - + diff --git a/pyproject.toml b/pyproject.toml index 3fc914f..eecf71a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.black] -line-length = 120 -target-version = ['py37'] +line-length = 88 +target-version = ['py310'] include = '\.pyi?$' exclude = ''' @@ -12,6 +12,7 @@ exclude = ''' | \.mypy_cache | \.tox | \.venv + | \venv | _build | buck-out | build diff --git a/pywaffle/fontawesome/Font Awesome 6 Brands-Regular-400.otf b/pywaffle/fontawesome/Font Awesome 6 Brands-Regular-400.otf deleted file mode 100644 index 3ea643f..0000000 Binary files a/pywaffle/fontawesome/Font Awesome 6 Brands-Regular-400.otf and /dev/null differ diff --git a/pywaffle/fontawesome/Font Awesome 6 Free-Regular-400.otf b/pywaffle/fontawesome/Font Awesome 6 Free-Regular-400.otf deleted file mode 100644 index 0698e85..0000000 Binary files a/pywaffle/fontawesome/Font Awesome 6 Free-Regular-400.otf and /dev/null differ diff --git a/pywaffle/fontawesome/Font Awesome 6 Free-Solid-900.otf b/pywaffle/fontawesome/Font Awesome 6 Free-Solid-900.otf deleted file mode 100644 index 2452af5..0000000 Binary files a/pywaffle/fontawesome/Font Awesome 6 Free-Solid-900.otf and /dev/null differ diff --git a/pywaffle/fontawesome/__init__.py b/pywaffle/fontawesome/__init__.py deleted file mode 100644 index 183d6e6..0000000 --- a/pywaffle/fontawesome/__init__.py +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/python -# -*-coding: utf-8 -*- - -import os - -FONT_DIR = os.path.dirname(os.path.abspath(__file__)) - -FONTAWESOME_FILES = { - "brands": os.path.join(FONT_DIR, "Font Awesome 6 Brands-Regular-400.otf"), - "solid": os.path.join(FONT_DIR, "Font Awesome 6 Free-Solid-900.otf"), - "regular": os.path.join(FONT_DIR, "Font Awesome 6 Free-Regular-400.otf"), -} diff --git a/pywaffle/fontawesome_handler.py b/pywaffle/fontawesome_handler.py new file mode 100644 index 0000000..84b9413 --- /dev/null +++ b/pywaffle/fontawesome_handler.py @@ -0,0 +1,77 @@ +# This script finds the path to fontawesome files, and creates necessary mappings and matplotlib handlers. +# They will only be called when fontawesome is used. + +import inspect +import pathlib + +import fontawesomefree +import matplotlib.font_manager as fm +from matplotlib.legend_handler import HandlerBase +from matplotlib.text import Text + +FA_STYLES = { + "brands": "Brands-Regular-400", + "solid": "Free-Solid-900", + "regular": "Free-Regular-400", +} + + +def font_file_finder(): + package_path = pathlib.Path(inspect.getsourcefile(fontawesomefree)) + font_otf_path = (package_path.parent / "static/fontawesomefree/otfs").glob("*.otf") + font_file_mapping = { + style: path + for path in font_otf_path + for style, font_suffix in FA_STYLES.items() + if font_suffix.lower() in path.name.lower() + } + return font_file_mapping + + +class TextLegendBase: + def __init__(self, text, color, **kwargs): + self.text = text + self.color = color + self.kwargs = kwargs + + +def LegendClassFactory(name, BaseClass=TextLegendBase): + def __init__(self, text, color, **kwargs): + BaseClass.__init__(self, text=text, color=color, **kwargs) + + new_legend_class = type(name, (BaseClass,), {"__init__": __init__}) + return new_legend_class + + +legend_style_class_mapping = { + style: LegendClassFactory(name=f"{style.capitalize()}TextLegend") + for style in FA_STYLES.keys() +} + + +class TextLegendHandler(HandlerBase): + def __init__(self, font_file): + super().__init__() + self.font_file = font_file + + def create_artists( + self, legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans + ): + x = xdescent + width / 2.0 + y = ydescent + height / 2.0 + kwargs = { + "horizontalalignment": "center", + "verticalalignment": "center", + "color": orig_handle.color, + "fontproperties": fm.FontProperties(fname=self.font_file, size=fontsize), + } + kwargs.update(orig_handle.kwargs) + annotation = Text(x, y, orig_handle.text, **kwargs) + return [annotation] + + +fontawesome_files = font_file_finder() +legend_handler_style_mapping = { + v: TextLegendHandler(font_file=fontawesome_files[k]) + for k, v in legend_style_class_mapping.items() +} diff --git a/pywaffle/fontawesome_mapping.py b/pywaffle/fontawesome_mapping.py index dc3db5f..28f0925 100644 --- a/pywaffle/fontawesome_mapping.py +++ b/pywaffle/fontawesome_mapping.py @@ -14,7 +14,10 @@ "9": "9", "a": "A", "address-book": "\uf2b9", + "contact-book": "\uf2b9", "address-card": "\uf2bb", + "contact-card": "\uf2bb", + "vcard": "\uf2bb", "align-center": "\uf037", "align-justify": "\uf039", "align-left": "\uf036", @@ -29,55 +32,99 @@ "angle-right": "\uf105", "angle-up": "\uf106", "angles-down": "\uf103", + "angle-double-down": "\uf103", "angles-left": "\uf100", + "angle-double-left": "\uf100", "angles-right": "\uf101", + "angle-double-right": "\uf101", "angles-up": "\uf102", + "angle-double-up": "\uf102", "ankh": "\uf644", "apple-whole": "\uf5d1", + "apple-alt": "\uf5d1", "archway": "\uf557", "arrow-down": "\uf063", "arrow-down-1-9": "\uf162", + "sort-numeric-asc": "\uf162", + "sort-numeric-down": "\uf162", "arrow-down-9-1": "\uf886", + "sort-numeric-desc": "\uf886", + "sort-numeric-down-alt": "\uf886", "arrow-down-a-z": "\uf15d", + "sort-alpha-asc": "\uf15d", + "sort-alpha-down": "\uf15d", "arrow-down-long": "\uf175", + "long-arrow-down": "\uf175", "arrow-down-short-wide": "\uf884", + "sort-amount-desc": "\uf884", + "sort-amount-down-alt": "\uf884", "arrow-down-up-across-line": "\ue4af", "arrow-down-up-lock": "\ue4b0", "arrow-down-wide-short": "\uf160", + "sort-amount-asc": "\uf160", + "sort-amount-down": "\uf160", "arrow-down-z-a": "\uf881", + "sort-alpha-desc": "\uf881", + "sort-alpha-down-alt": "\uf881", "arrow-left": "\uf060", "arrow-left-long": "\uf177", + "long-arrow-left": "\uf177", "arrow-pointer": "\uf245", + "mouse-pointer": "\uf245", "arrow-right": "\uf061", "arrow-right-arrow-left": "\uf0ec", + "exchange": "\uf0ec", "arrow-right-from-bracket": "\uf08b", + "sign-out": "\uf08b", "arrow-right-long": "\uf178", + "long-arrow-right": "\uf178", "arrow-right-to-bracket": "\uf090", + "sign-in": "\uf090", "arrow-right-to-city": "\ue4b3", "arrow-rotate-left": "\uf0e2", + "arrow-left-rotate": "\uf0e2", + "arrow-rotate-back": "\uf0e2", + "arrow-rotate-backward": "\uf0e2", + "undo": "\uf0e2", "arrow-rotate-right": "\uf01e", + "arrow-right-rotate": "\uf01e", + "arrow-rotate-forward": "\uf01e", + "redo": "\uf01e", "arrow-trend-down": "\ue097", "arrow-trend-up": "\ue098", "arrow-turn-down": "\uf149", + "level-down": "\uf149", "arrow-turn-up": "\uf148", + "level-up": "\uf148", "arrow-up": "\uf062", "arrow-up-1-9": "\uf163", + "sort-numeric-up": "\uf163", "arrow-up-9-1": "\uf887", + "sort-numeric-up-alt": "\uf887", "arrow-up-a-z": "\uf15e", + "sort-alpha-up": "\uf15e", "arrow-up-from-bracket": "\ue09a", "arrow-up-from-ground-water": "\ue4b5", "arrow-up-from-water-pump": "\ue4b6", "arrow-up-long": "\uf176", + "long-arrow-up": "\uf176", "arrow-up-right-dots": "\ue4b7", "arrow-up-right-from-square": "\uf08e", + "external-link": "\uf08e", "arrow-up-short-wide": "\uf885", + "sort-amount-up-alt": "\uf885", "arrow-up-wide-short": "\uf161", + "sort-amount-up": "\uf161", "arrow-up-z-a": "\uf882", + "sort-alpha-up-alt": "\uf882", "arrows-down-to-line": "\ue4b8", "arrows-down-to-people": "\ue4b9", "arrows-left-right": "\uf07e", + "arrows-h": "\uf07e", "arrows-left-right-to-line": "\ue4ba", "arrows-rotate": "\uf021", + "refresh": "\uf021", + "sync": "\uf021", "arrows-spin": "\ue4bb", "arrows-split-up-and-left": "\ue4bc", "arrows-to-circle": "\ue4bd", @@ -86,7 +133,9 @@ "arrows-turn-right": "\ue4c0", "arrows-turn-to-dots": "\ue4c1", "arrows-up-down": "\uf07d", + "arrows-v": "\uf07d", "arrows-up-down-left-right": "\uf047", + "arrows": "\uf047", "arrows-up-to-line": "\ue4c2", "asterisk": "*", "at": "@", @@ -97,37 +146,61 @@ "b": "B", "baby": "\uf77c", "baby-carriage": "\uf77d", + "carriage-baby": "\uf77d", "backward": "\uf04a", "backward-fast": "\uf049", + "fast-backward": "\uf049", "backward-step": "\uf048", + "step-backward": "\uf048", "bacon": "\uf7e5", "bacteria": "\ue059", "bacterium": "\ue05a", "bag-shopping": "\uf290", + "shopping-bag": "\uf290", "bahai": "\uf666", "baht-sign": "\ue0ac", "ban": "\uf05e", + "cancel": "\uf05e", "ban-smoking": "\uf54d", + "smoking-ban": "\uf54d", "bandage": "\uf462", + "band-aid": "\uf462", "barcode": "\uf02a", "bars": "\uf0c9", + "navicon": "\uf0c9", "bars-progress": "\uf828", + "tasks-alt": "\uf828", "bars-staggered": "\uf550", + "reorder": "\uf550", + "stream": "\uf550", "baseball": "\uf433", + "baseball-ball": "\uf433", "baseball-bat-ball": "\uf432", "basket-shopping": "\uf291", + "shopping-basket": "\uf291", "basketball": "\uf434", + "basketball-ball": "\uf434", "bath": "\uf2cd", + "bathtub": "\uf2cd", "battery-empty": "\uf244", + "battery-0": "\uf244", "battery-full": "\uf240", + "battery": "\uf240", + "battery-5": "\uf240", "battery-half": "\uf242", + "battery-3": "\uf242", "battery-quarter": "\uf243", + "battery-2": "\uf243", "battery-three-quarters": "\uf241", + "battery-4": "\uf241", "bed": "\uf236", "bed-pulse": "\uf487", + "procedures": "\uf487", "beer-mug-empty": "\uf0fc", + "beer": "\uf0fc", "bell": "\uf0f3", "bell-concierge": "\uf562", + "concierge-bell": "\uf562", "bell-slash": "\uf1f6", "bezier-curve": "\uf55b", "bicycle": "\uf206", @@ -139,24 +212,32 @@ "blog": "\uf781", "bold": "\uf032", "bolt": "\uf0e7", + "zap": "\uf0e7", "bolt-lightning": "\ue0b7", "bomb": "\uf1e2", "bone": "\uf5d7", "bong": "\uf55c", "book": "\uf02d", "book-atlas": "\uf558", + "atlas": "\uf558", "book-bible": "\uf647", + "bible": "\uf647", "book-bookmark": "\ue0bb", "book-journal-whills": "\uf66a", + "journal-whills": "\uf66a", "book-medical": "\uf7e6", "book-open": "\uf518", "book-open-reader": "\uf5da", + "book-reader": "\uf5da", "book-quran": "\uf687", + "quran": "\uf687", "book-skull": "\uf6b7", + "book-dead": "\uf6b7", "bookmark": "\uf02e", "border-all": "\uf84c", "border-none": "\uf850", "border-top-left": "\uf853", + "border-style": "\uf853", "bore-hole": "\ue4c3", "bottle-droplet": "\ue4c4", "bottle-water": "\ue4c5", @@ -165,10 +246,13 @@ "bowling-ball": "\uf436", "box": "\uf466", "box-archive": "\uf187", + "archive": "\uf187", "box-open": "\uf49e", "box-tissue": "\ue05b", "boxes-packing": "\ue4c7", "boxes-stacked": "\uf468", + "boxes": "\uf468", + "boxes-alt": "\uf468", "braille": "\uf2a1", "brain": "\uf5dc", "brazilian-real-sign": "\ue46c", @@ -183,6 +267,8 @@ "briefcase-medical": "\uf469", "broom": "\uf51a", "broom-ball": "\uf458", + "quidditch": "\uf458", + "quidditch-broom-ball": "\uf458", "brush": "\uf55d", "bucket": "\ue4cf", "bug": "\uf188", @@ -194,6 +280,10 @@ "building-circle-exclamation": "\ue4d3", "building-circle-xmark": "\ue4d4", "building-columns": "\uf19c", + "bank": "\uf19c", + "institution": "\uf19c", + "museum": "\uf19c", + "university": "\uf19c", "building-flag": "\ue4d5", "building-lock": "\ue4d6", "building-ngo": "\ue4d7", @@ -204,22 +294,30 @@ "bullhorn": "\uf0a1", "bullseye": "\uf140", "burger": "\uf805", + "hamburger": "\uf805", "burst": "\ue4dc", "bus": "\uf207", "bus-simple": "\uf55e", + "bus-alt": "\uf55e", "business-time": "\uf64a", + "briefcase-clock": "\uf64a", "c": "C", "cake-candles": "\uf1fd", + "birthday-cake": "\uf1fd", + "cake": "\uf1fd", "calculator": "\uf1ec", "calendar": "\uf133", "calendar-check": "\uf274", "calendar-day": "\uf783", "calendar-days": "\uf073", + "calendar-alt": "\uf073", "calendar-minus": "\uf272", "calendar-plus": "\uf271", "calendar-week": "\uf784", "calendar-xmark": "\uf273", + "calendar-times": "\uf273", "camera": "\uf030", + "camera-alt": "\uf030", "camera-retro": "\uf083", "camera-rotate": "\ue0d8", "campground": "\uf6bb", @@ -227,10 +325,14 @@ "cannabis": "\uf55f", "capsules": "\uf46b", "car": "\uf1b9", + "automobile": "\uf1b9", "car-battery": "\uf5df", + "battery-car": "\uf5df", "car-burst": "\uf5e1", + "car-crash": "\uf5e1", "car-on": "\ue4dd", "car-rear": "\uf5de", + "car-alt": "\uf5de", "car-side": "\uf5e4", "car-tunnel": "\ue4de", "caravan": "\uf8ff", @@ -241,9 +343,12 @@ "carrot": "\uf787", "cart-arrow-down": "\uf218", "cart-flatbed": "\uf474", + "dolly-flatbed": "\uf474", "cart-flatbed-suitcase": "\uf59d", + "luggage-cart": "\uf59d", "cart-plus": "\uf217", "cart-shopping": "\uf07a", + "shopping-cart": "\uf07a", "cash-register": "\uf788", "cat": "\uf6be", "cedi-sign": "\ue0df", @@ -251,19 +356,27 @@ "certificate": "\uf0a3", "chair": "\uf6c0", "chalkboard": "\uf51b", + "blackboard": "\uf51b", "chalkboard-user": "\uf51c", + "chalkboard-teacher": "\uf51c", "champagne-glasses": "\uf79f", + "glass-cheers": "\uf79f", "charging-station": "\uf5e7", "chart-area": "\uf1fe", + "area-chart": "\uf1fe", "chart-bar": "\uf080", + "bar-chart": "\uf080", "chart-column": "\ue0e3", "chart-gantt": "\ue0e4", "chart-line": "\uf201", + "line-chart": "\uf201", "chart-pie": "\uf200", + "pie-chart": "\uf200", "chart-simple": "\ue473", "check": "\uf00c", "check-double": "\uf560", "check-to-slot": "\uf772", + "vote-yea": "\uf772", "cheese": "\uf7ef", "chess": "\uf439", "chess-bishop": "\uf43a", @@ -285,35 +398,64 @@ "church": "\uf51d", "circle": "\uf111", "circle-arrow-down": "\uf0ab", + "arrow-circle-down": "\uf0ab", "circle-arrow-left": "\uf0a8", + "arrow-circle-left": "\uf0a8", "circle-arrow-right": "\uf0a9", + "arrow-circle-right": "\uf0a9", "circle-arrow-up": "\uf0aa", + "arrow-circle-up": "\uf0aa", "circle-check": "\uf058", + "check-circle": "\uf058", "circle-chevron-down": "\uf13a", + "chevron-circle-down": "\uf13a", "circle-chevron-left": "\uf137", + "chevron-circle-left": "\uf137", "circle-chevron-right": "\uf138", + "chevron-circle-right": "\uf138", "circle-chevron-up": "\uf139", + "chevron-circle-up": "\uf139", "circle-dollar-to-slot": "\uf4b9", + "donate": "\uf4b9", "circle-dot": "\uf192", + "dot-circle": "\uf192", "circle-down": "\uf358", + "arrow-alt-circle-down": "\uf358", "circle-exclamation": "\uf06a", + "exclamation-circle": "\uf06a", "circle-h": "\uf47e", + "hospital-symbol": "\uf47e", "circle-half-stroke": "\uf042", + "adjust": "\uf042", "circle-info": "\uf05a", + "info-circle": "\uf05a", "circle-left": "\uf359", + "arrow-alt-circle-left": "\uf359", "circle-minus": "\uf056", + "minus-circle": "\uf056", "circle-nodes": "\ue4e2", "circle-notch": "\uf1ce", "circle-pause": "\uf28b", + "pause-circle": "\uf28b", "circle-play": "\uf144", + "play-circle": "\uf144", "circle-plus": "\uf055", + "plus-circle": "\uf055", "circle-question": "\uf059", + "question-circle": "\uf059", "circle-radiation": "\uf7ba", + "radiation-alt": "\uf7ba", "circle-right": "\uf35a", + "arrow-alt-circle-right": "\uf35a", "circle-stop": "\uf28d", + "stop-circle": "\uf28d", "circle-up": "\uf35b", + "arrow-alt-circle-up": "\uf35b", "circle-user": "\uf2bd", + "user-circle": "\uf2bd", "circle-xmark": "\uf057", + "times-circle": "\uf057", + "xmark-circle": "\uf057", "city": "\uf64f", "clapperboard": "\ue131", "clipboard": "\uf328", @@ -322,13 +464,20 @@ "clipboard-question": "\ue4e3", "clipboard-user": "\uf7f3", "clock": "\uf017", + "clock-four": "\uf017", "clock-rotate-left": "\uf1da", + "history": "\uf1da", "clone": "\uf24d", "closed-captioning": "\uf20a", "cloud": "\uf0c2", "cloud-arrow-down": "\uf0ed", + "cloud-download": "\uf0ed", + "cloud-download-alt": "\uf0ed", "cloud-arrow-up": "\uf0ee", + "cloud-upload": "\uf0ee", + "cloud-upload-alt": "\uf0ee", "cloud-bolt": "\uf76c", + "thunderstorm": "\uf76c", "cloud-meatball": "\uf73b", "cloud-moon": "\uf6c3", "cloud-moon-rain": "\uf73c", @@ -350,17 +499,21 @@ "comment": "\uf075", "comment-dollar": "\uf651", "comment-dots": "\uf4ad", + "commenting": "\uf4ad", "comment-medical": "\uf7f5", "comment-slash": "\uf4b3", "comment-sms": "\uf7cd", + "sms": "\uf7cd", "comments": "\uf086", "comments-dollar": "\uf653", "compact-disc": "\uf51f", "compass": "\uf14e", "compass-drafting": "\uf568", + "drafting-compass": "\uf568", "compress": "\uf066", "computer": "\ue4e5", "computer-mouse": "\uf8cc", + "mouse": "\uf8cc", "cookie": "\uf563", "cookie-bite": "\uf564", "copy": "\uf0c5", @@ -368,8 +521,10 @@ "couch": "\uf4b8", "cow": "\uf6c8", "credit-card": "\uf09d", + "credit-card-alt": "\uf09d", "crop": "\uf125", "crop-simple": "\uf565", + "crop-alt": "\uf565", "cross": "\uf654", "crosshairs": "\uf05b", "crow": "\uf520", @@ -382,15 +537,19 @@ "d": "D", "database": "\uf1c0", "delete-left": "\uf55a", + "backspace": "\uf55a", "democrat": "\uf747", "desktop": "\uf390", + "desktop-alt": "\uf390", "dharmachakra": "\uf655", "diagram-next": "\ue476", "diagram-predecessor": "\ue477", "diagram-project": "\uf542", + "project-diagram": "\uf542", "diagram-successor": "\ue47a", "diamond": "\uf219", "diamond-turn-right": "\uf5eb", + "directions": "\uf5eb", "dice": "\uf522", "dice-d20": "\uf6cf", "dice-d6": "\uf6d1", @@ -406,18 +565,25 @@ "dna": "\uf471", "dog": "\uf6d3", "dollar-sign": "$", + "dollar": "$", + "usd": "$", "dolly": "\uf472", + "dolly-box": "\uf472", "dong-sign": "\ue169", "door-closed": "\uf52a", "door-open": "\uf52b", "dove": "\uf4ba", "down-left-and-up-right-to-center": "\uf422", + "compress-alt": "\uf422", "down-long": "\uf309", + "long-arrow-alt-down": "\uf309", "download": "\uf019", "dragon": "\uf6d5", "draw-polygon": "\uf5ee", "droplet": "\uf043", + "tint": "\uf043", "droplet-slash": "\uf5c7", + "tint-slash": "\uf5c7", "drum": "\uf569", "drum-steelpan": "\uf56a", "drumstick-bite": "\uf6d7", @@ -427,80 +593,138 @@ "dungeon": "\uf6d9", "e": "E", "ear-deaf": "\uf2a4", + "deaf": "\uf2a4", + "deafness": "\uf2a4", + "hard-of-hearing": "\uf2a4", "ear-listen": "\uf2a2", + "assistive-listening-systems": "\uf2a2", "earth-africa": "\uf57c", + "globe-africa": "\uf57c", "earth-americas": "\uf57d", + "earth": "\uf57d", + "earth-america": "\uf57d", + "globe-americas": "\uf57d", "earth-asia": "\uf57e", + "globe-asia": "\uf57e", "earth-europe": "\uf7a2", + "globe-europe": "\uf7a2", "earth-oceania": "\ue47b", + "globe-oceania": "\ue47b", "egg": "\uf7fb", "eject": "\uf052", "elevator": "\ue16d", "ellipsis": "\uf141", + "ellipsis-h": "\uf141", "ellipsis-vertical": "\uf142", + "ellipsis-v": "\uf142", "envelope": "\uf0e0", "envelope-circle-check": "\ue4e8", "envelope-open": "\uf2b6", "envelope-open-text": "\uf658", "envelopes-bulk": "\uf674", + "mail-bulk": "\uf674", "equals": "=", "eraser": "\uf12d", "ethernet": "\uf796", "euro-sign": "\uf153", + "eur": "\uf153", + "euro": "\uf153", "exclamation": "!", "expand": "\uf065", "explosion": "\ue4e9", "eye": "\uf06e", "eye-dropper": "\uf1fb", + "eye-dropper-empty": "\uf1fb", + "eyedropper": "\uf1fb", "eye-low-vision": "\uf2a8", + "low-vision": "\uf2a8", "eye-slash": "\uf070", "f": "F", "face-angry": "\uf556", + "angry": "\uf556", "face-dizzy": "\uf567", + "dizzy": "\uf567", "face-flushed": "\uf579", + "flushed": "\uf579", "face-frown": "\uf119", + "frown": "\uf119", "face-frown-open": "\uf57a", + "frown-open": "\uf57a", "face-grimace": "\uf57f", + "grimace": "\uf57f", "face-grin": "\uf580", + "grin": "\uf580", "face-grin-beam": "\uf582", + "grin-beam": "\uf582", "face-grin-beam-sweat": "\uf583", + "grin-beam-sweat": "\uf583", "face-grin-hearts": "\uf584", + "grin-hearts": "\uf584", "face-grin-squint": "\uf585", + "grin-squint": "\uf585", "face-grin-squint-tears": "\uf586", + "grin-squint-tears": "\uf586", "face-grin-stars": "\uf587", + "grin-stars": "\uf587", "face-grin-tears": "\uf588", + "grin-tears": "\uf588", "face-grin-tongue": "\uf589", + "grin-tongue": "\uf589", "face-grin-tongue-squint": "\uf58a", + "grin-tongue-squint": "\uf58a", "face-grin-tongue-wink": "\uf58b", + "grin-tongue-wink": "\uf58b", "face-grin-wide": "\uf581", + "grin-alt": "\uf581", "face-grin-wink": "\uf58c", + "grin-wink": "\uf58c", "face-kiss": "\uf596", + "kiss": "\uf596", "face-kiss-beam": "\uf597", + "kiss-beam": "\uf597", "face-kiss-wink-heart": "\uf598", + "kiss-wink-heart": "\uf598", "face-laugh": "\uf599", + "laugh": "\uf599", "face-laugh-beam": "\uf59a", + "laugh-beam": "\uf59a", "face-laugh-squint": "\uf59b", + "laugh-squint": "\uf59b", "face-laugh-wink": "\uf59c", + "laugh-wink": "\uf59c", "face-meh": "\uf11a", + "meh": "\uf11a", "face-meh-blank": "\uf5a4", + "meh-blank": "\uf5a4", "face-rolling-eyes": "\uf5a5", + "meh-rolling-eyes": "\uf5a5", "face-sad-cry": "\uf5b3", + "sad-cry": "\uf5b3", "face-sad-tear": "\uf5b4", + "sad-tear": "\uf5b4", "face-smile": "\uf118", + "smile": "\uf118", "face-smile-beam": "\uf5b8", + "smile-beam": "\uf5b8", "face-smile-wink": "\uf4da", + "smile-wink": "\uf4da", "face-surprise": "\uf5c2", + "surprise": "\uf5c2", "face-tired": "\uf5c8", + "tired": "\uf5c8", "fan": "\uf863", "faucet": "\ue005", "faucet-drip": "\ue006", "fax": "\uf1ac", "feather": "\uf52d", "feather-pointed": "\uf56b", + "feather-alt": "\uf56b", "ferry": "\ue4ea", "file": "\uf15b", "file-arrow-down": "\uf56d", + "file-download": "\uf56d", "file-arrow-up": "\uf574", + "file-upload": "\uf574", "file-audio": "\uf1c7", "file-circle-check": "\ue493", "file-circle-exclamation": "\ue4eb", @@ -513,34 +737,44 @@ "file-csv": "\uf6dd", "file-excel": "\uf1c3", "file-export": "\uf56e", + "arrow-right-from-file": "\uf56e", "file-image": "\uf1c5", "file-import": "\uf56f", + "arrow-right-to-file": "\uf56f", "file-invoice": "\uf570", "file-invoice-dollar": "\uf571", "file-lines": "\uf15c", + "file-alt": "\uf15c", + "file-text": "\uf15c", "file-medical": "\uf477", "file-pdf": "\uf1c1", "file-pen": "\uf31c", + "file-edit": "\uf31c", "file-powerpoint": "\uf1c4", "file-prescription": "\uf572", "file-shield": "\ue4f0", "file-signature": "\uf573", "file-video": "\uf1c8", "file-waveform": "\uf478", + "file-medical-alt": "\uf478", "file-word": "\uf1c2", "file-zipper": "\uf1c6", + "file-archive": "\uf1c6", "fill": "\uf575", "fill-drip": "\uf576", "film": "\uf008", "filter": "\uf0b0", "filter-circle-dollar": "\uf662", + "funnel-dollar": "\uf662", "filter-circle-xmark": "\ue17b", "fingerprint": "\uf577", "fire": "\uf06d", "fire-burner": "\ue4f1", "fire-extinguisher": "\uf134", "fire-flame-curved": "\uf7e4", + "fire-alt": "\uf7e4", "fire-flame-simple": "\uf46a", + "burn": "\uf46a", "fish": "\uf578", "fish-fins": "\ue4f2", "flag": "\uf024", @@ -549,8 +783,10 @@ "flask": "\uf0c3", "flask-vial": "\ue4f3", "floppy-disk": "\uf0c7", + "save": "\uf0c7", "florin-sign": "\ue184", "folder": "\uf07b", + "folder-blank": "\uf07b", "folder-closed": "\ue185", "folder-minus": "\uf65d", "folder-open": "\uf07c", @@ -558,23 +794,42 @@ "folder-tree": "\uf802", "font": "\uf031", "font-awesome": "\uf2b4", + "font-awesome-flag": "\uf2b4", + "font-awesome-logo-full": "\uf2b4", "football": "\uf44e", + "football-ball": "\uf44e", "forward": "\uf04e", "forward-fast": "\uf050", + "fast-forward": "\uf050", "forward-step": "\uf051", + "step-forward": "\uf051", "franc-sign": "\ue18f", "frog": "\uf52e", "futbol": "\uf1e3", + "futbol-ball": "\uf1e3", + "soccer-ball": "\uf1e3", "g": "G", "gamepad": "\uf11b", "gas-pump": "\uf52f", "gauge": "\uf624", + "dashboard": "\uf624", + "gauge-med": "\uf624", + "tachometer-alt-average": "\uf624", "gauge-high": "\uf625", + "tachometer-alt": "\uf625", + "tachometer-alt-fast": "\uf625", "gauge-simple": "\uf629", + "gauge-simple-med": "\uf629", + "tachometer-average": "\uf629", "gauge-simple-high": "\uf62a", + "tachometer": "\uf62a", + "tachometer-fast": "\uf62a", "gavel": "\uf0e3", + "legal": "\uf0e3", "gear": "\uf013", + "cog": "\uf013", "gears": "\uf085", + "cogs": "\uf085", "gem": "\uf3a5", "genderless": "\uf22d", "ghost": "\uf6e2", @@ -585,11 +840,14 @@ "glasses": "\uf530", "globe": "\uf0ac", "golf-ball-tee": "\uf450", + "golf-ball": "\uf450", "gopuram": "\uf664", "graduation-cap": "\uf19d", + "mortar-board": "\uf19d", "greater-than": ">", "greater-than-equal": "\uf532", "grip": "\uf58d", + "grip-horizontal": "\uf58d", "grip-lines": "\uf7a4", "grip-lines-vertical": "\uf7a5", "grip-vertical": "\uf58e", @@ -601,12 +859,18 @@ "hammer": "\uf6e3", "hamsa": "\uf665", "hand": "\uf256", + "hand-paper": "\uf256", "hand-back-fist": "\uf255", + "hand-rock": "\uf255", "hand-dots": "\uf461", + "allergies": "\uf461", "hand-fist": "\uf6de", + "fist-raised": "\uf6de", "hand-holding": "\uf4bd", "hand-holding-dollar": "\uf4c0", + "hand-holding-usd": "\uf4c0", "hand-holding-droplet": "\uf4c1", + "hand-holding-water": "\uf4c1", "hand-holding-hand": "\ue4f7", "hand-holding-heart": "\uf4be", "hand-holding-medical": "\ue05c", @@ -623,21 +887,32 @@ "hand-spock": "\uf259", "handcuffs": "\ue4f8", "hands": "\uf2a7", + "sign-language": "\uf2a7", + "signing": "\uf2a7", "hands-asl-interpreting": "\uf2a3", + "american-sign-language-interpreting": "\uf2a3", + "asl-interpreting": "\uf2a3", + "hands-american-sign-language-interpreting": "\uf2a3", "hands-bound": "\ue4f9", "hands-bubbles": "\ue05e", + "hands-wash": "\ue05e", "hands-clapping": "\ue1a8", "hands-holding": "\uf4c2", "hands-holding-child": "\ue4fa", "hands-holding-circle": "\ue4fb", "hands-praying": "\uf684", + "praying-hands": "\uf684", "handshake": "\uf2b5", "handshake-angle": "\uf4c4", + "hands-helping": "\uf4c4", "handshake-simple": "\uf4c6", + "handshake-alt": "\uf4c6", "handshake-simple-slash": "\ue05f", + "handshake-alt-slash": "\ue05f", "handshake-slash": "\ue060", "hanukiah": "\uf6e6", "hard-drive": "\uf0a0", + "hdd": "\uf0a0", "hashtag": "#", "hat-cowboy": "\uf8c0", "hat-cowboy-side": "\uf8c1", @@ -647,8 +922,10 @@ "head-side-mask": "\ue063", "head-side-virus": "\ue064", "heading": "\uf1dc", + "header": "\uf1dc", "headphones": "\uf025", "headphones-simple": "\uf58f", + "headphones-alt": "\uf58f", "headset": "\uf590", "heart": "\uf004", "heart-circle-bolt": "\ue4fc", @@ -658,10 +935,14 @@ "heart-circle-plus": "\ue500", "heart-circle-xmark": "\ue501", "heart-crack": "\uf7a9", + "heart-broken": "\uf7a9", "heart-pulse": "\uf21e", + "heartbeat": "\uf21e", "helicopter": "\uf533", "helicopter-symbol": "\ue502", "helmet-safety": "\uf807", + "hard-hat": "\uf807", + "hat-hard": "\uf807", "helmet-un": "\ue503", "highlighter": "\uf591", "hill-avalanche": "\ue507", @@ -672,18 +953,31 @@ "horse": "\uf6f0", "horse-head": "\uf7ab", "hospital": "\uf0f8", + "hospital-alt": "\uf0f8", + "hospital-wide": "\uf0f8", "hospital-user": "\uf80d", "hot-tub-person": "\uf593", + "hot-tub": "\uf593", "hotdog": "\uf80f", "hotel": "\uf594", "hourglass": "\uf254", + "hourglass-2": "\uf254", + "hourglass-half": "\uf254", "hourglass-empty": "\uf252", "hourglass-end": "\uf253", + "hourglass-3": "\uf253", "hourglass-start": "\uf251", + "hourglass-1": "\uf251", "house": "\uf015", + "home": "\uf015", + "home-alt": "\uf015", + "home-lg-alt": "\uf015", "house-chimney": "\ue3af", + "home-lg": "\ue3af", "house-chimney-crack": "\uf6f1", + "house-damage": "\uf6f1", "house-chimney-medical": "\uf7f2", + "clinic-medical": "\uf7f2", "house-chimney-user": "\ue065", "house-chimney-window": "\ue00d", "house-circle-check": "\ue509", @@ -695,6 +989,7 @@ "house-flood-water": "\ue50e", "house-flood-water-circle-arrow-right": "\ue50f", "house-laptop": "\ue066", + "laptop-house": "\ue066", "house-lock": "\ue510", "house-medical": "\ue3b2", "house-medical-circle-check": "\ue511", @@ -704,23 +999,31 @@ "house-signal": "\ue012", "house-tsunami": "\ue515", "house-user": "\ue1b0", + "home-user": "\ue1b0", "hryvnia-sign": "\uf6f2", + "hryvnia": "\uf6f2", "hurricane": "\uf751", "i": "I", "i-cursor": "\uf246", "ice-cream": "\uf810", "icicles": "\uf7ad", "icons": "\uf86d", + "heart-music-camera-bolt": "\uf86d", "id-badge": "\uf2c1", "id-card": "\uf2c2", + "drivers-license": "\uf2c2", "id-card-clip": "\uf47f", + "id-card-alt": "\uf47f", "igloo": "\uf7ae", "image": "\uf03e", "image-portrait": "\uf3e0", + "portrait": "\uf3e0", "images": "\uf302", "inbox": "\uf01c", "indent": "\uf03c", "indian-rupee-sign": "\ue1bc", + "indian-rupee": "\ue1bc", + "inr": "\ue1bc", "industry": "\uf275", "infinity": "\uf534", "info": "\uf129", @@ -730,6 +1033,7 @@ "jar-wheat": "\ue517", "jedi": "\uf669", "jet-fighter": "\uf0fb", + "fighter-jet": "\uf0fb", "jet-fighter-up": "\ue518", "joint": "\uf595", "jug-detergent": "\ue519", @@ -740,12 +1044,14 @@ "khanda": "\uf66d", "kip-sign": "\ue1c4", "kit-medical": "\uf479", + "first-aid": "\uf479", "kitchen-set": "\ue51a", "kiwi-bird": "\uf535", "l": "L", "land-mine-on": "\ue51b", "landmark": "\uf66f", "landmark-dome": "\uf752", + "landmark-alt": "\uf752", "landmark-flag": "\ue51c", "language": "\uf1ab", "laptop": "\uf109", @@ -756,7 +1062,9 @@ "layer-group": "\uf5fd", "leaf": "\uf06c", "left-long": "\uf30a", + "long-arrow-alt-left": "\uf30a", "left-right": "\uf337", + "arrows-alt-h": "\uf337", "lemon": "\uf094", "less-than": "<", "less-than-equal": "\uf537", @@ -764,17 +1072,29 @@ "lightbulb": "\uf0eb", "lines-leaning": "\ue51e", "link": "\uf0c1", + "chain": "\uf0c1", "link-slash": "\uf127", + "chain-broken": "\uf127", + "chain-slash": "\uf127", + "unlink": "\uf127", "lira-sign": "\uf195", "list": "\uf03a", + "list-squares": "\uf03a", "list-check": "\uf0ae", + "tasks": "\uf0ae", "list-ol": "\uf0cb", + "list-1-2": "\uf0cb", + "list-numeric": "\uf0cb", "list-ul": "\uf0ca", + "list-dots": "\uf0ca", "litecoin-sign": "\ue1d3", "location-arrow": "\uf124", "location-crosshairs": "\uf601", + "location": "\uf601", "location-dot": "\uf3c5", + "map-marker-alt": "\uf3c5", "location-pin": "\uf041", + "map-marker": "\uf041", "location-pin-lock": "\ue51f", "lock": "\uf023", "lock-open": "\uf3c1", @@ -784,16 +1104,23 @@ "m": "M", "magnet": "\uf076", "magnifying-glass": "\uf002", + "search": "\uf002", "magnifying-glass-arrow-right": "\ue521", "magnifying-glass-chart": "\ue522", "magnifying-glass-dollar": "\uf688", + "search-dollar": "\uf688", "magnifying-glass-location": "\uf689", + "search-location": "\uf689", "magnifying-glass-minus": "\uf010", + "search-minus": "\uf010", "magnifying-glass-plus": "\uf00e", + "search-plus": "\uf00e", "manat-sign": "\ue1d5", "map": "\uf279", "map-location": "\uf59f", + "map-marked": "\uf59f", "map-location-dot": "\uf5a0", + "map-marked-alt": "\uf5a0", "map-pin": "\uf276", "marker": "\uf5a1", "mars": "\uf222", @@ -802,40 +1129,58 @@ "mars-double": "\uf227", "mars-stroke": "\uf229", "mars-stroke-right": "\uf22b", + "mars-stroke-h": "\uf22b", "mars-stroke-up": "\uf22a", + "mars-stroke-v": "\uf22a", "martini-glass": "\uf57b", + "glass-martini-alt": "\uf57b", "martini-glass-citrus": "\uf561", + "cocktail": "\uf561", "martini-glass-empty": "\uf000", + "glass-martini": "\uf000", "mask": "\uf6fa", "mask-face": "\ue1d7", "mask-ventilator": "\ue524", "masks-theater": "\uf630", + "theater-masks": "\uf630", "mattress-pillow": "\ue525", "maximize": "\uf31e", + "expand-arrows-alt": "\uf31e", "medal": "\uf5a2", "memory": "\uf538", "menorah": "\uf676", "mercury": "\uf223", "message": "\uf27a", + "comment-alt": "\uf27a", "meteor": "\uf753", "microchip": "\uf2db", "microphone": "\uf130", "microphone-lines": "\uf3c9", + "microphone-alt": "\uf3c9", "microphone-lines-slash": "\uf539", + "microphone-alt-slash": "\uf539", "microphone-slash": "\uf131", "microscope": "\uf610", "mill-sign": "\ue1ed", "minimize": "\uf78c", + "compress-arrows-alt": "\uf78c", "minus": "\uf068", + "subtract": "\uf068", "mitten": "\uf7b5", "mobile": "\uf3ce", + "mobile-android": "\uf3ce", + "mobile-phone": "\uf3ce", "mobile-button": "\uf10b", "mobile-retro": "\ue527", "mobile-screen": "\uf3cf", + "mobile-android-alt": "\uf3cf", "mobile-screen-button": "\uf3cd", + "mobile-alt": "\uf3cd", "money-bill": "\uf0d6", "money-bill-1": "\uf3d1", + "money-bill-alt": "\uf3d1", "money-bill-1-wave": "\uf53b", + "money-bill-wave-alt": "\uf53b", "money-bill-transfer": "\ue528", "money-bill-trend-up": "\ue529", "money-bill-wave": "\uf53a", @@ -843,6 +1188,7 @@ "money-bills": "\ue1f3", "money-check": "\uf53c", "money-check-dollar": "\uf53d", + "money-check-alt": "\uf53d", "monument": "\uf5a6", "moon": "\uf186", "mortar-pestle": "\uf5a7", @@ -856,6 +1202,7 @@ "mountain-sun": "\ue52f", "mug-hot": "\uf7b6", "mug-saucer": "\uf0f4", + "coffee": "\uf0f4", "music": "\uf001", "n": "N", "naira-sign": "\ue1f6", @@ -864,6 +1211,7 @@ "newspaper": "\uf1ea", "not-equal": "\uf53e", "note-sticky": "\uf249", + "sticky-note": "\uf249", "notes-medical": "\uf481", "o": "O", "object-group": "\uf247", @@ -873,10 +1221,12 @@ "om": "\uf679", "otter": "\uf700", "outdent": "\uf03b", + "dedent": "\uf03b", "p": "P", "pager": "\uf815", "paint-roller": "\uf5aa", "paintbrush": "\uf1fc", + "paint-brush": "\uf1fc", "palette": "\uf53f", "pallet": "\uf482", "panorama": "\ue209", @@ -886,18 +1236,25 @@ "paragraph": "\uf1dd", "passport": "\uf5ab", "paste": "\uf0ea", + "file-clipboard": "\uf0ea", "pause": "\uf04c", "paw": "\uf1b0", "peace": "\uf67c", "pen": "\uf304", "pen-clip": "\uf305", + "pen-alt": "\uf305", "pen-fancy": "\uf5ac", "pen-nib": "\uf5ad", "pen-ruler": "\uf5ae", + "pencil-ruler": "\uf5ae", "pen-to-square": "\uf044", + "edit": "\uf044", "pencil": "\uf303", + "pencil-alt": "\uf303", "people-arrows-left-right": "\ue068", + "people-arrows": "\ue068", "people-carry-box": "\uf4ce", + "people-carry": "\uf4ce", "people-group": "\ue533", "people-line": "\ue534", "people-pulling": "\ue535", @@ -905,10 +1262,13 @@ "people-roof": "\ue537", "pepper-hot": "\uf816", "percent": "%", + "percentage": "%", "person": "\uf183", + "male": "\uf183", "person-arrow-down-to-line": "\ue538", "person-arrow-up-from-line": "\ue539", "person-biking": "\uf84a", + "biking": "\uf84a", "person-booth": "\uf756", "person-breastfeeding": "\ue53a", "person-burst": "\ue53b", @@ -921,8 +1281,11 @@ "person-circle-question": "\ue542", "person-circle-xmark": "\ue543", "person-digging": "\uf85e", + "digging": "\uf85e", "person-dots-from-line": "\uf470", + "diagnoses": "\uf470", "person-dress": "\uf182", + "female": "\uf182", "person-dress-burst": "\ue544", "person-drowning": "\ue545", "person-falling": "\ue546", @@ -930,34 +1293,47 @@ "person-half-dress": "\ue548", "person-harassing": "\ue549", "person-hiking": "\uf6ec", + "hiking": "\uf6ec", "person-military-pointing": "\ue54a", "person-military-rifle": "\ue54b", "person-military-to-person": "\ue54c", "person-praying": "\uf683", + "pray": "\uf683", "person-pregnant": "\ue31e", "person-rays": "\ue54d", "person-rifle": "\ue54e", "person-running": "\uf70c", + "running": "\uf70c", "person-shelter": "\ue54f", "person-skating": "\uf7c5", + "skating": "\uf7c5", "person-skiing": "\uf7c9", + "skiing": "\uf7c9", "person-skiing-nordic": "\uf7ca", + "skiing-nordic": "\uf7ca", "person-snowboarding": "\uf7ce", + "snowboarding": "\uf7ce", "person-swimming": "\uf5c4", + "swimmer": "\uf5c4", "person-through-window": "\ue433", "person-walking": "\uf554", + "walking": "\uf554", "person-walking-arrow-loop-left": "\ue551", "person-walking-arrow-right": "\ue552", "person-walking-dashed-line-arrow-right": "\ue553", "person-walking-luggage": "\ue554", "person-walking-with-cane": "\uf29d", + "blind": "\uf29d", "peseta-sign": "\ue221", "peso-sign": "\ue222", "phone": "\uf095", "phone-flip": "\uf879", + "phone-alt": "\uf879", "phone-slash": "\uf3dd", "phone-volume": "\uf2a0", + "volume-control-phone": "\uf2a0", "photo-film": "\uf87c", + "photo-video": "\uf87c", "piggy-bank": "\uf4d3", "pills": "\uf484", "pizza-slice": "\uf818", @@ -982,15 +1358,18 @@ "plug-circle-plus": "\ue55f", "plug-circle-xmark": "\ue560", "plus": "+", + "add": "+", "plus-minus": "\ue43c", "podcast": "\uf2ce", "poo": "\uf2fe", "poo-storm": "\uf75a", + "poo-bolt": "\uf75a", "poop": "\uf619", "power-off": "\uf011", "prescription": "\uf5b1", "prescription-bottle": "\uf485", "prescription-bottle-medical": "\uf486", + "prescription-bottle-alt": "\uf486", "print": "\uf02f", "pump-medical": "\ue06a", "pump-soap": "\ue06b", @@ -999,7 +1378,9 @@ "qrcode": "\uf029", "question": "?", "quote-left": "\uf10d", + "quote-left-alt": "\uf10d", "quote-right": "\uf10e", + "quote-right-alt": "\uf10e", "r": "R", "radiation": "\uf7b9", "radio": "\uf8d7", @@ -1008,21 +1389,32 @@ "receipt": "\uf543", "record-vinyl": "\uf8d9", "rectangle-ad": "\uf641", + "ad": "\uf641", "rectangle-list": "\uf022", + "list-alt": "\uf022", "rectangle-xmark": "\uf410", + "rectangle-times": "\uf410", + "times-rectangle": "\uf410", + "window-close": "\uf410", "recycle": "\uf1b8", "registered": "\uf25d", "repeat": "\uf363", "reply": "\uf3e5", + "mail-reply": "\uf3e5", "reply-all": "\uf122", + "mail-reply-all": "\uf122", "republican": "\uf75e", "restroom": "\uf7bd", "retweet": "\uf079", "ribbon": "\uf4d6", "right-from-bracket": "\uf2f5", + "sign-out-alt": "\uf2f5", "right-left": "\uf362", + "exchange-alt": "\uf362", "right-long": "\uf30b", + "long-arrow-alt-right": "\uf30b", "right-to-bracket": "\uf2f6", + "sign-in-alt": "\uf2f6", "ring": "\uf70b", "road": "\uf018", "road-barrier": "\ue562", @@ -1035,17 +1427,28 @@ "robot": "\uf544", "rocket": "\uf135", "rotate": "\uf2f1", + "sync-alt": "\uf2f1", "rotate-left": "\uf2ea", + "rotate-back": "\uf2ea", + "rotate-backward": "\uf2ea", + "undo-alt": "\uf2ea", "rotate-right": "\uf2f9", + "redo-alt": "\uf2f9", + "rotate-forward": "\uf2f9", "route": "\uf4d7", "rss": "\uf09e", + "feed": "\uf09e", "ruble-sign": "\uf158", + "rouble": "\uf158", + "rub": "\uf158", + "ruble": "\uf158", "rug": "\ue569", "ruler": "\uf545", "ruler-combined": "\uf546", "ruler-horizontal": "\uf547", "ruler-vertical": "\uf548", "rupee-sign": "\uf156", + "rupee": "\uf156", "rupiah-sign": "\ue23d", "s": "S", "sack-dollar": "\uf81d", @@ -1054,8 +1457,11 @@ "satellite": "\uf7bf", "satellite-dish": "\uf7c0", "scale-balanced": "\uf24e", + "balance-scale": "\uf24e", "scale-unbalanced": "\uf515", + "balance-scale-left": "\uf515", "scale-unbalanced-flip": "\uf516", + "balance-scale-right": "\uf516", "school": "\uf549", "school-circle-check": "\ue56b", "school-circle-exclamation": "\ue56c", @@ -1063,40 +1469,65 @@ "school-flag": "\ue56e", "school-lock": "\ue56f", "scissors": "\uf0c4", + "cut": "\uf0c4", "screwdriver": "\uf54a", "screwdriver-wrench": "\uf7d9", + "tools": "\uf7d9", "scroll": "\uf70e", "scroll-torah": "\uf6a0", + "torah": "\uf6a0", "sd-card": "\uf7c2", "section": "\ue447", "seedling": "\uf4d8", + "sprout": "\uf4d8", "server": "\uf233", "shapes": "\uf61f", + "triangle-circle-square": "\uf61f", "share": "\uf064", + "arrow-turn-right": "\uf064", + "mail-forward": "\uf064", "share-from-square": "\uf14d", + "share-square": "\uf14d", "share-nodes": "\uf1e0", + "share-alt": "\uf1e0", "sheet-plastic": "\ue571", "shekel-sign": "\uf20b", + "ils": "\uf20b", + "shekel": "\uf20b", + "sheqel": "\uf20b", + "sheqel-sign": "\uf20b", "shield": "\uf132", + "shield-blank": "\uf132", "shield-cat": "\ue572", "shield-dog": "\ue573", "shield-halved": "\uf3ed", + "shield-alt": "\uf3ed", "shield-heart": "\ue574", "shield-virus": "\ue06c", "ship": "\uf21a", "shirt": "\uf553", + "t-shirt": "\uf553", + "tshirt": "\uf553", "shoe-prints": "\uf54b", "shop": "\uf54f", + "store-alt": "\uf54f", "shop-lock": "\ue4a5", "shop-slash": "\ue070", + "store-alt-slash": "\ue070", "shower": "\uf2cc", "shrimp": "\ue448", "shuffle": "\uf074", + "random": "\uf074", "shuttle-space": "\uf197", + "space-shuttle": "\uf197", "sign-hanging": "\uf4d9", + "sign": "\uf4d9", "signal": "\uf012", + "signal-5": "\uf012", + "signal-perfect": "\uf012", "signature": "\uf5b7", "signs-post": "\uf277", + "map-signs": "\uf277", "sim-card": "\uf7c4", "sink": "\ue06d", "sitemap": "\uf0e8", @@ -1105,6 +1536,7 @@ "slash": "\uf715", "sleigh": "\uf7cc", "sliders": "\uf1de", + "sliders-h": "\uf1de", "smog": "\uf75f", "smoking": "\uf48d", "snowflake": "\uf2dc", @@ -1114,53 +1546,88 @@ "socks": "\uf696", "solar-panel": "\uf5ba", "sort": "\uf0dc", + "unsorted": "\uf0dc", "sort-down": "\uf0dd", + "sort-desc": "\uf0dd", "sort-up": "\uf0de", + "sort-asc": "\uf0de", "spa": "\uf5bb", "spaghetti-monster-flying": "\uf67b", + "pastafarianism": "\uf67b", "spell-check": "\uf891", "spider": "\uf717", "spinner": "\uf110", "splotch": "\uf5bc", "spoon": "\uf2e5", + "utensil-spoon": "\uf2e5", "spray-can": "\uf5bd", "spray-can-sparkles": "\uf5d0", + "air-freshener": "\uf5d0", "square": "\uf0c8", "square-arrow-up-right": "\uf14c", + "external-link-square": "\uf14c", "square-caret-down": "\uf150", + "caret-square-down": "\uf150", "square-caret-left": "\uf191", + "caret-square-left": "\uf191", "square-caret-right": "\uf152", + "caret-square-right": "\uf152", "square-caret-up": "\uf151", + "caret-square-up": "\uf151", "square-check": "\uf14a", + "check-square": "\uf14a", "square-envelope": "\uf199", + "envelope-square": "\uf199", "square-full": "\uf45c", "square-h": "\uf0fd", + "h-square": "\uf0fd", "square-minus": "\uf146", + "minus-square": "\uf146", "square-nfi": "\ue576", "square-parking": "\uf540", + "parking": "\uf540", "square-pen": "\uf14b", + "pen-square": "\uf14b", + "pencil-square": "\uf14b", "square-person-confined": "\ue577", "square-phone": "\uf098", + "phone-square": "\uf098", "square-phone-flip": "\uf87b", + "phone-square-alt": "\uf87b", "square-plus": "\uf0fe", + "plus-square": "\uf0fe", "square-poll-horizontal": "\uf682", + "poll-h": "\uf682", "square-poll-vertical": "\uf681", + "poll": "\uf681", "square-root-variable": "\uf698", + "square-root-alt": "\uf698", "square-rss": "\uf143", + "rss-square": "\uf143", "square-share-nodes": "\uf1e1", + "share-alt-square": "\uf1e1", "square-up-right": "\uf360", + "external-link-square-alt": "\uf360", "square-virus": "\ue578", "square-xmark": "\uf2d3", + "times-square": "\uf2d3", + "xmark-square": "\uf2d3", "staff-aesculapius": "\ue579", + "rod-asclepius": "\ue579", + "rod-snake": "\ue579", + "staff-snake": "\ue579", "stairs": "\ue289", "stamp": "\uf5bf", "star": "\uf005", "star-and-crescent": "\uf699", "star-half": "\uf089", "star-half-stroke": "\uf5c0", + "star-half-alt": "\uf5c0", "star-of-david": "\uf69a", "star-of-life": "\uf621", "sterling-sign": "\uf154", + "gbp": "\uf154", + "pound-sign": "\uf154", "stethoscope": "\uf0f1", "stop": "\uf04d", "stopwatch": "\uf2f2", @@ -1173,6 +1640,7 @@ "subscript": "\uf12c", "suitcase": "\uf0f2", "suitcase-medical": "\uf0fa", + "medkit": "\uf0fa", "suitcase-rolling": "\uf5c1", "sun": "\uf185", "sun-plant-wilt": "\ue57a", @@ -1183,33 +1651,61 @@ "t": "T", "table": "\uf0ce", "table-cells": "\uf00a", + "th": "\uf00a", "table-cells-large": "\uf009", + "th-large": "\uf009", "table-columns": "\uf0db", + "columns": "\uf0db", "table-list": "\uf00b", + "th-list": "\uf00b", "table-tennis-paddle-ball": "\uf45d", + "ping-pong-paddle-ball": "\uf45d", + "table-tennis": "\uf45d", "tablet": "\uf3fb", + "tablet-android": "\uf3fb", "tablet-button": "\uf10a", "tablet-screen-button": "\uf3fa", + "tablet-alt": "\uf3fa", "tablets": "\uf490", "tachograph-digital": "\uf566", + "digital-tachograph": "\uf566", "tag": "\uf02b", "tags": "\uf02c", "tape": "\uf4db", "tarp": "\ue57b", "tarp-droplet": "\ue57c", "taxi": "\uf1ba", + "cab": "\uf1ba", "teeth": "\uf62e", "teeth-open": "\uf62f", "temperature-arrow-down": "\ue03f", + "temperature-down": "\ue03f", "temperature-arrow-up": "\ue040", + "temperature-up": "\ue040", "temperature-empty": "\uf2cb", + "temperature-0": "\uf2cb", + "thermometer-0": "\uf2cb", + "thermometer-empty": "\uf2cb", "temperature-full": "\uf2c7", + "temperature-4": "\uf2c7", + "thermometer-4": "\uf2c7", + "thermometer-full": "\uf2c7", "temperature-half": "\uf2c9", + "temperature-2": "\uf2c9", + "thermometer-2": "\uf2c9", + "thermometer-half": "\uf2c9", "temperature-high": "\uf769", "temperature-low": "\uf76b", "temperature-quarter": "\uf2ca", + "temperature-1": "\uf2ca", + "thermometer-1": "\uf2ca", + "thermometer-quarter": "\uf2ca", "temperature-three-quarters": "\uf2c8", + "temperature-3": "\uf2c8", + "thermometer-3": "\uf2c8", + "thermometer-three-quarters": "\uf2c8", "tenge-sign": "\uf7d7", + "tenge": "\uf7d7", "tent": "\ue57d", "tent-arrow-down-to-line": "\ue57e", "tent-arrow-left-right": "\ue57f", @@ -1219,13 +1715,16 @@ "terminal": "\uf120", "text-height": "\uf034", "text-slash": "\uf87d", + "remove-format": "\uf87d", "text-width": "\uf035", "thermometer": "\uf491", "thumbs-down": "\uf165", "thumbs-up": "\uf164", "thumbtack": "\uf08d", + "thumb-tack": "\uf08d", "ticket": "\uf145", "ticket-simple": "\uf3ff", + "ticket-alt": "\uf3ff", "timeline": "\ue29c", "toggle-off": "\uf204", "toggle-on": "\uf205", @@ -1239,6 +1738,7 @@ "torii-gate": "\uf6a1", "tornado": "\uf76f", "tower-broadcast": "\uf519", + "broadcast-tower": "\uf519", "tower-cell": "\ue585", "tower-observation": "\ue586", "tractor": "\uf722", @@ -1247,15 +1747,23 @@ "trailer": "\ue041", "train": "\uf238", "train-subway": "\uf239", + "subway": "\uf239", "train-tram": "\uf7da", + "tram": "\uf7da", "transgender": "\uf225", + "transgender-alt": "\uf225", "trash": "\uf1f8", "trash-arrow-up": "\uf829", + "trash-restore": "\uf829", "trash-can": "\uf2ed", + "trash-alt": "\uf2ed", "trash-can-arrow-up": "\uf82a", + "trash-restore-alt": "\uf82a", "tree": "\uf1bb", "tree-city": "\ue587", "triangle-exclamation": "\uf071", + "exclamation-triangle": "\uf071", + "warning": "\uf071", "trophy": "\uf091", "trowel": "\ue589", "trowel-bricks": "\ue58a", @@ -1263,20 +1771,30 @@ "truck-arrow-right": "\ue58b", "truck-droplet": "\ue58c", "truck-fast": "\uf48b", + "shipping-fast": "\uf48b", "truck-field": "\ue58d", "truck-field-un": "\ue58e", "truck-front": "\ue2b7", "truck-medical": "\uf0f9", + "ambulance": "\uf0f9", "truck-monster": "\uf63b", "truck-moving": "\uf4df", "truck-pickup": "\uf63c", "truck-plane": "\ue58f", "truck-ramp-box": "\uf4de", + "truck-loading": "\uf4de", "tty": "\uf1e4", + "teletype": "\uf1e4", "turkish-lira-sign": "\ue2bb", + "try": "\ue2bb", + "turkish-lira": "\ue2bb", "turn-down": "\uf3be", + "level-down-alt": "\uf3be", "turn-up": "\uf3bf", + "level-up-alt": "\uf3bf", "tv": "\uf26c", + "television": "\uf26c", + "tv-alt": "\uf26c", "u": "U", "umbrella": "\uf0e9", "umbrella-beach": "\uf5ca", @@ -1284,28 +1802,40 @@ "universal-access": "\uf29a", "unlock": "\uf09c", "unlock-keyhole": "\uf13e", + "unlock-alt": "\uf13e", "up-down": "\uf338", + "arrows-alt-v": "\uf338", "up-down-left-right": "\uf0b2", + "arrows-alt": "\uf0b2", "up-long": "\uf30c", + "long-arrow-alt-up": "\uf30c", "up-right-and-down-left-from-center": "\uf424", + "expand-alt": "\uf424", "up-right-from-square": "\uf35d", + "external-link-alt": "\uf35d", "upload": "\uf093", "user": "\uf007", "user-astronaut": "\uf4fb", "user-check": "\uf4fc", "user-clock": "\uf4fd", "user-doctor": "\uf0f0", + "user-md": "\uf0f0", "user-gear": "\uf4fe", + "user-cog": "\uf4fe", "user-graduate": "\uf501", "user-group": "\uf500", + "user-friends": "\uf500", "user-injured": "\uf728", "user-large": "\uf406", + "user-alt": "\uf406", "user-large-slash": "\uf4fa", + "user-alt-slash": "\uf4fa", "user-lock": "\uf502", "user-minus": "\uf503", "user-ninja": "\uf504", "user-nurse": "\uf82f", "user-pen": "\uf4ff", + "user-edit": "\uf4ff", "user-plus": "\uf234", "user-secret": "\uf21b", "user-shield": "\uf505", @@ -1313,17 +1843,21 @@ "user-tag": "\uf507", "user-tie": "\uf508", "user-xmark": "\uf235", + "user-times": "\uf235", "users": "\uf0c0", "users-between-lines": "\ue591", "users-gear": "\uf509", + "users-cog": "\uf509", "users-line": "\ue592", "users-rays": "\ue593", "users-rectangle": "\ue594", "users-slash": "\ue073", "users-viewfinder": "\ue595", "utensils": "\uf2e7", + "cutlery": "\uf2e7", "v": "V", "van-shuttle": "\uf5b6", + "shuttle-van": "\uf5b6", "vault": "\ue2c5", "vector-square": "\uf5cb", "venus": "\uf221", @@ -1336,6 +1870,7 @@ "vial-virus": "\ue597", "vials": "\uf493", "video": "\uf03d", + "video-camera": "\uf03d", "video-slash": "\uf4e2", "vihara": "\uf6a7", "virus": "\ue074", @@ -1346,29 +1881,44 @@ "voicemail": "\uf897", "volcano": "\uf770", "volleyball": "\uf45f", + "volleyball-ball": "\uf45f", "volume-high": "\uf028", + "volume-up": "\uf028", "volume-low": "\uf027", + "volume-down": "\uf027", "volume-off": "\uf026", "volume-xmark": "\uf6a9", + "volume-mute": "\uf6a9", + "volume-times": "\uf6a9", "vr-cardboard": "\uf729", "w": "W", "walkie-talkie": "\uf8ef", "wallet": "\uf555", "wand-magic": "\uf0d0", + "magic": "\uf0d0", "wand-magic-sparkles": "\ue2ca", + "magic-wand-sparkles": "\ue2ca", "wand-sparkles": "\uf72b", "warehouse": "\uf494", "water": "\uf773", "water-ladder": "\uf5c5", + "ladder-water": "\uf5c5", + "swimming-pool": "\uf5c5", "wave-square": "\uf83e", "weight-hanging": "\uf5cd", "weight-scale": "\uf496", + "weight": "\uf496", "wheat-awn": "\ue2cd", + "wheat-alt": "\ue2cd", "wheat-awn-circle-exclamation": "\ue598", "wheelchair": "\uf193", "wheelchair-move": "\ue2ce", + "wheelchair-alt": "\ue2ce", "whiskey-glass": "\uf7a0", + "glass-whiskey": "\uf7a0", "wifi": "\uf1eb", + "wifi-3": "\uf1eb", + "wifi-strong": "\uf1eb", "wind": "\uf72e", "window-maximize": "\uf2d0", "window-minimize": "\uf2d1", @@ -1376,20 +1926,32 @@ "wine-bottle": "\uf72f", "wine-glass": "\uf4e3", "wine-glass-empty": "\uf5ce", + "wine-glass-alt": "\uf5ce", "won-sign": "\uf159", + "krw": "\uf159", + "won": "\uf159", "worm": "\ue599", "wrench": "\uf0ad", "x": "X", "x-ray": "\uf497", "xmark": "\uf00d", + "close": "\uf00d", + "multiply": "\uf00d", + "remove": "\uf00d", + "times": "\uf00d", "xmarks-lines": "\ue59a", "y": "Y", "yen-sign": "\uf157", + "cny": "\uf157", + "jpy": "\uf157", + "rmb": "\uf157", + "yen": "\uf157", "yin-yang": "\uf6ad", "z": "Z" }, "brands": { "42-group": "\ue080", + "innosoft": "\ue080", "500px": "\uf26e", "accessible-icon": "\uf368", "accusoft": "\uf369", @@ -1541,6 +2103,8 @@ "flipboard": "\uf44d", "fly": "\uf417", "font-awesome": "\uf2b4", + "font-awesome-flag": "\uf2b4", + "font-awesome-logo-full": "\uf2b4", "fonticons": "\uf280", "fonticons-fi": "\uf3a2", "fort-awesome": "\uf286", @@ -1644,6 +2208,7 @@ "mdb": "\uf8ca", "medapps": "\uf3c6", "medium": "\uf23a", + "medium-m": "\uf23a", "medrt": "\uf3c8", "meetup": "\uf2e0", "megaport": "\uf5a3", @@ -1745,8 +2310,10 @@ "skyatlas": "\uf216", "skype": "\uf17e", "slack": "\uf198", + "slack-hash": "\uf198", "slideshare": "\uf1e7", "snapchat": "\uf2ab", + "snapchat-ghost": "\uf2ab", "snapchat-square": "\uf2ad", "soundcloud": "\uf1be", "sourcetree": "\uf7d3", @@ -1755,6 +2322,7 @@ "spotify": "\uf1bc", "square-font-awesome": "\uf425", "square-font-awesome-stroke": "\uf35c", + "font-awesome-alt": "\uf35c", "squarespace": "\uf5be", "stack-exchange": "\uf18d", "stack-overflow": "\uf16c", @@ -1777,6 +2345,7 @@ "symfony": "\uf83d", "teamspeak": "\uf4f9", "telegram": "\uf2c6", + "telegram-plane": "\uf2c6", "tencent-weibo": "\uf1d5", "the-red-yeti": "\uf69d", "themeco": "\uf5c6", @@ -1827,6 +2396,7 @@ "wikipedia-w": "\uf266", "windows": "\uf17a", "wirsindhandwerk": "\ue2d0", + "wsh": "\ue2d0", "wix": "\uf5cf", "wizards-of-the-coast": "\uf730", "wodu": "\ue088", @@ -1854,7 +2424,10 @@ }, "regular": { "address-book": "\uf2b9", + "contact-book": "\uf2b9", "address-card": "\uf2bb", + "contact-card": "\uf2bb", + "vcard": "\uf2bb", "bell": "\uf0f3", "bell-slash": "\uf1f6", "bookmark": "\uf02e", @@ -1862,10 +2435,13 @@ "calendar": "\uf133", "calendar-check": "\uf274", "calendar-days": "\uf073", + "calendar-alt": "\uf073", "calendar-minus": "\uf272", "calendar-plus": "\uf271", "calendar-xmark": "\uf273", + "calendar-times": "\uf273", "chart-bar": "\uf080", + "bar-chart": "\uf080", "chess-bishop": "\uf43a", "chess-king": "\uf43f", "chess-knight": "\uf441", @@ -1874,89 +2450,152 @@ "chess-rook": "\uf447", "circle": "\uf111", "circle-check": "\uf058", + "check-circle": "\uf058", "circle-dot": "\uf192", + "dot-circle": "\uf192", "circle-down": "\uf358", + "arrow-alt-circle-down": "\uf358", "circle-left": "\uf359", + "arrow-alt-circle-left": "\uf359", "circle-pause": "\uf28b", + "pause-circle": "\uf28b", "circle-play": "\uf144", + "play-circle": "\uf144", "circle-question": "\uf059", + "question-circle": "\uf059", "circle-right": "\uf35a", + "arrow-alt-circle-right": "\uf35a", "circle-stop": "\uf28d", + "stop-circle": "\uf28d", "circle-up": "\uf35b", + "arrow-alt-circle-up": "\uf35b", "circle-user": "\uf2bd", + "user-circle": "\uf2bd", "circle-xmark": "\uf057", + "times-circle": "\uf057", + "xmark-circle": "\uf057", "clipboard": "\uf328", "clock": "\uf017", + "clock-four": "\uf017", "clone": "\uf24d", "closed-captioning": "\uf20a", "comment": "\uf075", "comment-dots": "\uf4ad", + "commenting": "\uf4ad", "comments": "\uf086", "compass": "\uf14e", "copy": "\uf0c5", "copyright": "\uf1f9", "credit-card": "\uf09d", + "credit-card-alt": "\uf09d", "envelope": "\uf0e0", "envelope-open": "\uf2b6", "eye": "\uf06e", "eye-slash": "\uf070", "face-angry": "\uf556", + "angry": "\uf556", "face-dizzy": "\uf567", + "dizzy": "\uf567", "face-flushed": "\uf579", + "flushed": "\uf579", "face-frown": "\uf119", + "frown": "\uf119", "face-frown-open": "\uf57a", + "frown-open": "\uf57a", "face-grimace": "\uf57f", + "grimace": "\uf57f", "face-grin": "\uf580", + "grin": "\uf580", "face-grin-beam": "\uf582", + "grin-beam": "\uf582", "face-grin-beam-sweat": "\uf583", + "grin-beam-sweat": "\uf583", "face-grin-hearts": "\uf584", + "grin-hearts": "\uf584", "face-grin-squint": "\uf585", + "grin-squint": "\uf585", "face-grin-squint-tears": "\uf586", + "grin-squint-tears": "\uf586", "face-grin-stars": "\uf587", + "grin-stars": "\uf587", "face-grin-tears": "\uf588", + "grin-tears": "\uf588", "face-grin-tongue": "\uf589", + "grin-tongue": "\uf589", "face-grin-tongue-squint": "\uf58a", + "grin-tongue-squint": "\uf58a", "face-grin-tongue-wink": "\uf58b", + "grin-tongue-wink": "\uf58b", "face-grin-wide": "\uf581", + "grin-alt": "\uf581", "face-grin-wink": "\uf58c", + "grin-wink": "\uf58c", "face-kiss": "\uf596", + "kiss": "\uf596", "face-kiss-beam": "\uf597", + "kiss-beam": "\uf597", "face-kiss-wink-heart": "\uf598", + "kiss-wink-heart": "\uf598", "face-laugh": "\uf599", + "laugh": "\uf599", "face-laugh-beam": "\uf59a", + "laugh-beam": "\uf59a", "face-laugh-squint": "\uf59b", + "laugh-squint": "\uf59b", "face-laugh-wink": "\uf59c", + "laugh-wink": "\uf59c", "face-meh": "\uf11a", + "meh": "\uf11a", "face-meh-blank": "\uf5a4", + "meh-blank": "\uf5a4", "face-rolling-eyes": "\uf5a5", + "meh-rolling-eyes": "\uf5a5", "face-sad-cry": "\uf5b3", + "sad-cry": "\uf5b3", "face-sad-tear": "\uf5b4", + "sad-tear": "\uf5b4", "face-smile": "\uf118", + "smile": "\uf118", "face-smile-beam": "\uf5b8", + "smile-beam": "\uf5b8", "face-smile-wink": "\uf4da", + "smile-wink": "\uf4da", "face-surprise": "\uf5c2", + "surprise": "\uf5c2", "face-tired": "\uf5c8", + "tired": "\uf5c8", "file": "\uf15b", "file-audio": "\uf1c7", "file-code": "\uf1c9", "file-excel": "\uf1c3", "file-image": "\uf1c5", "file-lines": "\uf15c", + "file-alt": "\uf15c", + "file-text": "\uf15c", "file-pdf": "\uf1c1", "file-powerpoint": "\uf1c4", "file-video": "\uf1c8", "file-word": "\uf1c2", "file-zipper": "\uf1c6", + "file-archive": "\uf1c6", "flag": "\uf024", "floppy-disk": "\uf0c7", + "save": "\uf0c7", "folder": "\uf07b", + "folder-blank": "\uf07b", "folder-closed": "\ue185", "folder-open": "\uf07c", "font-awesome": "\uf2b4", + "font-awesome-flag": "\uf2b4", + "font-awesome-logo-full": "\uf2b4", "futbol": "\uf1e3", + "futbol-ball": "\uf1e3", + "soccer-ball": "\uf1e3", "gem": "\uf3a5", "hand": "\uf256", + "hand-paper": "\uf256", "hand-back-fist": "\uf255", + "hand-rock": "\uf255", "hand-lizard": "\uf258", "hand-peace": "\uf25b", "hand-point-down": "\uf0a7", @@ -1968,11 +2607,17 @@ "hand-spock": "\uf259", "handshake": "\uf2b5", "hard-drive": "\uf0a0", + "hdd": "\uf0a0", "heart": "\uf004", "hospital": "\uf0f8", + "hospital-alt": "\uf0f8", + "hospital-wide": "\uf0f8", "hourglass": "\uf254", + "hourglass-2": "\uf254", + "hourglass-half": "\uf254", "id-badge": "\uf2c1", "id-card": "\uf2c2", + "drivers-license": "\uf2c2", "image": "\uf03e", "images": "\uf302", "keyboard": "\uf11c", @@ -1981,36 +2626,55 @@ "lightbulb": "\uf0eb", "map": "\uf279", "message": "\uf27a", + "comment-alt": "\uf27a", "money-bill-1": "\uf3d1", + "money-bill-alt": "\uf3d1", "moon": "\uf186", "newspaper": "\uf1ea", "note-sticky": "\uf249", + "sticky-note": "\uf249", "object-group": "\uf247", "object-ungroup": "\uf248", "paper-plane": "\uf1d8", "paste": "\uf0ea", + "file-clipboard": "\uf0ea", "pen-to-square": "\uf044", + "edit": "\uf044", "rectangle-list": "\uf022", + "list-alt": "\uf022", "rectangle-xmark": "\uf410", + "rectangle-times": "\uf410", + "times-rectangle": "\uf410", + "window-close": "\uf410", "registered": "\uf25d", "share-from-square": "\uf14d", + "share-square": "\uf14d", "snowflake": "\uf2dc", "square": "\uf0c8", "square-caret-down": "\uf150", + "caret-square-down": "\uf150", "square-caret-left": "\uf191", + "caret-square-left": "\uf191", "square-caret-right": "\uf152", + "caret-square-right": "\uf152", "square-caret-up": "\uf151", + "caret-square-up": "\uf151", "square-check": "\uf14a", + "check-square": "\uf14a", "square-full": "\uf45c", "square-minus": "\uf146", + "minus-square": "\uf146", "square-plus": "\uf0fe", + "plus-square": "\uf0fe", "star": "\uf005", "star-half": "\uf089", "star-half-stroke": "\uf5c0", + "star-half-alt": "\uf5c0", "sun": "\uf185", "thumbs-down": "\uf165", "thumbs-up": "\uf164", "trash-can": "\uf2ed", + "trash-alt": "\uf2ed", "user": "\uf007", "window-maximize": "\uf2d0", "window-minimize": "\uf2d1", diff --git a/pywaffle/waffle.py b/pywaffle/waffle.py index 12e40b5..b1cccad 100644 --- a/pywaffle/waffle.py +++ b/pywaffle/waffle.py @@ -9,12 +9,8 @@ import matplotlib.font_manager as fm from matplotlib.axes import Axes from matplotlib.figure import Figure -from matplotlib.legend_handler import HandlerBase from matplotlib.patches import Patch, Rectangle from matplotlib.pyplot import cm -from matplotlib.text import Text - -from pywaffle.fontawesome import FONTAWESOME_FILES METHOD_MAPPING = { "float": lambda a, b: a / b, @@ -41,7 +37,9 @@ def round_up_to_multiple(x: int, base: int) -> int: return base * math.ceil(x / base) -def array_resize(array: Union[Tuple, List], length: int, array_len: int = None) -> Union[Tuple, List]: +def array_resize( + array: Union[Tuple, List], length: int, array_len: int = None +) -> Union[Tuple, List]: """ Resize array to given length. If the array is shorter than given length, repeat the array; If the array is longer than the length, trim the array. @@ -71,57 +69,6 @@ def flip_lines(matrix: Iterable[Tuple[int, int]], base: int) -> Tuple[int, int]: yield from line if line_number % 2 == 0 else line[::-1] -class TextLegendBase: - def __init__(self, text, color, **kwargs): - self.text = text - self.color = color - self.kwargs = kwargs - - -class SolidTextLegend(TextLegendBase): - def __init__(self, text, color, **kwargs): - super().__init__(text, color, **kwargs) - - -class RegularTextLegend(TextLegendBase): - def __init__(self, text, color, **kwargs): - super().__init__(text, color, **kwargs) - - -class BrandsTextLegend(TextLegendBase): - def __init__(self, text, color, **kwargs): - super().__init__(text, color, **kwargs) - - -LEGENDSTYLE = {"solid": SolidTextLegend, "regular": RegularTextLegend, "brands": BrandsTextLegend} - - -class TextLegendHandler(HandlerBase): - def __init__(self, font_file): - super().__init__() - self.font_file = font_file - - def create_artists(self, legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans): - x = xdescent + width / 2.0 - y = ydescent + height / 2.0 - kwargs = { - "horizontalalignment": "center", - "verticalalignment": "center", - "color": orig_handle.color, - "fontproperties": fm.FontProperties(fname=self.font_file, size=fontsize), - } - kwargs.update(orig_handle.kwargs) - annotation = Text(x, y, orig_handle.text, **kwargs) - return [annotation] - - -HANDLER_MAP = { - SolidTextLegend: TextLegendHandler(FONTAWESOME_FILES["solid"]), - RegularTextLegend: TextLegendHandler(FONTAWESOME_FILES["regular"]), - BrandsTextLegend: TextLegendHandler(FONTAWESOME_FILES["brands"]), -} - - class Waffle(Figure): """ @@ -306,7 +253,9 @@ class Waffle(Figure): def __init__(self, *args, **kwargs): #:All Waffle-specific arguments with default values - self.fig_args: Dict = self._kwarg_processor(kwargs=kwargs, default_values=self._default_parameters) + self.fig_args: Dict = self._kwarg_processor( + kwargs=kwargs, default_values=self._default_parameters + ) super().__init__(*args, **kwargs) #:Standardized arguments of all subplots @@ -347,7 +296,12 @@ def _kwarg_processor(kwargs: Dict, default_values: Dict) -> Dict: @staticmethod def _block_arranger( - rows: int, columns: int, row_order: int, column_order: int, is_vertical: bool, is_snake: bool + rows: int, + columns: int, + row_order: int, + column_order: int, + is_vertical: bool, + is_snake: bool, ) -> Iterator[Tuple[int, int]]: """ Given the size of a matrix and starting point, return how to go through every element in the matrix @@ -382,7 +336,9 @@ def _parameter_validation(self, par: Dict): # - rounding_rule if par["rounding_rule"] not in ("nearest", "ceil", "floor"): - raise ValueError("Argument rounding_rule should be one of nearest, ceil or floor.") + raise ValueError( + "Argument rounding_rule should be one of nearest, ceil or floor." + ) # - values if len(par["values"]) == 0: @@ -425,7 +381,10 @@ def make_waffle(cls, ax: Axes, **kwargs): w = cls.__new__(cls) w._make_single_waffle( - ax=ax, plot_args=cls._kwarg_processor(kwargs=kwargs, default_values=cls._default_parameters) + ax=ax, + plot_args=cls._kwarg_processor( + kwargs=kwargs, default_values=cls._default_parameters + ), ) def _make_single_waffle(self, ax: Axes, plot_args: Dict, fig_args: Dict = {}): @@ -457,8 +416,12 @@ def _make_single_waffle(self, ax: Axes, plot_args: Dict, fig_args: Dict = {}): # if columns is given, rows is not elif _pa["rows"] is None: if _pa["block_arranging_style"] == "new-line" and _pa["vertical"]: - block_per_cat = [round_up_to_multiple(i, base=_pa["columns"]) for i in _pa["values"]] - colored_block_per_cat = [division(v, 1, method=_pa["rounding_rule"]) for v in _pa["values"]] + block_per_cat = [ + round_up_to_multiple(i, base=_pa["columns"]) for i in _pa["values"] + ] + colored_block_per_cat = [ + division(v, 1, method=_pa["rounding_rule"]) for v in _pa["values"] + ] else: block_per_cat = colored_block_per_cat = [ division(v, 1, method=_pa["rounding_rule"]) for v in _pa["values"] @@ -467,8 +430,12 @@ def _make_single_waffle(self, ax: Axes, plot_args: Dict, fig_args: Dict = {}): # if rows is given, columns is not elif _pa["columns"] is None: if _pa["block_arranging_style"] == "new-line" and not _pa["vertical"]: - block_per_cat = [round_up_to_multiple(i, base=_pa["rows"]) for i in _pa["values"]] - colored_block_per_cat = [division(v, 1, method=_pa["rounding_rule"]) for v in _pa["values"]] + block_per_cat = [ + round_up_to_multiple(i, base=_pa["rows"]) for i in _pa["values"] + ] + colored_block_per_cat = [ + division(v, 1, method=_pa["rounding_rule"]) for v in _pa["values"] + ] else: block_per_cat = colored_block_per_cat = [ division(v, 1, method=_pa["rounding_rule"]) for v in _pa["values"] @@ -487,13 +454,22 @@ def _make_single_waffle(self, ax: Axes, plot_args: Dict, fig_args: Dict = {}): # Absolute height of the plot figure_height = 1 - block_y_length = figure_height / (_pa["rows"] + _pa["rows"] * _pa["interval_ratio_y"] - _pa["interval_ratio_y"]) + block_y_length = figure_height / ( + _pa["rows"] + + _pa["rows"] * _pa["interval_ratio_y"] + - _pa["interval_ratio_y"] + ) block_x_length = _pa["block_aspect_ratio"] * block_y_length # Define the limit of X, Y axis ax.axis( xmin=0, - xmax=(_pa["columns"] + _pa["columns"] * _pa["interval_ratio_x"] - _pa["interval_ratio_x"]) * block_x_length, + xmax=( + _pa["columns"] + + _pa["columns"] * _pa["interval_ratio_x"] + - _pa["interval_ratio_x"] + ) + * block_x_length, ymin=0, ymax=figure_height, ) @@ -502,11 +478,16 @@ def _make_single_waffle(self, ax: Axes, plot_args: Dict, fig_args: Dict = {}): if not _pa["colors"]: default_colors = cm.get_cmap(_pa["cmap_name"]).colors default_color_num = cm.get_cmap(_pa["cmap_name"]).N - _pa["colors"] = array_resize(array=default_colors, length=self.values_len, array_len=default_color_num) + _pa["colors"] = array_resize( + array=default_colors, + length=self.values_len, + array_len=default_color_num, + ) # Set icons if _pa["icons"]: from pywaffle.fontawesome_mapping import icons + from pywaffle.fontawesome_handler import fontawesome_files # icon_size should be replaced with font_size in the future if _pa["icon_size"]: @@ -518,7 +499,7 @@ def _make_single_waffle(self, ax: Axes, plot_args: Dict, fig_args: Dict = {}): if isinstance(_pa["icon_style"], str): _pa["icon_style"] = [_pa["icon_style"].lower()] * self.values_len elif set(_pa["icon_style"]) - set(icons.keys()): - raise KeyError("icon_style should be one of {}".format(", ".join(icons.keys()))) + raise KeyError(f"icon_style should be one of {', '.join(icons.keys())}") # If icons is a string, convert it into a list of same icon. The length is the value's length # '\uf26e' -> ['\uf26e', '\uf26e', '\uf26e', ] @@ -530,12 +511,15 @@ def _make_single_waffle(self, ax: Axes, plot_args: Dict, fig_args: Dict = {}): # Replace icon name with Unicode symbols in parameter icons _pa["icons"] = [ - icons[icon_style][icon_name] for icon_name, icon_style in zip(_pa["icons"], _pa["icon_style"]) + icons[icon_style][icon_name] + for icon_name, icon_style in zip(_pa["icons"], _pa["icon_style"]) ] # Calculate icon size based on the block size tx, ty = ax.transData.transform([(0, 0), (0, block_x_length)]) - prop = fm.FontProperties(size=_pa["font_size"] or int((ty[1] - tx[1]) / 16 * 12)) + prop = fm.FontProperties( + size=_pa["font_size"] or int((ty[1] - tx[1]) / 16 * 12) + ) elif _pa["characters"]: # If characters is a string, convert it into a list of same characters. It's length is the value's length @@ -547,7 +531,10 @@ def _make_single_waffle(self, ax: Axes, plot_args: Dict, fig_args: Dict = {}): # Calculate icon size based on the block size tx, ty = ax.transData.transform([(0, 0), (0, block_x_length)]) - prop = fm.FontProperties(size=_pa["font_size"] or int((ty[1] - tx[1]) / 16 * 12), fname=_pa["font_file"]) + prop = fm.FontProperties( + size=_pa["font_size"] or int((ty[1] - tx[1]) / 16 * 12), + fname=_pa["font_file"], + ) # Plot blocks class_index = 0 @@ -586,7 +573,7 @@ def _make_single_waffle(self, ax: Axes, plot_args: Dict, fig_args: Dict = {}): y = y_full * row if _pa["icons"]: - prop.set_file(FONTAWESOME_FILES[_pa["icon_style"][class_index]]) + prop.set_file(fontawesome_files[_pa["icon_style"][class_index]]) ax.text( x=x, y=y, @@ -603,7 +590,14 @@ def _make_single_waffle(self, ax: Axes, plot_args: Dict, fig_args: Dict = {}): fontproperties=prop, ) else: - ax.add_artist(Rectangle(xy=(x, y), width=block_x_length, height=block_y_length, color=color)) + ax.add_artist( + Rectangle( + xy=(x, y), + width=block_x_length, + height=block_y_length, + color=color, + ) + ) block_index += 1 this_cat_block_count += 1 @@ -621,14 +615,22 @@ def _make_single_waffle(self, ax: Axes, plot_args: Dict, fig_args: Dict = {}): if _pa["labels"] or "labels" in _pa["legend"]: labels = _pa["labels"] or _pa["legend"].get("labels") if _pa["icons"] and _pa["icon_legend"] is True: + from pywaffle.fontawesome_handler import ( + legend_handler_style_mapping, + legend_style_class_mapping, + ) + + _pa["legend"]["handles"] = [ + legend_style_class_mapping[style](color=color, text=icon) + for color, icon, style in zip( + _pa["colors"], _pa["icons"], _pa["icon_style"] + ) + ] + _pa["legend"]["handler_map"] = legend_handler_style_mapping + elif not _pa['legend'].get('handles'): _pa["legend"]["handles"] = [ - LEGENDSTYLE[style](color=color, text=icon) - for color, icon, style in zip(_pa["colors"], _pa["icons"], _pa["icon_style"]) + Patch(color=c, label=str(l)) for c, l in zip(_pa["colors"], labels) ] - _pa["legend"]["handler_map"] = HANDLER_MAP - # elif not _pa['legend'].get('handles'): - elif "handles" not in _pa["legend"]: - _pa["legend"]["handles"] = [Patch(color=c, label=str(l)) for c, l in zip(_pa["colors"], labels)] # labels is an alias of legend['labels'] if "labels" not in _pa["legend"] and _pa["labels"]: diff --git a/requirements.txt b/requirements.txt index 6ccafc3..f36e63e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1 +1,3 @@ +fontawesomefree matplotlib +pandas diff --git a/requirements_dev.txt b/requirements_dev.txt deleted file mode 100644 index 51937e9..0000000 --- a/requirements_dev.txt +++ /dev/null @@ -1,5 +0,0 @@ -matplotlib -myst-parser -pandas -requests -sphinx diff --git a/docs/requirements.txt b/requirements_doc.txt similarity index 100% rename from docs/requirements.txt rename to requirements_doc.txt diff --git a/scripts/fontawesome_mapping_generator.py b/scripts/fontawesome_mapping_generator.py new file mode 100644 index 0000000..63367b2 --- /dev/null +++ b/scripts/fontawesome_mapping_generator.py @@ -0,0 +1,57 @@ +# This script generates Font Awesome icon mapping file pywaffle/fontawesome_mapping.py +# It's called in setup.py, and it runs as post-install command + +import inspect +import json +import subprocess +import sys +from collections import defaultdict +from pathlib import Path + +import fontawesomefree + +INDENT = " " * 4 +FONTAWESOME_PACKAGE_NAME = "fontawesomefree" + + +def main(): + # Check installed Font Awesome version with pip + result = subprocess.run( + [sys.executable, "-m", "pip", "show", FONTAWESOME_PACKAGE_NAME], + stdout=subprocess.PIPE, + text=True, + ) + pip_show = result.stdout + fa_pip_version = pip_show.split("\n")[1].lstrip("Version: ") + + # Get font meta data from the package + package_path = Path(inspect.getsourcefile(fontawesomefree)) + icons_json_path = ( + package_path.parent / "static/fontawesomefree/metadata" / "icons.json" + ) + with open(icons_json_path, "r") as f: + icons = json.load(f) + + # Group icons by style + mapping = defaultdict(dict) + for font_name, font_meta in icons.items(): + for style in font_meta["styles"]: + mapping[style][font_name] = chr(int(font_meta["unicode"], 16)) + + for alias in font_meta.get("aliases", {}).get("names", []): + if alias in mapping[style].keys(): + print(f"Font {alias} existed. This mapping might contain issues!") + mapping[style][alias] = chr(int(font_meta["unicode"], 16)) + + with open( + Path(__file__).parent.parent.absolute() / "pywaffle/fontawesome_mapping.py", "w" + ) as file: + file.write(f"# For Font Awesome version: {fa_pip_version}\n") + file.write("\n") + file.write("icons = ") + file.write(json.dumps(mapping, indent=4)) + file.write("\n") + + +if __name__ == "__main__": + main() diff --git a/scripts/get_fontawesome.py b/scripts/get_fontawesome.py deleted file mode 100644 index 1dd9169..0000000 --- a/scripts/get_fontawesome.py +++ /dev/null @@ -1,35 +0,0 @@ -# This script generates Font Awesome icon mapping file pywaffle/fontawesome_mapping.py -# To run it: -# python3 scripts/get_fontawesome.py - -# The font files in folder font need to be updated manually when updating FontAwesome - -import json -import requests - -INDENT = " " * 4 -VERSION = "6.1.1" -URI = "https://raw.githubusercontent.com/FortAwesome/Font-Awesome/6.x/metadata/icons.json" - - -def main(): - icons = json.loads(requests.get(URI).text) - - # Group icons by style - mapping = {} - for k, v in icons.items(): - for style_name in v["styles"]: - if style_name not in mapping.keys(): - mapping[style_name] = {} - mapping[style_name][k] = chr(int(v["unicode"], 16)) - - with open("pywaffle/fontawesome_mapping.py", "w") as file: - file.write("# For Font Awesome version: {0}\n".format(VERSION)) - file.write("\n") - file.write("icons = ") - file.write(json.dumps(mapping, indent=4)) - file.write("\n") - - -if __name__ == "__main__": - main() diff --git a/setup.py b/setup.py index 55f9380..18b974d 100644 --- a/setup.py +++ b/setup.py @@ -1,13 +1,22 @@ #!/usr/bin/python # -*-coding: utf-8 -*- -from os import path +from pathlib import Path from setuptools import setup +from setuptools.command.install import install -here = path.abspath(path.dirname(__file__)) +from scripts import fontawesome_mapping_generator -with open('README_pypi.rst') as f: + +class InstallCommand(install): + # Generate Font Awesome mapping file after install, so it can fit multiple versions + def run(self): + install.run(self) + fontawesome_mapping_generator.main() + + +with open(Path(__file__).parent.absolute() / "README_pypi.rst") as f: long_description = f.read() setup( @@ -15,28 +24,29 @@ description="PyWaffle is an open source, MIT-licensed Python package for plotting waffle charts.", keywords="matplotlib waffle chart pie plot data visualization", long_description=long_description, - license='MIT', + license="MIT", author="Guangyang Li", author_email="mail@guangyangli.com", url="https://github.com/gyli/PyWaffle", - packages=['pywaffle'], - install_requires=['matplotlib'], + packages=["pywaffle"], + install_requires=["fontawesomefree", "matplotlib"], + cmdclass={"install": InstallCommand}, classifiers=[ - 'Development Status :: 5 - Production/Stable', - 'Intended Audience :: Developers', - 'Topic :: Scientific/Engineering :: Visualization', - 'License :: OSI Approved :: MIT License', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', - 'Programming Language :: Python :: 3.7', - 'Programming Language :: Python :: 3.8', - 'Programming Language :: Python :: 3.9', - 'Programming Language :: Python :: 3.10', + "Development Status :: 5 - Production/Stable", + 'Environment :: Console', + "Intended Audience :: Developers", + "Intended Audience :: Education", + "Intended Audience :: Information Technology", + "Intended Audience :: Science/Research", + "Topic :: Scientific/Engineering :: Information Analysis", + "Topic :: Scientific/Engineering :: Mathematics", + "Topic :: Scientific/Engineering :: Visualization", + "License :: OSI Approved :: MIT License", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", + "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", ], - package_data={ - 'pywaffle': [ - 'fontawesome/*', - ] - }, - include_package_data=True ) diff --git a/tests/test_fontawesome.py b/tests/test_fontawesome.py new file mode 100644 index 0000000..bbdb2db --- /dev/null +++ b/tests/test_fontawesome.py @@ -0,0 +1,22 @@ +#!/usr/bin/python +# -*-coding: utf-8 -*- + +import unittest + +from pywaffle.fontawesome_handler import font_file_finder + + +class TestUtilities(unittest.TestCase): + def test_font_file_finder(self): + font_file_mapping = font_file_finder() + self.assertEqual( + font_file_mapping["brands"].name.endswith("Brands-Regular-400.otf"), True + ) + self.assertIn( + "/fontawesomefree/static/fontawesomefree/otfs/", + str(font_file_mapping["brands"].resolve()), + ) + + +if __name__ == "__main__": + unittest.main()