diff --git a/docs/hanamicloth_book.datasets.html b/docs/hanamicloth_book.datasets.html index 4f41818..c0340ba 100644 --- a/docs/hanamicloth_book.datasets.html +++ b/docs/hanamicloth_book.datasets.html @@ -157,6 +157,12 @@ 3  Walkthrough + + diff --git a/docs/hanamicloth_book.plotlycloth_walkthrough.html b/docs/hanamicloth_book.plotlycloth_walkthrough.html new file mode 100644 index 0000000..447b654 --- /dev/null +++ b/docs/hanamicloth_book.plotlycloth_walkthrough.html @@ -0,0 +1,1474 @@ + + + + + + + + + +Hanamicloth – 4  Plotlycloth Walkthrough (experimental 🛠) + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ +
+ + +
+ + + +
+ +
+
+

4  Plotlycloth Walkthrough (experimental 🛠)

+
+ + + +
+ + + + +
+ + + +
+ + + + + + + + +

Plotlycloth is a Clojure API for creating Plotly.js plots through layered pipelines. It is part of the Hanamicloth library.

+

Here, we provide a walkthrough of the API.

+

🛠 This part of Hanamicloth is still in experimental stage. Some of the details will change soon. Feedback and comments will help.

+

Soon, we will provide more in-depth explanations in additional chapters.

+
+

4.1 Setup

+

For this tutorial, we require:

+ +
+
(ns hanamicloth-book.plotlycloth-walkthrough
+  (:require [scicloj.hanamicloth.v1.plotlycloth :as ploclo]
+            [tablecloth.api :as tc]
+            [tech.v3.datatype.datetime :as datetime]
+            [tech.v3.dataset.print :as print]
+            [scicloj.kindly.v4.kind :as kind]
+            [clojure.string :as str]
+            [scicloj.kindly.v4.api :as kindly]
+            [hanamicloth-book.datasets :as datasets]))
+
+
+
+

4.2 Basic usage

+

Plotlycloth plots are created by passing datasets to a pipeline of layer functions.

+

Additional parameters to the functions are passed as maps. By convention, the map keys begin with = (e.g., :=color).

+

For example, let us plot a scatterplot (a layer of points) of 10 random items from the Iris dataset.

+
+
(-> datasets/iris
+    (tc/random 10 {:seed 1})
+    (ploclo/layer-point
+     {:=x :sepal-width
+      :=y :sepal-length
+      :=color :species
+      :=mark-size 20
+      :=mark-opacity 0.6}))
+
+
+
+
+

4.3 Templates and parameters

+

(💡 You do neet need to understand these details for basic usage.)

+

Technically, the parameter maps contain Hanami substitution keys, which means they are processed by a simple set of rules, but you do not need to understand what this means yet.

+

The layer functions return a Hanami template. Let us print the resulting structure of the previous plot.

+
+
(def example1
+  (-> datasets/iris
+      (tc/random 10 {:seed 1})
+      (ploclo/layer-point
+       {:=x :sepal-width
+        :=y :sepal-length
+        :=color :species
+        :=mark-size 20
+        :=mark-opacity 0.6})))
+
+
+
(kind/pprint example1)
+
+
+
{:data :=traces,
+ :layout :=layout,
+ :aerial.hanami.templates/defaults
+ {:=x0 :com.rpl.specter.impl/NONE,
+  :=y-type
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=x0-after-stat :=x0,
+  :=layers
+  [{:y :=y-after-stat,
+    :trace-base {:mode :=mode, :type :=type, :opacity :=mark-opacity},
+    :color-type :=color-type,
+    :group :=group,
+    :color :=color,
+    :mark :=mark,
+    :x-title :=x-title,
+    :name :=name,
+    :y1 :=y1-after-stat,
+    :size :=size,
+    :size-type :=size-type,
+    :aerial.hanami.templates/defaults
+    {:=x0 :com.rpl.specter.impl/NONE,
+     :=y-type
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=x0-after-stat :=x0,
+     :=layers [],
+     :=x1 :com.rpl.specter.impl/NONE,
+     :=title :com.rpl.specter.impl/NONE,
+     :=y1 :com.rpl.specter.impl/NONE,
+     :=y-type-after-stat
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=height :com.rpl.specter.impl/NONE,
+     :=name :com.rpl.specter.impl/NONE,
+     :=mark-opacity 0.6,
+     :=inferred-group
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=mode
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=y-title :com.rpl.specter.impl/NONE,
+     :=size :com.rpl.specter.impl/NONE,
+     :=group :=inferred-group,
+     :=y0 :com.rpl.specter.impl/NONE,
+     :=mark-size 20,
+     :=size-type
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=color :species,
+     :=mark-color :com.rpl.specter.impl/NONE,
+     :=y1-after-stat :=y1,
+     :=x :sepal-width,
+     :=x-after-stat :=x,
+     :=yaxis-gridcolor "rgb(255,255,255)",
+     :=type
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=x-type-after-stat
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=traces
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=x-type
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=histogram-nbins 10,
+     :=stat :com.rpl.specter.impl/NONE,
+     :=width :com.rpl.specter.impl/NONE,
+     :=color-type
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=xaxis-gridcolor "rgb(255,255,255)",
+     :=mark :point,
+     :=dataset-after-stat
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=x-title :com.rpl.specter.impl/NONE,
+     :=layout
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+     :=y :sepal-length,
+     :=x1-after-stat :=x1,
+     :=dataset #<WrappedValue@28277720: datasets/iris [10 6]:
+
+| :rownames | :sepal-length | :sepal-width | :petal-length | :petal-width |   :species |
+|----------:|--------------:|-------------:|--------------:|-------------:|------------|
+|        27 |           5.0 |          3.4 |           1.6 |          0.4 |     setosa |
+|        97 |           5.7 |          2.9 |           4.2 |          1.3 | versicolor |
+|       127 |           6.2 |          2.8 |           4.8 |          1.8 |  virginica |
+|        92 |           6.1 |          3.0 |           4.6 |          1.4 | versicolor |
+|         7 |           4.6 |          3.4 |           1.4 |          0.3 |     setosa |
+|        95 |           5.6 |          2.7 |           4.2 |          1.3 | versicolor |
+|       125 |           6.7 |          3.3 |           5.7 |          2.1 |  virginica |
+|        61 |           5.0 |          2.0 |           3.5 |          1.0 | versicolor |
+|        73 |           6.3 |          2.5 |           4.9 |          1.5 | versicolor |
+|        42 |           4.5 |          2.3 |           1.3 |          0.3 |     setosa |
+>,
+     :=background "rgb(229,229,229)",
+     :=y0-after-stat :=y0,
+     :=y-after-stat :=y,
+     :=predictors [:=x],
+     :=marker-size-key
+     #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211]},
+    :y0 :=y0-after-stat,
+    :inferred-group :=inferred-group,
+    :marker-override
+    {:color :=mark-color, :=marker-size-key :=mark-size},
+    :x :=x-after-stat,
+    :x1 :=x1-after-stat,
+    :x0 :=x0-after-stat,
+    :y-title :=y-title,
+    :dataset :=dataset-after-stat}],
+  :=x1 :com.rpl.specter.impl/NONE,
+  :=title :com.rpl.specter.impl/NONE,
+  :=y1 :com.rpl.specter.impl/NONE,
+  :=y-type-after-stat
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=height :com.rpl.specter.impl/NONE,
+  :=name :com.rpl.specter.impl/NONE,
+  :=mark-opacity :com.rpl.specter.impl/NONE,
+  :=inferred-group
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=mode
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=y-title :com.rpl.specter.impl/NONE,
+  :=size :com.rpl.specter.impl/NONE,
+  :=group :=inferred-group,
+  :=y0 :com.rpl.specter.impl/NONE,
+  :=mark-size :com.rpl.specter.impl/NONE,
+  :=size-type
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=color :com.rpl.specter.impl/NONE,
+  :=mark-color :com.rpl.specter.impl/NONE,
+  :=y1-after-stat :=y1,
+  :=x :x,
+  :=x-after-stat :=x,
+  :=yaxis-gridcolor "rgb(255,255,255)",
+  :=type
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=x-type-after-stat
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=traces
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=x-type
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=histogram-nbins 10,
+  :=stat :com.rpl.specter.impl/NONE,
+  :=width :com.rpl.specter.impl/NONE,
+  :=color-type
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=xaxis-gridcolor "rgb(255,255,255)",
+  :=mark :point,
+  :=dataset-after-stat
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=x-title :com.rpl.specter.impl/NONE,
+  :=layout
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],
+  :=y :y,
+  :=x1-after-stat :=x1,
+  :=dataset #<WrappedValue@28277720: datasets/iris [10 6]:
+
+| :rownames | :sepal-length | :sepal-width | :petal-length | :petal-width |   :species |
+|----------:|--------------:|-------------:|--------------:|-------------:|------------|
+|        27 |           5.0 |          3.4 |           1.6 |          0.4 |     setosa |
+|        97 |           5.7 |          2.9 |           4.2 |          1.3 | versicolor |
+|       127 |           6.2 |          2.8 |           4.8 |          1.8 |  virginica |
+|        92 |           6.1 |          3.0 |           4.6 |          1.4 | versicolor |
+|         7 |           4.6 |          3.4 |           1.4 |          0.3 |     setosa |
+|        95 |           5.6 |          2.7 |           4.2 |          1.3 | versicolor |
+|       125 |           6.7 |          3.3 |           5.7 |          2.1 |  virginica |
+|        61 |           5.0 |          2.0 |           3.5 |          1.0 | versicolor |
+|        73 |           6.3 |          2.5 |           4.9 |          1.5 | versicolor |
+|        42 |           4.5 |          2.3 |           1.3 |          0.3 |     setosa |
+>,
+  :=background "rgb(229,229,229)",
+  :=y0-after-stat :=y0,
+  :=y-after-stat :=y,
+  :=predictors [:=x],
+  :=marker-size-key
+  #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211]},
+ :kindly/f #'scicloj.hanamicloth.v1.plotlycloth/plotly-xform}
+
+

This template has all the necessary knowledge, including the substitution keys, to turn into a plot. This happens when your visual tool (e.g., Clay) displays the plot. The tool knows what to do thanks to the Kindly metadata and a special function attached to the plot.

+
+
(meta example1)
+
+
+
#:kindly{:kind :kind/fn}
+
+
+
(:kindly/f example1)
+
+
+
#'scicloj.hanamicloth.v1.plotlycloth/plotly-xform
+
+
+
+

4.4 Realizing the plot

+

If you wish to see the resulting plot specification before displaying it as a plot, you can use the plot function. In this case, it generates a Plotly.js plot:

+
+
(-> example1
+    ploclo/plot
+    kind/pprint)
+
+
+
{:data
+ [{:mode :markers,
+   :type :scatter,
+   :opacity 0.6,
+   :name "setosa",
+   :x [3.4 3.4 2.3],
+   :y [5.0 4.6 4.5],
+   :marker {:color "#1B9E77", :size 20}}
+  {:mode :markers,
+   :type :scatter,
+   :opacity 0.6,
+   :name "versicolor",
+   :x [2.9 3.0 2.7 2.0 2.5],
+   :y [5.7 6.1 5.6 5.0 6.3],
+   :marker {:color "#D95F02", :size 20}}
+  {:mode :markers,
+   :type :scatter,
+   :opacity 0.6,
+   :name "virginica",
+   :x [2.8 3.3],
+   :y [6.2 6.7],
+   :marker {:color "#7570B3", :size 20}}],
+ :layout
+ {:width nil,
+  :height nil,
+  :plot_bgcolor "rgb(229,229,229)",
+  :xaxis {:gridcolor "rgb(255,255,255)", :title :sepal-width},
+  :yaxis {:gridcolor "rgb(255,255,255)", :title :sepal-length},
+  :title nil}}
+
+

It is annotated as kind/plotly, so that visual tools know how to render it.

+
+
(-> example1
+    ploclo/plot
+    meta)
+
+
+
#:kindly{:kind :kind/plotly}
+
+

This can be useful if you wish to process the actual Plotly.js spec rather than use Plotlycloth’s API. Let us change the background colour, for example:

+
+
(-> example1
+    ploclo/plot
+    (assoc-in [:layout :plot_bgcolor] "#eeeedd"))
+
+
+
+
+

4.5 Field type inference

+

Plotlycloth infers the type of relevant fields from the data.

+

The example above was colored as it were since :species column was nominal, so it was assigned distinct colours.

+

In the following example, the coloring is by a quantitative column, so a color gradient is used:

+
+
(-> datasets/mtcars
+    (ploclo/layer-point
+     {:=x :mpg
+      :=y :disp
+      :=color :cyl
+      :=mark-size 20}))
+
+
+

We can override the inferred types and thus affect the generated plot:

+
+
(-> datasets/mtcars
+    (ploclo/layer-point
+     {:=x :mpg
+      :=y :disp
+      :=color :cyl
+      :=color-type :nominal
+      :=mark-size 20}))
+
+
+
+
+

4.6 More examples

+
+

4.6.1 Boxplot

+
+
(-> datasets/mtcars
+    (ploclo/layer-boxplot
+     {:=x :cyl
+      :=y :disp}))
+
+
+
+
+

4.6.2 Segment plot

+
+
(-> datasets/iris
+    (ploclo/layer-segment
+     {:=x0 :sepal-width
+      :=y0 :sepal-length
+      :=x1 :petal-width
+      :=y1 :petal-length
+      :=mark-opacity 0.4
+      :=mark-size 3
+      :=color :species}))
+
+
+
+
+
+

4.7 Varying color and size

+
+
(-> {:ABCD (range 1 11)
+     :EFGH [5 2.5 5 7.5 5 2.5 7.5 4.5 5.5 5]
+     :IJKL [:A :A :A :A :A :B :B :B :B :B]
+     :MNOP [:C :D :C :D :C :D :C :D :C :D]}
+    tc/dataset
+    (ploclo/base {:=title "IJKLMNOP"})
+    (ploclo/layer-point {:=x :ABCD
+                         :=y :EFGH
+                         :=color :IJKL
+                         :=size :MNOP
+                         :=name "QRST1"})
+    (ploclo/layer-line
+     {:=title "IJKL MNOP"
+      :=x :ABCD
+      :=y :ABCD
+      :=name "QRST2"
+      :=mark-color "magenta"
+      :=mark-size 20
+      :=mark-opacity 0.2})
+    ploclo/plot)
+
+
+
+
+

4.8 Time series

+

Date and time fields are handle appropriately. Let us, for example, draw the time series of unemployment counts.

+
+
(-> datasets/economics-long
+    (tc/select-rows #(-> % :variable (= "unemploy")))
+    (ploclo/layer-line
+     {:=x :date
+      :=y :value
+      :=mark-color "purple"}))
+
+
+
+
+

4.9 Multiple layers

+

We can draw more than one layer:

+
+
(-> datasets/economics-long
+    (tc/select-rows #(-> % :variable (= "unemploy")))
+    (ploclo/layer-point {:=x :date
+                         :=y :value
+                         :=mark-color "green"
+                         :=mark-size 20
+                         :=mark-opacity 0.5})
+    (ploclo/layer-line {:=x :date
+                        :=y :value
+                        :=mark-color "purple"}))
+
+
+

We can also use the base function for the common parameters across layers:

+
+
(-> datasets/economics-long
+    (tc/select-rows #(-> % :variable (= "unemploy")))
+    (ploclo/base {:=x :date
+                  :=y :value})
+    (ploclo/layer-point {:=mark-color "green"
+                         :=mark-size 20
+                         :=mark-opacity 0.5})
+    (ploclo/layer-line {:=mark-color "purple"}))
+
+
+
+
+

4.10 Updating data

+

We can use the update-data function to vary the dataset along a plotting pipeline, affecting the layers that follow.

+

This functionality is inspired by ggbuilder and metamorph.

+

Here, for example, we draw a line, then sample 5 data rows, and draw them as points:

+
+
(-> datasets/economics-long
+    (tc/select-rows #(-> % :variable (= "unemploy")))
+    (ploclo/base {:=x :date
+                  :=y :value})
+    (ploclo/layer-line {:=mark-color "purple"})
+    (ploclo/update-data tc/random 5)
+    (ploclo/layer-point {:=mark-color "green"
+                         :=mark-size 15
+                         :=mark-opacity 0.5}))
+
+
+
+
+

4.11 Smoothing

+

layer-smooth is a layer that applies some statistical processing to the dataset to model it as a smooth shape. It is inspired by ggplot’s geom_smooth.

+

At the moment, it can only be used to model :=y by linear regression. Soon we will add more ways of modelling the data.

+
+
(-> datasets/iris
+    (ploclo/base {:=title "dummy"
+                  :=mark-color "green"
+                  :=x :sepal-width
+                  :=y :sepal-length})
+    ploclo/layer-point
+    (ploclo/layer-smooth {:=mark-color "orange"})
+    ploclo/plot)
+
+
+

By default, the regression is computed with only one predictor variable, which is :=x. But this can be overriden using the :predictors key. We may compute a regression with more than one predictor.

+
+
(-> datasets/iris
+    (ploclo/base {:=x :sepal-width
+                  :=y :sepal-length})
+    ploclo/layer-point
+    (ploclo/layer-smooth {:=predictors [:petal-width
+                                        :petal-length]
+                          :=mark-opacity 0.5})
+    ploclo/plot)
+
+
+
+
+

4.12 Grouping

+

The regression computed by haclo/layer-smooth is affected by the inferred grouping of the data.

+

For example, here we recieve three regression lines, each for every species.

+
+
(-> datasets/iris
+    (ploclo/base {:=title "dummy"
+                  :=color :species
+                  :=x :sepal-width
+                  :=y :sepal-length})
+    ploclo/layer-point
+    ploclo/layer-smooth)
+
+
+

This happened because the :color field was :species, which is of :nominal type.

+

But we may override this using the :group key. For example, let us avoid grouping:

+
+
(-> datasets/iris
+    (ploclo/base {:=title "dummy"
+                  :=color :species
+                  :=group []
+                  :=x :sepal-width
+                  :=y :sepal-length})
+    ploclo/layer-point
+    ploclo/layer-smooth)
+
+
+
+
+

4.13 Example: out-of-sample predictions

+

Here is a slighly more elaborate example inpired by the London Clojurians talk mentioned in the preface.

+

Assume we wish to predict the unemployment rate for 96 months. Let us add those months to our dataset, and mark them as Future (considering the original data as Past):

+
+
(-> datasets/economics-long
+    (tc/select-rows #(-> % :variable (= "unemploy")))
+    (tc/add-column :relative-time "Past")
+    (tc/concat (tc/dataset {:date (-> datasets/economics-long
+                                      :date
+                                      last
+                                      (datetime/plus-temporal-amount (range 96) :days))
+                            :relative-time "Future"}))
+    (print/print-range 6))
+
+
+

ggplot2/economics_long [670 6]:

+ ++++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:rownames:date:variable:value:value01:relative-time
22971967-07-01unemploy2944.00.02044683Past
22981967-08-01unemploy2945.00.02052578Past
22991967-09-01unemploy2958.00.02155206Past
2015-07-02Future
2015-07-03Future
2015-07-04Future
2015-07-05Future
+
+

Let us represent our dates as numbers, so that we can use them in linear regression:

+
+
(-> datasets/economics-long
+    (tc/select-rows #(-> % :variable (= "unemploy")))
+    (tc/add-column :relative-time "Past")
+    (tc/concat (tc/dataset {:date (-> datasets/economics-long
+                                      :date
+                                      last
+                                      (datetime/plus-temporal-amount (range 96) :months))
+                            :relative-time "Future"}))
+    (tc/add-column :year #(datetime/long-temporal-field :years (:date %)))
+    (tc/add-column :month #(datetime/long-temporal-field :months (:date %)))
+    (tc/map-columns :yearmonth [:year :month] (fn [y m] (+ m (* 12 y))))
+    (print/print-range 6))
+
+
+

ggplot2/economics_long [670 9]:

+ +++++++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:rownames:date:variable:value:value01:relative-time:year:month:yearmonth
22971967-07-01unemploy2944.00.02044683Past1967723611
22981967-08-01unemploy2945.00.02052578Past1967823612
22991967-09-01unemploy2958.00.02155206Past1967923613
2022-12-01Future20221224276
2023-01-01Future2023124277
2023-02-01Future2023224278
2023-03-01Future2023324279
+
+

Let us use the same regression line for the Past and Future groups. To do this, we avoid grouping by assigning [] to :=group. The line is affected only by the past, since in the Future, :=y is missing. We use the numerical field :yearmonth as the regression predictor, but for plotting, we still use the :temporal field :date.

+
+
(-> datasets/economics-long
+    (tc/select-rows #(-> % :variable (= "unemploy")))
+    (tc/add-column :relative-time "Past")
+    (tc/concat (tc/dataset {:date (-> datasets/economics-long
+                                      :date
+                                      last
+                                      (datetime/plus-temporal-amount (range 96) :months))
+                            :relative-time "Future"}))
+    (tc/add-column :year #(datetime/long-temporal-field :years (:date %)))
+    (tc/add-column :month #(datetime/long-temporal-field :months (:date %)))
+    (tc/map-columns :yearmonth [:year :month] (fn [y m] (+ m (* 12 y))))
+    (ploclo/base {:=x :date
+                  :=y :value})
+    (ploclo/layer-smooth {:=color :relative-time
+                          :=mark-size 20
+                          :=group []
+                          :=predictors [:yearmonth]})
+    ;; Keep only the past for the following layer:
+    (ploclo/update-data (fn [dataset]
+                          (-> dataset
+                              (tc/select-rows (fn [row]
+                                                (-> row :relative-time (= "Past")))))))
+    (ploclo/layer-line {:=mark-color "purple"
+                        :=mark-size 3}))
+
+
+
+
+

4.14 Histograms

+

Histograms can also be represented as layers with statistical processing:

+
+
(-> datasets/iris
+    (ploclo/layer-histogram {:=x :sepal-width}))
+
+
+
+
(-> datasets/iris
+    (ploclo/layer-histogram {:=x :sepal-width
+                             :=histogram-nbins 30}))
+
+
+
+
source: notebooks/hanamicloth_book/plotlycloth_walkthrough.clj
+ + +
+ +
+ + +
+ + + + + \ No newline at end of file diff --git a/docs/hanamicloth_book.plotlycloth_walkthrough_files/md-default0.js b/docs/hanamicloth_book.plotlycloth_walkthrough_files/md-default0.js new file mode 100644 index 0000000..c4c6022 --- /dev/null +++ b/docs/hanamicloth_book.plotlycloth_walkthrough_files/md-default0.js @@ -0,0 +1,2 @@ +/*! jQuery v3.6.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var _t,zt=[],Ut=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=zt.pop()||S.expando+"_"+wt.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Ut.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ut.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Ut,"$1"+r):!1!==e.jsonp&&(e.url+=(Tt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,zt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((_t=E.implementation.createHTMLDocument("").body).innerHTML="
",2===_t.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=Fe(y.pixelPosition,function(e,t){if(t)return t=We(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0",options:{classes:{},disabled:!1,create:null},_createWidget:function(t,e){e=V(e||this.defaultElement||this)[0],this.element=V(e),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=V(),this.hoverable=V(),this.focusable=V(),this.classesElementLookup={},e!==this&&(V.data(e,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===e&&this.destroy()}}),this.document=V(e.style?e.ownerDocument:e.document||e),this.window=V(this.document[0].defaultView||this.document[0].parentWindow)),this.options=V.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:V.noop,_create:V.noop,_init:V.noop,destroy:function(){var i=this;this._destroy(),V.each(this.classesElementLookup,function(t,e){i._removeClass(e,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:V.noop,widget:function(){return this.element},option:function(t,e){var i,s,n,o=t;if(0===arguments.length)return V.widget.extend({},this.options);if("string"==typeof t)if(o={},t=(i=t.split(".")).shift(),i.length){for(s=o[t]=V.widget.extend({},this.options[t]),n=0;n
"),i=e.children()[0];return V("body").append(e),t=i.offsetWidth,e.css("overflow","scroll"),t===(i=i.offsetWidth)&&(i=e[0].clientWidth),e.remove(),s=t-i},getScrollInfo:function(t){var e=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),i=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),e="scroll"===e||"auto"===e&&t.widthx(k(s),k(n))?o.important="horizontal":o.important="vertical",u.using.call(this,t,o)}),a.offset(V.extend(h,{using:t}))})},V.ui.position={fit:{left:function(t,e){var i=e.within,s=i.isWindow?i.scrollLeft:i.offset.left,n=i.width,o=t.left-e.collisionPosition.marginLeft,a=s-o,r=o+e.collisionWidth-n-s;e.collisionWidth>n?0n?0")[0],w=d.each;function P(t){return null==t?t+"":"object"==typeof t?p[e.call(t)]||"object":typeof t}function M(t,e,i){var s=v[e.type]||{};return null==t?i||!e.def?null:e.def:(t=s.floor?~~t:parseFloat(t),isNaN(t)?e.def:s.mod?(t+s.mod)%s.mod:Math.min(s.max,Math.max(0,t)))}function S(s){var n=m(),o=n._rgba=[];return s=s.toLowerCase(),w(g,function(t,e){var i=e.re.exec(s),i=i&&e.parse(i),e=e.space||"rgba";if(i)return i=n[e](i),n[_[e].cache]=i[_[e].cache],o=n._rgba=i._rgba,!1}),o.length?("0,0,0,0"===o.join()&&d.extend(o,B.transparent),n):B[s]}function H(t,e,i){return 6*(i=(i+1)%1)<1?t+(e-t)*i*6:2*i<1?e:3*i<2?t+(e-t)*(2/3-i)*6:t}y.style.cssText="background-color:rgba(1,1,1,.5)",b.rgba=-1o.mod/2?s+=o.mod:s-n>o.mod/2&&(s-=o.mod)),l[i]=M((n-s)*a+s,e)))}),this[e](l)},blend:function(t){if(1===this._rgba[3])return this;var e=this._rgba.slice(),i=e.pop(),s=m(t)._rgba;return m(d.map(e,function(t,e){return(1-i)*s[e]+i*t}))},toRgbaString:function(){var t="rgba(",e=d.map(this._rgba,function(t,e){return null!=t?t:2").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),e={width:i.width(),height:i.height()},n=document.activeElement;try{n.id}catch(t){n=document.body}return i.wrap(t),i[0]!==n&&!V.contains(i[0],n)||V(n).trigger("focus"),t=i.parent(),"static"===i.css("position")?(t.css({position:"relative"}),i.css({position:"relative"})):(V.extend(s,{position:i.css("position"),zIndex:i.css("z-index")}),V.each(["top","left","bottom","right"],function(t,e){s[e]=i.css(e),isNaN(parseInt(s[e],10))&&(s[e]="auto")}),i.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),i.css(e),t.css(s).show()},removeWrapper:function(t){var e=document.activeElement;return t.parent().is(".ui-effects-wrapper")&&(t.parent().replaceWith(t),t[0]!==e&&!V.contains(t[0],e)||V(e).trigger("focus")),t}}),V.extend(V.effects,{version:"1.13.1",define:function(t,e,i){return i||(i=e,e="effect"),V.effects.effect[t]=i,V.effects.effect[t].mode=e,i},scaledDimensions:function(t,e,i){if(0===e)return{height:0,width:0,outerHeight:0,outerWidth:0};var s="horizontal"!==i?(e||100)/100:1,e="vertical"!==i?(e||100)/100:1;return{height:t.height()*e,width:t.width()*s,outerHeight:t.outerHeight()*e,outerWidth:t.outerWidth()*s}},clipToBox:function(t){return{width:t.clip.right-t.clip.left,height:t.clip.bottom-t.clip.top,left:t.clip.left,top:t.clip.top}},unshift:function(t,e,i){var s=t.queue();1").insertAfter(t).css({display:/^(inline|ruby)/.test(t.css("display"))?"inline-block":"block",visibility:"hidden",marginTop:t.css("marginTop"),marginBottom:t.css("marginBottom"),marginLeft:t.css("marginLeft"),marginRight:t.css("marginRight"),float:t.css("float")}).outerWidth(t.outerWidth()).outerHeight(t.outerHeight()).addClass("ui-effects-placeholder"),t.data(j+"placeholder",e)),t.css({position:i,left:s.left,top:s.top}),e},removePlaceholder:function(t){var e=j+"placeholder",i=t.data(e);i&&(i.remove(),t.removeData(e))},cleanUp:function(t){V.effects.restoreStyle(t),V.effects.removePlaceholder(t)},setTransition:function(s,t,n,o){return o=o||{},V.each(t,function(t,e){var i=s.cssUnit(e);0");l.appendTo("body").addClass(t.className).css({top:s.top-a,left:s.left-r,height:i.innerHeight(),width:i.innerWidth(),position:n?"fixed":"absolute"}).animate(o,t.duration,t.easing,function(){l.remove(),"function"==typeof e&&e()})}}),V.fx.step.clip=function(t){t.clipInit||(t.start=V(t.elem).cssClip(),"string"==typeof t.end&&(t.end=G(t.end,t.elem)),t.clipInit=!0),V(t.elem).cssClip({top:t.pos*(t.end.top-t.start.top)+t.start.top,right:t.pos*(t.end.right-t.start.right)+t.start.right,bottom:t.pos*(t.end.bottom-t.start.bottom)+t.start.bottom,left:t.pos*(t.end.left-t.start.left)+t.start.left})},Y={},V.each(["Quad","Cubic","Quart","Quint","Expo"],function(e,t){Y[t]=function(t){return Math.pow(t,e+2)}}),V.extend(Y,{Sine:function(t){return 1-Math.cos(t*Math.PI/2)},Circ:function(t){return 1-Math.sqrt(1-t*t)},Elastic:function(t){return 0===t||1===t?t:-Math.pow(2,8*(t-1))*Math.sin((80*(t-1)-7.5)*Math.PI/15)},Back:function(t){return t*t*(3*t-2)},Bounce:function(t){for(var e,i=4;t<((e=Math.pow(2,--i))-1)/11;);return 1/Math.pow(4,3-i)-7.5625*Math.pow((3*e-2)/22-t,2)}}),V.each(Y,function(t,e){V.easing["easeIn"+t]=e,V.easing["easeOut"+t]=function(t){return 1-e(1-t)},V.easing["easeInOut"+t]=function(t){return t<.5?e(2*t)/2:1-e(-2*t+2)/2}});y=V.effects,V.effects.define("blind","hide",function(t,e){var i={up:["bottom","top"],vertical:["bottom","top"],down:["top","bottom"],left:["right","left"],horizontal:["right","left"],right:["left","right"]},s=V(this),n=t.direction||"up",o=s.cssClip(),a={clip:V.extend({},o)},r=V.effects.createPlaceholder(s);a.clip[i[n][0]]=a.clip[i[n][1]],"show"===t.mode&&(s.cssClip(a.clip),r&&r.css(V.effects.clipToBox(a)),a.clip=o),r&&r.animate(V.effects.clipToBox(a),t.duration,t.easing),s.animate(a,{queue:!1,duration:t.duration,easing:t.easing,complete:e})}),V.effects.define("bounce",function(t,e){var i,s,n=V(this),o=t.mode,a="hide"===o,r="show"===o,l=t.direction||"up",h=t.distance,c=t.times||5,o=2*c+(r||a?1:0),u=t.duration/o,d=t.easing,p="up"===l||"down"===l?"top":"left",f="up"===l||"left"===l,g=0,t=n.queue().length;for(V.effects.createPlaceholder(n),l=n.css(p),h=h||n["top"==p?"outerHeight":"outerWidth"]()/3,r&&((s={opacity:1})[p]=l,n.css("opacity",0).css(p,f?2*-h:2*h).animate(s,u,d)),a&&(h/=Math.pow(2,c-1)),(s={})[p]=l;g").css({position:"absolute",visibility:"visible",left:-s*p,top:-i*f}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:p,height:f,left:n+(u?a*p:0),top:o+(u?r*f:0),opacity:u?0:1}).animate({left:n+(u?0:a*p),top:o+(u?0:r*f),opacity:u?1:0},t.duration||500,t.easing,m)}),V.effects.define("fade","toggle",function(t,e){var i="show"===t.mode;V(this).css("opacity",i?0:1).animate({opacity:i?1:0},{queue:!1,duration:t.duration,easing:t.easing,complete:e})}),V.effects.define("fold","hide",function(e,t){var i=V(this),s=e.mode,n="show"===s,o="hide"===s,a=e.size||15,r=/([0-9]+)%/.exec(a),l=!!e.horizFirst?["right","bottom"]:["bottom","right"],h=e.duration/2,c=V.effects.createPlaceholder(i),u=i.cssClip(),d={clip:V.extend({},u)},p={clip:V.extend({},u)},f=[u[l[0]],u[l[1]]],s=i.queue().length;r&&(a=parseInt(r[1],10)/100*f[o?0:1]),d.clip[l[0]]=a,p.clip[l[0]]=a,p.clip[l[1]]=0,n&&(i.cssClip(p.clip),c&&c.css(V.effects.clipToBox(p)),p.clip=u),i.queue(function(t){c&&c.animate(V.effects.clipToBox(d),h,e.easing).animate(V.effects.clipToBox(p),h,e.easing),t()}).animate(d,h,e.easing).animate(p,h,e.easing).queue(t),V.effects.unshift(i,s,4)}),V.effects.define("highlight","show",function(t,e){var i=V(this),s={backgroundColor:i.css("backgroundColor")};"hide"===t.mode&&(s.opacity=0),V.effects.saveStyle(i),i.css({backgroundImage:"none",backgroundColor:t.color||"#ffff99"}).animate(s,{queue:!1,duration:t.duration,easing:t.easing,complete:e})}),V.effects.define("size",function(s,e){var n,i=V(this),t=["fontSize"],o=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],a=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],r=s.mode,l="effect"!==r,h=s.scale||"both",c=s.origin||["middle","center"],u=i.css("position"),d=i.position(),p=V.effects.scaledDimensions(i),f=s.from||p,g=s.to||V.effects.scaledDimensions(i,0);V.effects.createPlaceholder(i),"show"===r&&(r=f,f=g,g=r),n={from:{y:f.height/p.height,x:f.width/p.width},to:{y:g.height/p.height,x:g.width/p.width}},"box"!==h&&"both"!==h||(n.from.y!==n.to.y&&(f=V.effects.setTransition(i,o,n.from.y,f),g=V.effects.setTransition(i,o,n.to.y,g)),n.from.x!==n.to.x&&(f=V.effects.setTransition(i,a,n.from.x,f),g=V.effects.setTransition(i,a,n.to.x,g))),"content"!==h&&"both"!==h||n.from.y!==n.to.y&&(f=V.effects.setTransition(i,t,n.from.y,f),g=V.effects.setTransition(i,t,n.to.y,g)),c&&(c=V.effects.getBaseline(c,p),f.top=(p.outerHeight-f.outerHeight)*c.y+d.top,f.left=(p.outerWidth-f.outerWidth)*c.x+d.left,g.top=(p.outerHeight-g.outerHeight)*c.y+d.top,g.left=(p.outerWidth-g.outerWidth)*c.x+d.left),delete f.outerHeight,delete f.outerWidth,i.css(f),"content"!==h&&"both"!==h||(o=o.concat(["marginTop","marginBottom"]).concat(t),a=a.concat(["marginLeft","marginRight"]),i.find("*[width]").each(function(){var t=V(this),e=V.effects.scaledDimensions(t),i={height:e.height*n.from.y,width:e.width*n.from.x,outerHeight:e.outerHeight*n.from.y,outerWidth:e.outerWidth*n.from.x},e={height:e.height*n.to.y,width:e.width*n.to.x,outerHeight:e.height*n.to.y,outerWidth:e.width*n.to.x};n.from.y!==n.to.y&&(i=V.effects.setTransition(t,o,n.from.y,i),e=V.effects.setTransition(t,o,n.to.y,e)),n.from.x!==n.to.x&&(i=V.effects.setTransition(t,a,n.from.x,i),e=V.effects.setTransition(t,a,n.to.x,e)),l&&V.effects.saveStyle(t),t.css(i),t.animate(e,s.duration,s.easing,function(){l&&V.effects.restoreStyle(t)})})),i.animate(g,{queue:!1,duration:s.duration,easing:s.easing,complete:function(){var t=i.offset();0===g.opacity&&i.css("opacity",f.opacity),l||(i.css("position","static"===u?"relative":u).offset(t),V.effects.saveStyle(i)),e()}})}),V.effects.define("scale",function(t,e){var i=V(this),s=t.mode,s=parseInt(t.percent,10)||(0===parseInt(t.percent,10)||"effect"!==s?0:100),s=V.extend(!0,{from:V.effects.scaledDimensions(i),to:V.effects.scaledDimensions(i,s,t.direction||"both"),origin:t.origin||["middle","center"]},t);t.fade&&(s.from.opacity=1,s.to.opacity=0),V.effects.effect.size.call(this,s,e)}),V.effects.define("puff","hide",function(t,e){t=V.extend(!0,{},t,{fade:!0,percent:parseInt(t.percent,10)||150});V.effects.effect.scale.call(this,t,e)}),V.effects.define("pulsate","show",function(t,e){var i=V(this),s=t.mode,n="show"===s,o=2*(t.times||5)+(n||"hide"===s?1:0),a=t.duration/o,r=0,l=1,s=i.queue().length;for(!n&&i.is(":visible")||(i.css("opacity",0).show(),r=1);l li > :first-child").add(t.find("> :not(li)").even())},heightStyle:"auto",icons:{activeHeader:"ui-icon-triangle-1-s",header:"ui-icon-triangle-1-e"},activate:null,beforeActivate:null},hideProps:{borderTopWidth:"hide",borderBottomWidth:"hide",paddingTop:"hide",paddingBottom:"hide",height:"hide"},showProps:{borderTopWidth:"show",borderBottomWidth:"show",paddingTop:"show",paddingBottom:"show",height:"show"},_create:function(){var t=this.options;this.prevShow=this.prevHide=V(),this._addClass("ui-accordion","ui-widget ui-helper-reset"),this.element.attr("role","tablist"),t.collapsible||!1!==t.active&&null!=t.active||(t.active=0),this._processPanels(),t.active<0&&(t.active+=this.headers.length),this._refresh()},_getCreateEventData:function(){return{header:this.active,panel:this.active.length?this.active.next():V()}},_createIcons:function(){var t,e=this.options.icons;e&&(t=V(""),this._addClass(t,"ui-accordion-header-icon","ui-icon "+e.header),t.prependTo(this.headers),t=this.active.children(".ui-accordion-header-icon"),this._removeClass(t,e.header)._addClass(t,null,e.activeHeader)._addClass(this.headers,"ui-accordion-icons"))},_destroyIcons:function(){this._removeClass(this.headers,"ui-accordion-icons"),this.headers.children(".ui-accordion-header-icon").remove()},_destroy:function(){var t;this.element.removeAttr("role"),this.headers.removeAttr("role aria-expanded aria-selected aria-controls tabIndex").removeUniqueId(),this._destroyIcons(),t=this.headers.next().css("display","").removeAttr("role aria-hidden aria-labelledby").removeUniqueId(),"content"!==this.options.heightStyle&&t.css("height","")},_setOption:function(t,e){"active"!==t?("event"===t&&(this.options.event&&this._off(this.headers,this.options.event),this._setupEvents(e)),this._super(t,e),"collapsible"!==t||e||!1!==this.options.active||this._activate(0),"icons"===t&&(this._destroyIcons(),e&&this._createIcons())):this._activate(e)},_setOptionDisabled:function(t){this._super(t),this.element.attr("aria-disabled",t),this._toggleClass(null,"ui-state-disabled",!!t),this._toggleClass(this.headers.add(this.headers.next()),null,"ui-state-disabled",!!t)},_keydown:function(t){if(!t.altKey&&!t.ctrlKey){var e=V.ui.keyCode,i=this.headers.length,s=this.headers.index(t.target),n=!1;switch(t.keyCode){case e.RIGHT:case e.DOWN:n=this.headers[(s+1)%i];break;case e.LEFT:case e.UP:n=this.headers[(s-1+i)%i];break;case e.SPACE:case e.ENTER:this._eventHandler(t);break;case e.HOME:n=this.headers[0];break;case e.END:n=this.headers[i-1]}n&&(V(t.target).attr("tabIndex",-1),V(n).attr("tabIndex",0),V(n).trigger("focus"),t.preventDefault())}},_panelKeyDown:function(t){t.keyCode===V.ui.keyCode.UP&&t.ctrlKey&&V(t.currentTarget).prev().trigger("focus")},refresh:function(){var t=this.options;this._processPanels(),!1===t.active&&!0===t.collapsible||!this.headers.length?(t.active=!1,this.active=V()):!1===t.active?this._activate(0):this.active.length&&!V.contains(this.element[0],this.active[0])?this.headers.length===this.headers.find(".ui-state-disabled").length?(t.active=!1,this.active=V()):this._activate(Math.max(0,t.active-1)):t.active=this.headers.index(this.active),this._destroyIcons(),this._refresh()},_processPanels:function(){var t=this.headers,e=this.panels;"function"==typeof this.options.header?this.headers=this.options.header(this.element):this.headers=this.element.find(this.options.header),this._addClass(this.headers,"ui-accordion-header ui-accordion-header-collapsed","ui-state-default"),this.panels=this.headers.next().filter(":not(.ui-accordion-content-active)").hide(),this._addClass(this.panels,"ui-accordion-content","ui-helper-reset ui-widget-content"),e&&(this._off(t.not(this.headers)),this._off(e.not(this.panels)))},_refresh:function(){var i,t=this.options,e=t.heightStyle,s=this.element.parent();this.active=this._findActive(t.active),this._addClass(this.active,"ui-accordion-header-active","ui-state-active")._removeClass(this.active,"ui-accordion-header-collapsed"),this._addClass(this.active.next(),"ui-accordion-content-active"),this.active.next().show(),this.headers.attr("role","tab").each(function(){var t=V(this),e=t.uniqueId().attr("id"),i=t.next(),s=i.uniqueId().attr("id");t.attr("aria-controls",s),i.attr("aria-labelledby",e)}).next().attr("role","tabpanel"),this.headers.not(this.active).attr({"aria-selected":"false","aria-expanded":"false",tabIndex:-1}).next().attr({"aria-hidden":"true"}).hide(),this.active.length?this.active.attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0}).next().attr({"aria-hidden":"false"}):this.headers.eq(0).attr("tabIndex",0),this._createIcons(),this._setupEvents(t.event),"fill"===e?(i=s.height(),this.element.siblings(":visible").each(function(){var t=V(this),e=t.css("position");"absolute"!==e&&"fixed"!==e&&(i-=t.outerHeight(!0))}),this.headers.each(function(){i-=V(this).outerHeight(!0)}),this.headers.next().each(function(){V(this).height(Math.max(0,i-V(this).innerHeight()+V(this).height()))}).css("overflow","auto")):"auto"===e&&(i=0,this.headers.next().each(function(){var t=V(this).is(":visible");t||V(this).show(),i=Math.max(i,V(this).css("height","").height()),t||V(this).hide()}).height(i))},_activate:function(t){t=this._findActive(t)[0];t!==this.active[0]&&(t=t||this.active[0],this._eventHandler({target:t,currentTarget:t,preventDefault:V.noop}))},_findActive:function(t){return"number"==typeof t?this.headers.eq(t):V()},_setupEvents:function(t){var i={keydown:"_keydown"};t&&V.each(t.split(" "),function(t,e){i[e]="_eventHandler"}),this._off(this.headers.add(this.headers.next())),this._on(this.headers,i),this._on(this.headers.next(),{keydown:"_panelKeyDown"}),this._hoverable(this.headers),this._focusable(this.headers)},_eventHandler:function(t){var e=this.options,i=this.active,s=V(t.currentTarget),n=s[0]===i[0],o=n&&e.collapsible,a=o?V():s.next(),r=i.next(),a={oldHeader:i,oldPanel:r,newHeader:o?V():s,newPanel:a};t.preventDefault(),n&&!e.collapsible||!1===this._trigger("beforeActivate",t,a)||(e.active=!o&&this.headers.index(s),this.active=n?V():s,this._toggle(a),this._removeClass(i,"ui-accordion-header-active","ui-state-active"),e.icons&&(i=i.children(".ui-accordion-header-icon"),this._removeClass(i,null,e.icons.activeHeader)._addClass(i,null,e.icons.header)),n||(this._removeClass(s,"ui-accordion-header-collapsed")._addClass(s,"ui-accordion-header-active","ui-state-active"),e.icons&&(n=s.children(".ui-accordion-header-icon"),this._removeClass(n,null,e.icons.header)._addClass(n,null,e.icons.activeHeader)),this._addClass(s.next(),"ui-accordion-content-active")))},_toggle:function(t){var e=t.newPanel,i=this.prevShow.length?this.prevShow:t.oldPanel;this.prevShow.add(this.prevHide).stop(!0,!0),this.prevShow=e,this.prevHide=i,this.options.animate?this._animate(e,i,t):(i.hide(),e.show(),this._toggleComplete(t)),i.attr({"aria-hidden":"true"}),i.prev().attr({"aria-selected":"false","aria-expanded":"false"}),e.length&&i.length?i.prev().attr({tabIndex:-1,"aria-expanded":"false"}):e.length&&this.headers.filter(function(){return 0===parseInt(V(this).attr("tabIndex"),10)}).attr("tabIndex",-1),e.attr("aria-hidden","false").prev().attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0})},_animate:function(t,i,e){var s,n,o,a=this,r=0,l=t.css("box-sizing"),h=t.length&&(!i.length||t.index()",delay:300,options:{icons:{submenu:"ui-icon-caret-1-e"},items:"> *",menus:"ul",position:{my:"left top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.mouseHandled=!1,this.lastMousePosition={x:null,y:null},this.element.uniqueId().attr({role:this.options.role,tabIndex:0}),this._addClass("ui-menu","ui-widget ui-widget-content"),this._on({"mousedown .ui-menu-item":function(t){t.preventDefault(),this._activateItem(t)},"click .ui-menu-item":function(t){var e=V(t.target),i=V(V.ui.safeActiveElement(this.document[0]));!this.mouseHandled&&e.not(".ui-state-disabled").length&&(this.select(t),t.isPropagationStopped()||(this.mouseHandled=!0),e.has(".ui-menu").length?this.expand(t):!this.element.is(":focus")&&i.closest(".ui-menu").length&&(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":"_activateItem","mousemove .ui-menu-item":"_activateItem",mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(t,e){var i=this.active||this._menuItems().first();e||this.focus(t,i)},blur:function(t){this._delay(function(){V.contains(this.element[0],V.ui.safeActiveElement(this.document[0]))||this.collapseAll(t)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(t){this._closeOnDocumentClick(t)&&this.collapseAll(t,!0),this.mouseHandled=!1}})},_activateItem:function(t){var e,i;this.previousFilter||t.clientX===this.lastMousePosition.x&&t.clientY===this.lastMousePosition.y||(this.lastMousePosition={x:t.clientX,y:t.clientY},e=V(t.target).closest(".ui-menu-item"),i=V(t.currentTarget),e[0]===i[0]&&(i.is(".ui-state-active")||(this._removeClass(i.siblings().children(".ui-state-active"),null,"ui-state-active"),this.focus(t,i))))},_destroy:function(){var t=this.element.find(".ui-menu-item").removeAttr("role aria-disabled").children(".ui-menu-item-wrapper").removeUniqueId().removeAttr("tabIndex role aria-haspopup");this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeAttr("role aria-labelledby aria-expanded aria-hidden aria-disabled tabIndex").removeUniqueId().show(),t.children().each(function(){var t=V(this);t.data("ui-menu-submenu-caret")&&t.remove()})},_keydown:function(t){var e,i,s,n=!0;switch(t.keyCode){case V.ui.keyCode.PAGE_UP:this.previousPage(t);break;case V.ui.keyCode.PAGE_DOWN:this.nextPage(t);break;case V.ui.keyCode.HOME:this._move("first","first",t);break;case V.ui.keyCode.END:this._move("last","last",t);break;case V.ui.keyCode.UP:this.previous(t);break;case V.ui.keyCode.DOWN:this.next(t);break;case V.ui.keyCode.LEFT:this.collapse(t);break;case V.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(t);break;case V.ui.keyCode.ENTER:case V.ui.keyCode.SPACE:this._activate(t);break;case V.ui.keyCode.ESCAPE:this.collapse(t);break;default:e=this.previousFilter||"",s=n=!1,i=96<=t.keyCode&&t.keyCode<=105?(t.keyCode-96).toString():String.fromCharCode(t.keyCode),clearTimeout(this.filterTimer),i===e?s=!0:i=e+i,e=this._filterMenuItems(i),(e=s&&-1!==e.index(this.active.next())?this.active.nextAll(".ui-menu-item"):e).length||(i=String.fromCharCode(t.keyCode),e=this._filterMenuItems(i)),e.length?(this.focus(t,e),this.previousFilter=i,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter}n&&t.preventDefault()},_activate:function(t){this.active&&!this.active.is(".ui-state-disabled")&&(this.active.children("[aria-haspopup='true']").length?this.expand(t):this.select(t))},refresh:function(){var t,e,s=this,n=this.options.icons.submenu,i=this.element.find(this.options.menus);this._toggleClass("ui-menu-icons",null,!!this.element.find(".ui-icon").length),e=i.filter(":not(.ui-menu)").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var t=V(this),e=t.prev(),i=V("").data("ui-menu-submenu-caret",!0);s._addClass(i,"ui-menu-icon","ui-icon "+n),e.attr("aria-haspopup","true").prepend(i),t.attr("aria-labelledby",e.attr("id"))}),this._addClass(e,"ui-menu","ui-widget ui-widget-content ui-front"),(t=i.add(this.element).find(this.options.items)).not(".ui-menu-item").each(function(){var t=V(this);s._isDivider(t)&&s._addClass(t,"ui-menu-divider","ui-widget-content")}),i=(e=t.not(".ui-menu-item, .ui-menu-divider")).children().not(".ui-menu").uniqueId().attr({tabIndex:-1,role:this._itemRole()}),this._addClass(e,"ui-menu-item")._addClass(i,"ui-menu-item-wrapper"),t.filter(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!V.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(t,e){var i;"icons"===t&&(i=this.element.find(".ui-menu-icon"),this._removeClass(i,null,this.options.icons.submenu)._addClass(i,null,e.submenu)),this._super(t,e)},_setOptionDisabled:function(t){this._super(t),this.element.attr("aria-disabled",String(t)),this._toggleClass(null,"ui-state-disabled",!!t)},focus:function(t,e){var i;this.blur(t,t&&"focus"===t.type),this._scrollIntoView(e),this.active=e.first(),i=this.active.children(".ui-menu-item-wrapper"),this._addClass(i,null,"ui-state-active"),this.options.role&&this.element.attr("aria-activedescendant",i.attr("id")),i=this.active.parent().closest(".ui-menu-item").children(".ui-menu-item-wrapper"),this._addClass(i,null,"ui-state-active"),t&&"keydown"===t.type?this._close():this.timer=this._delay(function(){this._close()},this.delay),(i=e.children(".ui-menu")).length&&t&&/^mouse/.test(t.type)&&this._startOpening(i),this.activeMenu=e.parent(),this._trigger("focus",t,{item:e})},_scrollIntoView:function(t){var e,i,s;this._hasScroll()&&(i=parseFloat(V.css(this.activeMenu[0],"borderTopWidth"))||0,s=parseFloat(V.css(this.activeMenu[0],"paddingTop"))||0,e=t.offset().top-this.activeMenu.offset().top-i-s,i=this.activeMenu.scrollTop(),s=this.activeMenu.height(),t=t.outerHeight(),e<0?this.activeMenu.scrollTop(i+e):s",options:{appendTo:null,autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},requestIndex:0,pending:0,liveRegionTimer:null,_create:function(){var i,s,n,t=this.element[0].nodeName.toLowerCase(),e="textarea"===t,t="input"===t;this.isMultiLine=e||!t&&this._isContentEditable(this.element),this.valueMethod=this.element[e||t?"val":"text"],this.isNewMenu=!0,this._addClass("ui-autocomplete-input"),this.element.attr("autocomplete","off"),this._on(this.element,{keydown:function(t){if(this.element.prop("readOnly"))s=n=i=!0;else{s=n=i=!1;var e=V.ui.keyCode;switch(t.keyCode){case e.PAGE_UP:i=!0,this._move("previousPage",t);break;case e.PAGE_DOWN:i=!0,this._move("nextPage",t);break;case e.UP:i=!0,this._keyEvent("previous",t);break;case e.DOWN:i=!0,this._keyEvent("next",t);break;case e.ENTER:this.menu.active&&(i=!0,t.preventDefault(),this.menu.select(t));break;case e.TAB:this.menu.active&&this.menu.select(t);break;case e.ESCAPE:this.menu.element.is(":visible")&&(this.isMultiLine||this._value(this.term),this.close(t),t.preventDefault());break;default:s=!0,this._searchTimeout(t)}}},keypress:function(t){if(i)return i=!1,void(this.isMultiLine&&!this.menu.element.is(":visible")||t.preventDefault());if(!s){var e=V.ui.keyCode;switch(t.keyCode){case e.PAGE_UP:this._move("previousPage",t);break;case e.PAGE_DOWN:this._move("nextPage",t);break;case e.UP:this._keyEvent("previous",t);break;case e.DOWN:this._keyEvent("next",t)}}},input:function(t){if(n)return n=!1,void t.preventDefault();this._searchTimeout(t)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(t){clearTimeout(this.searching),this.close(t),this._change(t)}}),this._initSource(),this.menu=V("
(ns hanamicloth-book.walkthrough
@@ -252,9 +259,7 @@ 

[scicloj.kindly.v4.kind :as kind] [clojure.string :as str] [scicloj.kindly.v4.api :as kindly] - [hanamicloth-book.datasets :as datasets] - [aerial.hanami.common :as hc]) - (:import java.time.LocalDate))

+ [hanamicloth-book.datasets :as datasets]))
@@ -612,136 +617,135 @@

< :kindly/f #'scicloj.hanamicloth.v1.api/vega-lite-xform, :aerial.hanami.templates/defaults {:=x2 :com.rpl.specter.impl/NONE, - :=base-dataset - #<WrappedValue@36ca353f: ggplot2/economics_long [574 5]: - -| :rownames | :date | :variable | :value | :value01 | -|----------:|------------|-----------|-------:|-----------:| -| 2297 | 1967-07-01 | unemploy | 2944.0 | 0.02044683 | -| 2298 | 1967-08-01 | unemploy | 2945.0 | 0.02052578 | -| 2299 | 1967-09-01 | unemploy | 2958.0 | 0.02155206 | -| 2300 | 1967-10-01 | unemploy | 3143.0 | 0.03615694 | -| 2301 | 1967-11-01 | unemploy | 3066.0 | 0.03007816 | -| 2302 | 1967-12-01 | unemploy | 3018.0 | 0.02628878 | -| 2303 | 1968-01-01 | unemploy | 2878.0 | 0.01523644 | -| 2304 | 1968-02-01 | unemploy | 3001.0 | 0.02494671 | -| 2305 | 1968-03-01 | unemploy | 2877.0 | 0.01515750 | -| 2306 | 1968-04-01 | unemploy | 2709.0 | 0.00189469 | -| ... | ... | ... | ... | ... | -| 2860 | 2014-06-01 | unemploy | 9460.0 | 0.53485435 | -| 2861 | 2014-07-01 | unemploy | 9608.0 | 0.54653825 | -| 2862 | 2014-08-01 | unemploy | 9599.0 | 0.54582774 | -| 2863 | 2014-09-01 | unemploy | 9262.0 | 0.51922318 | -| 2864 | 2014-10-01 | unemploy | 8990.0 | 0.49775006 | -| 2865 | 2014-11-01 | unemploy | 9090.0 | 0.50564459 | -| 2866 | 2014-12-01 | unemploy | 8717.0 | 0.47619799 | -| 2867 | 2015-01-01 | unemploy | 8903.0 | 0.49088182 | -| 2868 | 2015-02-01 | unemploy | 8610.0 | 0.46775085 | -| 2869 | 2015-03-01 | unemploy | 8504.0 | 0.45938265 | -| 2870 | 2015-04-01 | unemploy | 8526.0 | 0.46111944 | ->, - :=layer [], - :=y-type - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465], - :=x2-encoding - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465], - :=opacity :com.rpl.specter.impl/NONE, - :=y2-after-stat :=y2, - :=x2-after-stat :=x2, - :=usermeta {:embedOptions {:renderer :=renderer}}, - :=title :com.rpl.specter.impl/NONE, - :=y-type-after-stat - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465], - :=height 300, - :=renderer :svg, - :=mark-opacity :com.rpl.specter.impl/NONE, - :=y-title :com.rpl.specter.impl/NONE, - :=size :com.rpl.specter.impl/NONE, - :=group - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465], - :=mark-size :com.rpl.specter.impl/NONE, - :=layer? :com.rpl.specter.impl/NONE, - :=size-type - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465], - :=layer-dataset - #<WrappedValue@36ca353f: ggplot2/economics_long [574 5]: - -| :rownames | :date | :variable | :value | :value01 | -|----------:|------------|-----------|-------:|-----------:| -| 2297 | 1967-07-01 | unemploy | 2944.0 | 0.02044683 | -| 2298 | 1967-08-01 | unemploy | 2945.0 | 0.02052578 | -| 2299 | 1967-09-01 | unemploy | 2958.0 | 0.02155206 | -| 2300 | 1967-10-01 | unemploy | 3143.0 | 0.03615694 | -| 2301 | 1967-11-01 | unemploy | 3066.0 | 0.03007816 | -| 2302 | 1967-12-01 | unemploy | 3018.0 | 0.02628878 | -| 2303 | 1968-01-01 | unemploy | 2878.0 | 0.01523644 | -| 2304 | 1968-02-01 | unemploy | 3001.0 | 0.02494671 | -| 2305 | 1968-03-01 | unemploy | 2877.0 | 0.01515750 | -| 2306 | 1968-04-01 | unemploy | 2709.0 | 0.00189469 | -| ... | ... | ... | ... | ... | -| 2860 | 2014-06-01 | unemploy | 9460.0 | 0.53485435 | -| 2861 | 2014-07-01 | unemploy | 9608.0 | 0.54653825 | -| 2862 | 2014-08-01 | unemploy | 9599.0 | 0.54582774 | -| 2863 | 2014-09-01 | unemploy | 9262.0 | 0.51922318 | -| 2864 | 2014-10-01 | unemploy | 8990.0 | 0.49775006 | -| 2865 | 2014-11-01 | unemploy | 9090.0 | 0.50564459 | -| 2866 | 2014-12-01 | unemploy | 8717.0 | 0.47619799 | -| 2867 | 2015-01-01 | unemploy | 8903.0 | 0.49088182 | -| 2868 | 2015-02-01 | unemploy | 8610.0 | 0.46775085 | -| 2869 | 2015-03-01 | unemploy | 8504.0 | 0.45938265 | -| 2870 | 2015-04-01 | unemploy | 8526.0 | 0.46111944 | ->, - :=color :com.rpl.specter.impl/NONE, - :=mark-color "purple", - :=x :date, - :=y2 :com.rpl.specter.impl/NONE, - :=x-after-stat :=x, - :DFMT {:type "csv"}, - :=encoding - {:color {:field :=color, :type :=color-type}, - :size {:field :=size, :type :=size-type}, - :x - {:field :=x-after-stat, - :type :=x-type-after-stat, - :title :=x-title, - :bin :=x-bin}, - :y - {:field :=y-after-stat, - :type :=y-type-after-stat, - :title :=y-title, - :bin :=y-bin}, - :x2 :=x2-encoding, - :y2 :=y2-encoding}, - :=x-type-after-stat - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465], - :=x-bin :com.rpl.specter.impl/NONE, - :=x-type - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465], - :=histogram-nbins 10, - :=stat :com.rpl.specter.impl/NONE, - :=width 400, - :=color-type - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465], - :=mark "circle", - :=dataset-after-stat - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465], - :=y-bin :com.rpl.specter.impl/NONE, - :=x-title :com.rpl.specter.impl/NONE, - :=csv-data - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465], - :=y :value, - :=data {:values :=csv-data, :format {:type "csv"}}, - :=dataset - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465], - :VALDATA :=csv-data, - :=mark-tooltip true, - :=background "floralwhite", - :=y-after-stat :=y, - :=predictors [:=x], - :=y2-encoding - #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465]}, - :height :=height, - :data :=data} + :=base-dataset #<WrappedValue@37e5aed: ggplot2/economics_long [574 5]: + +| :rownames | :date | :variable | :value | :value01 | +|----------:|------------|-----------|-------:|-----------:| +| 2297 | 1967-07-01 | unemploy | 2944.0 | 0.02044683 | +| 2298 | 1967-08-01 | unemploy | 2945.0 | 0.02052578 | +| 2299 | 1967-09-01 | unemploy | 2958.0 | 0.02155206 | +| 2300 | 1967-10-01 | unemploy | 3143.0 | 0.03615694 | +| 2301 | 1967-11-01 | unemploy | 3066.0 | 0.03007816 | +| 2302 | 1967-12-01 | unemploy | 3018.0 | 0.02628878 | +| 2303 | 1968-01-01 | unemploy | 2878.0 | 0.01523644 | +| 2304 | 1968-02-01 | unemploy | 3001.0 | 0.02494671 | +| 2305 | 1968-03-01 | unemploy | 2877.0 | 0.01515750 | +| 2306 | 1968-04-01 | unemploy | 2709.0 | 0.00189469 | +| ... | ... | ... | ... | ... | +| 2860 | 2014-06-01 | unemploy | 9460.0 | 0.53485435 | +| 2861 | 2014-07-01 | unemploy | 9608.0 | 0.54653825 | +| 2862 | 2014-08-01 | unemploy | 9599.0 | 0.54582774 | +| 2863 | 2014-09-01 | unemploy | 9262.0 | 0.51922318 | +| 2864 | 2014-10-01 | unemploy | 8990.0 | 0.49775006 | +| 2865 | 2014-11-01 | unemploy | 9090.0 | 0.50564459 | +| 2866 | 2014-12-01 | unemploy | 8717.0 | 0.47619799 | +| 2867 | 2015-01-01 | unemploy | 8903.0 | 0.49088182 | +| 2868 | 2015-02-01 | unemploy | 8610.0 | 0.46775085 | +| 2869 | 2015-03-01 | unemploy | 8504.0 | 0.45938265 | +| 2870 | 2015-04-01 | unemploy | 8526.0 | 0.46111944 | +>, + :=layer [], + :=y-type + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211], + :=x2-encoding + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211], + :=opacity :com.rpl.specter.impl/NONE, + :=y2-after-stat :=y2, + :=x2-after-stat :=x2, + :=usermeta {:embedOptions {:renderer :=renderer}}, + :=title :com.rpl.specter.impl/NONE, + :=y-type-after-stat + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211], + :=height 300, + :=renderer :svg, + :=mark-opacity :com.rpl.specter.impl/NONE, + :=y-title :com.rpl.specter.impl/NONE, + :=size :com.rpl.specter.impl/NONE, + :=group + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211], + :=mark-size :com.rpl.specter.impl/NONE, + :=layer? :com.rpl.specter.impl/NONE, + :=size-type + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211], + :=layer-dataset + #<WrappedValue@37e5aed: ggplot2/economics_long [574 5]: + +| :rownames | :date | :variable | :value | :value01 | +|----------:|------------|-----------|-------:|-----------:| +| 2297 | 1967-07-01 | unemploy | 2944.0 | 0.02044683 | +| 2298 | 1967-08-01 | unemploy | 2945.0 | 0.02052578 | +| 2299 | 1967-09-01 | unemploy | 2958.0 | 0.02155206 | +| 2300 | 1967-10-01 | unemploy | 3143.0 | 0.03615694 | +| 2301 | 1967-11-01 | unemploy | 3066.0 | 0.03007816 | +| 2302 | 1967-12-01 | unemploy | 3018.0 | 0.02628878 | +| 2303 | 1968-01-01 | unemploy | 2878.0 | 0.01523644 | +| 2304 | 1968-02-01 | unemploy | 3001.0 | 0.02494671 | +| 2305 | 1968-03-01 | unemploy | 2877.0 | 0.01515750 | +| 2306 | 1968-04-01 | unemploy | 2709.0 | 0.00189469 | +| ... | ... | ... | ... | ... | +| 2860 | 2014-06-01 | unemploy | 9460.0 | 0.53485435 | +| 2861 | 2014-07-01 | unemploy | 9608.0 | 0.54653825 | +| 2862 | 2014-08-01 | unemploy | 9599.0 | 0.54582774 | +| 2863 | 2014-09-01 | unemploy | 9262.0 | 0.51922318 | +| 2864 | 2014-10-01 | unemploy | 8990.0 | 0.49775006 | +| 2865 | 2014-11-01 | unemploy | 9090.0 | 0.50564459 | +| 2866 | 2014-12-01 | unemploy | 8717.0 | 0.47619799 | +| 2867 | 2015-01-01 | unemploy | 8903.0 | 0.49088182 | +| 2868 | 2015-02-01 | unemploy | 8610.0 | 0.46775085 | +| 2869 | 2015-03-01 | unemploy | 8504.0 | 0.45938265 | +| 2870 | 2015-04-01 | unemploy | 8526.0 | 0.46111944 | +>, + :=color :com.rpl.specter.impl/NONE, + :=mark-color "purple", + :=x :date, + :=y2 :com.rpl.specter.impl/NONE, + :=x-after-stat :=x, + :DFMT {:type "csv"}, + :=encoding + {:color {:field :=color, :type :=color-type}, + :size {:field :=size, :type :=size-type}, + :x + {:field :=x-after-stat, + :type :=x-type-after-stat, + :title :=x-title, + :bin :=x-bin}, + :y + {:field :=y-after-stat, + :type :=y-type-after-stat, + :title :=y-title, + :bin :=y-bin}, + :x2 :=x2-encoding, + :y2 :=y2-encoding}, + :=x-type-after-stat + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211], + :=x-bin :com.rpl.specter.impl/NONE, + :=x-type + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211], + :=histogram-nbins 10, + :=stat :com.rpl.specter.impl/NONE, + :=width 400, + :=color-type + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211], + :=mark "circle", + :=dataset-after-stat + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211], + :=y-bin :com.rpl.specter.impl/NONE, + :=x-title :com.rpl.specter.impl/NONE, + :=csv-data + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211], + :=y :value, + :=data {:values :=csv-data, :format {:type "csv"}}, + :=dataset + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211], + :VALDATA :=csv-data, + :=mark-tooltip true, + :=background "floralwhite", + :=y-after-stat :=y, + :=predictors [:=x], + :=y2-encoding + #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211]}, + :height :=height, + :data :=data}

The structure returned by haclo/base is a Hanami template (with local defaults). When it is displayed, it goes through the Hanami transform to recieve the Vega-Lite spec.

When we use base, we can keep processing the template in a pipeline of transformations. We will use it soon with layers.

@@ -803,7 +807,7 @@

(haclo/layer-point {:=mark-color "green" :=mark-size 200})) -
+

You see, we have lots of data for the lines, but only five random points.

@@ -843,7 +847,7 @@

:y {:field :value, :type :quantitative}}, :data {:values - "rownames,date,variable,value,value01\n2782,2007-12-01,unemploy,7645.0,0.3915686429304492\n2717,2002-07-01,unemploy,8390.0,0.45038288466092996\n2594,1992-04-01,unemploy,9415.0,0.531301807847162\n2789,2008-07-01,unemploy,8937.0,0.49356595879055815\n2798,2009-04-01,unemploy,13853.0,0.8816610089208179\n", + "rownames,date,variable,value,value01\n2851,2013-09-01,unemploy,11270.0,0.6777453224915134\n2833,2012-03-01,unemploy,12713.0,0.7916633772795453\n2636,1995-10-01,unemploy,7328.0,0.3665429857109023\n2419,1977-09-01,unemploy,6751.0,0.32099155285387226\n2574,1990-08-01,unemploy,7188.0,0.35549064498302674\n", :format {:type "csv"}}}], :height 300, :data @@ -864,7 +868,7 @@

haclo/plot (assoc :background "lightgrey")) -
+

3.11 Smoothing

@@ -1650,6 +1654,9 @@

+ + 4  Plotlycloth Walkthrough (experimental 🛠) + diff --git a/docs/index.html b/docs/index.html index 1ce850d..c6a1b06 100644 --- a/docs/index.html +++ b/docs/index.html @@ -156,6 +156,12 @@ 3  Walkthrough + + @@ -225,8 +231,12 @@

Hanamicloth

(haclo/layer-point {:=mark-color "green" :=mark-size 200})) -
-

See more examples in the 👣 Walkthrough.

+
+

See more examples:

+

1 Preface

Hanamicloth is a composition of Hanami data visualization templates and Tablecloth datasets.

@@ -234,16 +244,14 @@

1 Preface

The current draft was written by Daniel Slutsky, mentored by jsa-aerial (Hanami author) and Kira McLean.

Source: (GiuHub repo)

Artifact: (Clojars coordinates)

-

Status: The existing API will soon move to beta stage, but still lacks some important features.

+

Status: The api namespace will soon move to beta stage, but still lacks some important features. The plotlycloth namespace is still experimental.


An early version of this library was demonstrated in Kira Mclean’s April 2024 talk at London Clojurians:

1.1 Near term plan

    -
  • Add minor improvements to the current Vega-Lite-based API.
  • -
  • Add a Plotly.js-based API.
  • -
  • Stabilize both as Beta stage.
  • +
  • Stabilize both the Vega-Lite-based API and the Plotly.js-based API as Beta stage.
  • Keep developing main ly the Plotly.js-based API (as it will be more flexible to extend).
@@ -276,6 +284,7 @@

  • Some datasets

  • Walkthrough

  • +
  • Plotlycloth Walkthrough (experimental 🛠)

  • diff --git a/docs/notebooks/chapters.edn b/docs/notebooks/chapters.edn index a84c0a5..e5918b1 100644 --- a/docs/notebooks/chapters.edn +++ b/docs/notebooks/chapters.edn @@ -1 +1 @@ -["datasets" "walkthrough"] +["datasets" "walkthrough" "plotlycloth_walkthrough"] diff --git a/docs/search.json b/docs/search.json index 5c16b7a..572bbff 100644 --- a/docs/search.json +++ b/docs/search.json @@ -4,7 +4,7 @@ "href": "index.html", "title": "Hanamicloth", "section": "", - "text": "1 Preface\nHanamicloth is a composition of Hanami data visualization templates and Tablecloth datasets.\nIt adds a simplified set of Hanami templates and defaults alongside those of Hanami, as well as a set of template-processing functions inspired by ggplot2’s layered grammar of graphics.\nThe current draft was written by Daniel Slutsky, mentored by jsa-aerial (Hanami author) and Kira McLean.\nSource:\nArtifact:\nStatus: The existing API will soon move to beta stage, but still lacks some important features.\nAn early version of this library was demonstrated in Kira Mclean’s April 2024 talk at London Clojurians:", + "text": "1 Preface\nHanamicloth is a composition of Hanami data visualization templates and Tablecloth datasets.\nIt adds a simplified set of Hanami templates and defaults alongside those of Hanami, as well as a set of template-processing functions inspired by ggplot2’s layered grammar of graphics.\nThe current draft was written by Daniel Slutsky, mentored by jsa-aerial (Hanami author) and Kira McLean.\nSource:\nArtifact:\nStatus: The api namespace will soon move to beta stage, but still lacks some important features. The plotlycloth namespace is still experimental.\nAn early version of this library was demonstrated in Kira Mclean’s April 2024 talk at London Clojurians:", "crumbs": [ "1  Preface" ] @@ -14,7 +14,7 @@ "href": "index.html#near-term-plan", "title": "Hanamicloth", "section": "1.1 Near term plan", - "text": "1.1 Near term plan\n\nAdd minor improvements to the current Vega-Lite-based API.\nAdd a Plotly.js-based API.\nStabilize both as Beta stage.\nKeep developing main ly the Plotly.js-based API (as it will be more flexible to extend).", + "text": "1.1 Near term plan\n\nStabilize both the Vega-Lite-based API and the Plotly.js-based API as Beta stage.\nKeep developing main ly the Plotly.js-based API (as it will be more flexible to extend).", "crumbs": [ "1  Preface" ] @@ -44,7 +44,7 @@ "href": "index.html#chapters-in-this-book", "title": "Hanamicloth", "section": "1.4 Chapters in this book:", - "text": "1.4 Chapters in this book:\n\nSome datasets\nWalkthrough\n\n\nsource: notebooks/index.clj", + "text": "1.4 Chapters in this book:\n\nSome datasets\nWalkthrough\nPlotlycloth Walkthrough (experimental 🛠)\n\n\nsource: notebooks/index.clj", "crumbs": [ "1  Preface" ] @@ -104,7 +104,7 @@ "href": "hanamicloth_book.walkthrough.html#setup", "title": "3  Walkthrough", "section": "", - "text": "Hanamicloth’s main API namepace\nHanami\nTablecloth\nthe datetime namespace of dtype-next,\nthe print namespace of tech.ml.dataset for customized dataset printing,\nKindly (which allows us to specify how values should be visualized).\nthe datasets defined in the Datasets chapter.\n\n\n(ns hanamicloth-book.walkthrough\n (:require [scicloj.hanamicloth.v1.api :as haclo]\n [aerial.hanami.templates :as ht]\n [tablecloth.api :as tc]\n [tech.v3.datatype.datetime :as datetime]\n [tech.v3.dataset.print :as print]\n [scicloj.kindly.v4.kind :as kind]\n [clojure.string :as str]\n [scicloj.kindly.v4.api :as kindly]\n [hanamicloth-book.datasets :as datasets]\n [aerial.hanami.common :as hc])\n (:import java.time.LocalDate))", + "text": "Hanamicloth’s main API namepace\nHanami\nTablecloth\nthe datetime namespace of dtype-next\nthe print namespace of tech.ml.dataset for customized dataset printing\nKindly (to specify how certaiun values should be visualized)\nthe datasets defined in the Datasets chapter\n\n\n(ns hanamicloth-book.walkthrough\n (:require [scicloj.hanamicloth.v1.api :as haclo]\n [aerial.hanami.templates :as ht]\n [tablecloth.api :as tc]\n [tech.v3.datatype.datetime :as datetime]\n [tech.v3.dataset.print :as print]\n [scicloj.kindly.v4.kind :as kind]\n [clojure.string :as str]\n [scicloj.kindly.v4.api :as kindly]\n [hanamicloth-book.datasets :as datasets]))", "crumbs": [ "3  Walkthrough" ] @@ -164,7 +164,7 @@ "href": "hanamicloth_book.walkthrough.html#delayed-transformation", "title": "3  Walkthrough", "section": "3.7 Delayed transformation", - "text": "3.7 Delayed transformation\nInstead of the haclo/plot function, it is possible to used haclo/base:\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (haclo/base haclo/line-chart\n {:=x :date\n :=y :value\n :=mark-color \"purple\"}))\n\n\nThe result is displayed the same way, but the internal representation delays the Hanami transformation of templates.\nLet us compare the two:\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (haclo/plot haclo/line-chart\n {:=x :date\n :=y :value\n :=mark-color \"purple\"})\n kind/pprint)\n\n\n{:encoding\n {:x {:field :date, :type :temporal},\n :y {:field :value, :type :quantitative}},\n :usermeta {:embedOptions {:renderer :svg}},\n :mark {:type \"line\", :color \"purple\", :tooltip true},\n :width 400,\n :background \"floralwhite\",\n :height 300,\n :data\n {:values\n \"rownames,date,variable,value,value01\\n2297,1967-07-01,unemploy,2944.0,0.020446830346569828\\n2298,1967-08-01,unemploy,2945.0,0.020525775637483226\\n2299,1967-09-01,unemploy,2958.0,0.021552064419357385\\n2300,1967-10-01,unemploy,3143.0,0.036156943238335834\\n2301,1967-11-01,unemploy,3066.0,0.030078155838004262\\n2302,1967-12-01,unemploy,3018.0,0.026288781874161206\\n2303,1968-01-01,unemploy,2878.0,0.015236441146285624\\n2304,1968-02-01,unemploy,3001.0,0.024946711928633458\\n2305,1968-03-01,unemploy,2877.0,0.015157495855372228\\n2306,1968-04-01,unemploy,2709.0,0.0018946869819215285\\n2307,1968-05-01,unemploy,2740.0,0.004341991000236836\\n2308,1968-06-01,unemploy,2938.0,0.019973158601089443\\n2309,1968-07-01,unemploy,2883.0,0.01563116760085261\\n2310,1968-08-01,unemploy,2768.0,0.006552459145811952\\n2311,1968-09-01,unemploy,2686.0,7.894529091339702E-5\\n2312,1968-10-01,unemploy,2689.0,3.157811636535881E-4\\n2313,1968-11-01,unemploy,2715.0,0.0023683587274019105\\n2314,1968-12-01,unemploy,2685.0,0.0\\n2315,1969-01-01,unemploy,2718.0,0.0026051946001421017\\n2316,1969-02-01,unemploy,2692.0,5.526170363937791E-4\\n2317,1969-03-01,unemploy,2712.0,0.0021315228546617193\\n2318,1969-04-01,unemploy,2758.0,0.005763006236677982\\n2319,1969-05-01,unemploy,2713.0,0.0022104681455751164\\n2320,1969-06-01,unemploy,2816.0,0.010341833109655009\\n2321,1969-07-01,unemploy,2868.0,0.014446988237151653\\n2322,1969-08-01,unemploy,2856.0,0.01349964474619089\\n2323,1969-09-01,unemploy,3040.0,0.02802557827425594\\n2324,1969-10-01,unemploy,3049.0,0.028736085892476514\\n2325,1969-11-01,unemploy,2856.0,0.01349964474619089\\n2326,1969-12-01,unemploy,2884.0,0.015710112891766007\\n2327,1970-01-01,unemploy,3201.0,0.04073577011131286\\n2328,1970-02-01,unemploy,3453.0,0.06062998342148891\\n2329,1970-03-01,unemploy,3635.0,0.07499802636772716\\n2330,1970-04-01,unemploy,3797.0,0.08778716349569748\\n2331,1970-05-01,unemploy,3919.0,0.09741848898713192\\n2332,1970-06-01,unemploy,4071.0,0.10941817320596826\\n2333,1970-07-01,unemploy,4175.0,0.11762848346096155\\n2334,1970-08-01,unemploy,4256.0,0.1240230520249467\\n2335,1970-09-01,unemploy,4456.0,0.13981211020762613\\n2336,1970-10-01,unemploy,4591.0,0.1504697244809347\\n2337,1970-11-01,unemploy,4898.0,0.1747059287913476\\n2338,1970-12-01,unemploy,5076.0,0.18875819057393226\\n2339,1971-01-01,unemploy,4986.0,0.18165311439172654\\n2340,1971-02-01,unemploy,4903.0,0.1751006552459146\\n2341,1971-03-01,unemploy,4987.0,0.18173205968263992\\n2342,1971-04-01,unemploy,4959.0,0.17952159153706482\\n2343,1971-05-01,unemploy,4996.0,0.1824425673008605\\n2344,1971-06-01,unemploy,4949.0,0.17873213862793083\\n2345,1971-07-01,unemploy,5035.0,0.185521433646483\\n2346,1971-08-01,unemploy,5134.0,0.1933370174469093\\n2347,1971-09-01,unemploy,5042.0,0.18607405068287677\\n2348,1971-10-01,unemploy,4954.0,0.17912686508249784\\n2349,1971-11-01,unemploy,5161.0,0.19546854030157101\\n2350,1971-12-01,unemploy,5154.0,0.19491592326517723\\n2351,1972-01-01,unemploy,5019.0,0.18425830899186862\\n2352,1972-02-01,unemploy,4928.0,0.1770742875187495\\n2353,1972-03-01,unemploy,5038.0,0.18575826951922317\\n2354,1972-04-01,unemploy,4959.0,0.17952159153706482\\n2355,1972-05-01,unemploy,4922.0,0.17660061577326913\\n2356,1972-06-01,unemploy,4923.0,0.17667956106418253\\n2357,1972-07-01,unemploy,4913.0,0.17589010815504855\\n2358,1972-08-01,unemploy,4939.0,0.17794268571879687\\n2359,1972-09-01,unemploy,4849.0,0.17083760953659113\\n2360,1972-10-01,unemploy,4875.0,0.17289018710033946\\n2361,1972-11-01,unemploy,4602.0,0.15133812268098207\\n2362,1972-12-01,unemploy,4543.0,0.14668035051709166\\n2363,1973-01-01,unemploy,4326.0,0.1295492223888845\\n2364,1973-02-01,unemploy,4452.0,0.13949632904397252\\n2365,1973-03-01,unemploy,4394.0,0.1349175021709955\\n2366,1973-04-01,unemploy,4459.0,0.1400489460803663\\n2367,1973-05-01,unemploy,4329.0,0.1297860582616247\\n2368,1973-06-01,unemploy,4363.0,0.13247019815268019\\n2369,1973-07-01,unemploy,4305.0,0.12789137127970315\\n2370,1973-08-01,unemploy,4305.0,0.12789137127970315\\n2371,1973-09-01,unemploy,4350.0,0.13144390937080602\\n2372,1973-10-01,unemploy,4144.0,0.11518117944264625\\n2373,1973-11-01,unemploy,4396.0,0.1350753927528223\\n2374,1973-12-01,unemploy,4489.0,0.1424173048077682\\n2375,1974-01-01,unemploy,4644.0,0.15465382489934476\\n2376,1974-02-01,unemploy,4731.0,0.1615220652088103\\n2377,1974-03-01,unemploy,4634.0,0.15386437199021077\\n2378,1974-04-01,unemploy,4618.0,0.15260124733559643\\n2379,1974-05-01,unemploy,4705.0,0.15946948764506197\\n2380,1974-06-01,unemploy,4927.0,0.1769953422278361\\n2381,1974-07-01,unemploy,5063.0,0.1877319017920581\\n2382,1974-08-01,unemploy,5022.0,0.18449514486460883\\n2383,1974-09-01,unemploy,5437.0,0.21725744059366858\\n2384,1974-10-01,unemploy,5523.0,0.22404673561222074\\n2385,1974-11-01,unemploy,6140.0,0.27275598010578667\\n2386,1974-12-01,unemploy,6636.0,0.3119128443988316\\n2387,1975-01-01,unemploy,7501.0,0.38020052103892005\\n2388,1975-02-01,unemploy,7520.0,0.38170048156627456\\n2389,1975-03-01,unemploy,7978.0,0.4178574248046104\\n2390,1975-04-01,unemploy,8210.0,0.43617273229651854\\n2391,1975-05-01,unemploy,8433.0,0.45377753217020605\\n2392,1975-06-01,unemploy,8220.0,0.4369621852056525\\n2393,1975-07-01,unemploy,8127.0,0.42962027315070656\\n2394,1975-08-01,unemploy,7928.0,0.41391016025894056\\n2395,1975-09-01,unemploy,7923.0,0.41351543380437356\\n2396,1975-10-01,unemploy,7897.0,0.41146285624062523\\n2397,1975-11-01,unemploy,7794.0,0.40333149127654533\\n2398,1975-12-01,unemploy,7744.0,0.3993842267308755\\n2399,1976-01-01,unemploy,7534.0,0.3828057156390621\\n2400,1976-02-01,unemploy,7326.0,0.3663850951290756\\n2401,1976-03-01,unemploy,7230.0,0.35880634720138943\\n2402,1976-04-01,unemploy,7330.0,0.3667008762927291\\n2403,1976-05-01,unemploy,7053.0,0.34483303070971816\\n2404,1976-06-01,unemploy,7322.0,0.36606931396542197\\n2405,1976-07-01,unemploy,7490.0,0.3793321228388727\\n2406,1976-08-01,unemploy,7518.0,0.38154259098444776\\n2407,1976-09-01,unemploy,7380.0,0.370648140838399\\n2408,1976-10-01,unemploy,7430.0,0.3745954053840688\\n2409,1976-11-01,unemploy,7620.0,0.38959501065761426\\n2410,1976-12-01,unemploy,7545.0,0.3836741138391095\\n2411,1977-01-01,unemploy,7280.0,0.3627536117470593\\n2412,1977-02-01,unemploy,7443.0,0.375621694165943\\n2413,1977-03-01,unemploy,7307.0,0.364885134601721\\n2414,1977-04-01,unemploy,7059.0,0.34530670245519857\\n2415,1977-05-01,unemploy,6911.0,0.33362279940001577\\n2416,1977-06-01,unemploy,7134.0,0.35122759927370334\\n2417,1977-07-01,unemploy,6829.0,0.32714928554511724\\n2418,1977-08-01,unemploy,6925.0,0.33472803347280333\\n2419,1977-09-01,unemploy,6751.0,0.32099155285387226\\n2420,1977-10-01,unemploy,6763.0,0.321938896344833\\n2421,1977-11-01,unemploy,6815.0,0.3260440514723297\\n2422,1977-12-01,unemploy,6386.0,0.29217652167048236\\n2423,1978-01-01,unemploy,6489.0,0.30030788663456226\\n2424,1978-02-01,unemploy,6318.0,0.28680824188837134\\n2425,1978-03-01,unemploy,6337.0,0.2883082024157259\\n2426,1978-04-01,unemploy,6180.0,0.27591379174232256\\n2427,1978-05-01,unemploy,6127.0,0.2717296913239125\\n2428,1978-06-01,unemploy,6028.0,0.2639141075234862\\n2429,1978-07-01,unemploy,6309.0,0.2860977342701508\\n2430,1978-08-01,unemploy,6080.0,0.26801926265098286\\n2431,1978-09-01,unemploy,6125.0,0.27157180074208576\\n2432,1978-10-01,unemploy,5947.0,0.2575195389595011\\n2433,1978-11-01,unemploy,6077.0,0.26778242677824265\\n2434,1978-12-01,unemploy,6228.0,0.2797031657061656\\n2435,1979-01-01,unemploy,6109.0,0.2703086760874714\\n2436,1979-02-01,unemploy,6173.0,0.2753611747059288\\n2437,1979-03-01,unemploy,6109.0,0.2703086760874714\\n2438,1979-04-01,unemploy,6069.0,0.2671508644509355\\n2439,1979-05-01,unemploy,5840.0,0.24907239283176758\\n2440,1979-06-01,unemploy,5959.0,0.25846688245046184\\n2441,1979-07-01,unemploy,5996.0,0.26138785821425753\\n2442,1979-08-01,unemploy,6320.0,0.28696613247019814\\n2443,1979-09-01,unemploy,6190.0,0.2767032446514565\\n2444,1979-10-01,unemploy,6296.0,0.2850714454882766\\n2445,1979-11-01,unemploy,6238.0,0.2804926186152996\\n2446,1979-12-01,unemploy,6325.0,0.28736085892476515\\n2447,1980-01-01,unemploy,6683.0,0.31562327307176125\\n2448,1980-02-01,unemploy,6702.0,0.3171232335991158\\n2449,1980-03-01,unemploy,6729.0,0.31925475645377754\\n2450,1980-04-01,unemploy,7358.0,0.36891134443830426\\n2451,1980-05-01,unemploy,7984.0,0.41833109655009076\\n2452,1980-06-01,unemploy,8098.0,0.427330859714218\\n2453,1980-07-01,unemploy,8363.0,0.44825136180626823\\n2454,1980-08-01,unemploy,8281.0,0.4417778479513697\\n2455,1980-09-01,unemploy,8021.0,0.42125207231388645\\n2456,1980-10-01,unemploy,8088.0,0.42654140680508407\\n2457,1980-11-01,unemploy,8023.0,0.42140996289571325\\n2458,1980-12-01,unemploy,7718.0,0.39733164916712715\\n2459,1981-01-01,unemploy,8071.0,0.42519933685955635\\n2460,1981-02-01,unemploy,8051.0,0.4236204310412884\\n2461,1981-03-01,unemploy,7982.0,0.418173205968264\\n2462,1981-04-01,unemploy,7869.0,0.40925238809505016\\n2463,1981-05-01,unemploy,8174.0,0.4333307018236362\\n2464,1981-06-01,unemploy,8098.0,0.427330859714218\\n2465,1981-07-01,unemploy,7863.0,0.40877871634956975\\n2466,1981-08-01,unemploy,8036.0,0.4224362516775874\\n2467,1981-09-01,unemploy,8230.0,0.43775163811478646\\n2468,1981-10-01,unemploy,8646.0,0.4705928791347596\\n2469,1981-11-01,unemploy,9029.0,0.5008289255545907\\n2470,1981-12-01,unemploy,9267.0,0.5196179047919791\\n2471,1982-01-01,unemploy,9397.0,0.5298807926107207\\n2472,1982-02-01,unemploy,9705.0,0.554195942212047\\n2473,1982-03-01,unemploy,9895.0,0.5691955474855925\\n2474,1982-04-01,unemploy,10244.0,0.596747454014368\\n2475,1982-05-01,unemploy,10335.0,0.6039314754874872\\n2476,1982-06-01,unemploy,10538.0,0.6199573695429068\\n2477,1982-07-01,unemploy,10849.0,0.6445093550169733\\n2478,1982-08-01,unemploy,10881.0,0.647035604326202\\n2479,1982-09-01,unemploy,11217.0,0.6735612220731033\\n2480,1982-10-01,unemploy,11529.0,0.6981921528380832\\n2481,1982-11-01,unemploy,11938.0,0.7304807768216626\\n2482,1982-12-01,unemploy,12051.0,0.7394015946948764\\n2483,1983-01-01,unemploy,11534.0,0.6985868792926502\\n2484,1983-02-01,unemploy,11545.0,0.6994552774926975\\n2485,1983-03-01,unemploy,11408.0,0.6886397726375622\\n2486,1983-04-01,unemploy,11268.0,0.6775874319096866\\n2487,1983-05-01,unemploy,11154.0,0.6685876687455593\\n2488,1983-06-01,unemploy,11246.0,0.6758506355095919\\n2489,1983-07-01,unemploy,10548.0,0.6207468224520407\\n2490,1983-08-01,unemploy,10623.0,0.6266677192705455\\n2491,1983-09-01,unemploy,10282.0,0.5997473750690772\\n2492,1983-10-01,unemploy,9887.0,0.5685639851582853\\n2493,1983-11-01,unemploy,9499.0,0.5379332122838872\\n2494,1983-12-01,unemploy,9331.0,0.5246704034104366\\n2495,1984-01-01,unemploy,9008.0,0.4991710744454093\\n2496,1984-02-01,unemploy,8791.0,0.4820399463172022\\n2497,1984-03-01,unemploy,8746.0,0.4784874082260993\\n2498,1984-04-01,unemploy,8762.0,0.4797505328807137\\n2499,1984-05-01,unemploy,8456.0,0.4555932738612142\\n2500,1984-06-01,unemploy,8226.0,0.43743585695113285\\n2501,1984-07-01,unemploy,8537.0,0.46198784242519936\\n2502,1984-08-01,unemploy,8519.0,0.4605668271887582\\n2503,1984-09-01,unemploy,8367.0,0.44856714296992184\\n2504,1984-10-01,unemploy,8381.0,0.4496723770427094\\n2505,1984-11-01,unemploy,8198.0,0.4352253888055577\\n2506,1984-12-01,unemploy,8358.0,0.4478566353517013\\n2507,1985-01-01,unemploy,8423.0,0.4529880792610721\\n2508,1985-02-01,unemploy,8321.0,0.4449356595879056\\n2509,1985-03-01,unemploy,8339.0,0.4463566748243467\\n2510,1985-04-01,unemploy,8395.0,0.45077761111549697\\n2511,1985-05-01,unemploy,8302.0,0.443435699060551\\n2512,1985-06-01,unemploy,8460.0,0.4559090550248678\\n2513,1985-07-01,unemploy,8513.0,0.46009315544327783\\n2514,1985-08-01,unemploy,8196.0,0.435067498223731\\n2515,1985-09-01,unemploy,8248.0,0.4391726533512276\\n2516,1985-10-01,unemploy,8298.0,0.4431199178968975\\n2517,1985-11-01,unemploy,8128.0,0.42969921844161996\\n2518,1985-12-01,unemploy,8138.0,0.4304886713507539\\n2519,1986-01-01,unemploy,7795.0,0.40341043656745873\\n2520,1986-02-01,unemploy,8402.0,0.4513302281518907\\n2521,1986-03-01,unemploy,8383.0,0.4498302676245362\\n2522,1986-04-01,unemploy,8364.0,0.44833030709718164\\n2523,1986-05-01,unemploy,8439.0,0.4542512039156864\\n2524,1986-06-01,unemploy,8508.0,0.4596984289887108\\n2525,1986-07-01,unemploy,8319.0,0.4447777690060788\\n2526,1986-08-01,unemploy,8135.0,0.4302518354780137\\n2527,1986-09-01,unemploy,8310.0,0.44406726138785824\\n2528,1986-10-01,unemploy,8243.0,0.4387779268966606\\n2529,1986-11-01,unemploy,8159.0,0.4321465224599353\\n2530,1986-12-01,unemploy,7883.0,0.41035762216783767\\n2531,1987-01-01,unemploy,7892.0,0.4110681297860583\\n2532,1987-02-01,unemploy,7865.0,0.40893660693139655\\n2533,1987-03-01,unemploy,7862.0,0.40869977105865635\\n2534,1987-04-01,unemploy,7542.0,0.3834372779663693\\n2535,1987-05-01,unemploy,7574.0,0.385963527275598\\n2536,1987-06-01,unemploy,7398.0,0.37206915607484015\\n2537,1987-07-01,unemploy,7268.0,0.3618062682560985\\n2538,1987-08-01,unemploy,7261.0,0.36125365121970476\\n2539,1987-09-01,unemploy,7102.0,0.3487013499644746\\n2540,1987-10-01,unemploy,7227.0,0.3585695113286492\\n2541,1987-11-01,unemploy,7035.0,0.34341201547327704\\n2542,1987-12-01,unemploy,6936.0,0.3355964316728507\\n2543,1988-01-01,unemploy,6953.0,0.33693850161837846\\n2544,1988-02-01,unemploy,6929.0,0.33504381463645694\\n2545,1988-03-01,unemploy,6876.0,0.3308597142180469\\n2546,1988-04-01,unemploy,6601.0,0.3091497592168627\\n2547,1988-05-01,unemploy,6779.0,0.3232020209994474\\n2548,1988-06-01,unemploy,6546.0,0.30480776821662586\\n2549,1988-07-01,unemploy,6605.0,0.3094655403805163\\n2550,1988-08-01,unemploy,6843.0,0.3282545196179048\\n2551,1988-09-01,unemploy,6604.0,0.3093865950896029\\n2552,1988-10-01,unemploy,6568.0,0.30654456461672064\\n2553,1988-11-01,unemploy,6537.0,0.3040972605984053\\n2554,1988-12-01,unemploy,6518.0,0.30259730007105073\\n2555,1989-01-01,unemploy,6682.0,0.3155443277808479\\n2556,1989-02-01,unemploy,6359.0,0.29004499881582063\\n2557,1989-03-01,unemploy,6205.0,0.2778874240151575\\n2558,1989-04-01,unemploy,6468.0,0.2986500355253809\\n2559,1989-05-01,unemploy,6375.0,0.291308123470435\\n2560,1989-06-01,unemploy,6577.0,0.3072550722349412\\n2561,1989-07-01,unemploy,6495.0,0.3007815583800426\\n2562,1989-08-01,unemploy,6511.0,0.302044683034657\\n2563,1989-09-01,unemploy,6590.0,0.30828136101681536\\n2564,1989-10-01,unemploy,6630.0,0.31143917265335125\\n2565,1989-11-01,unemploy,6725.0,0.31893897529012394\\n2566,1989-12-01,unemploy,6667.0,0.31436014841714693\\n2567,1990-01-01,unemploy,6752.0,0.32107049814478567\\n2568,1990-02-01,unemploy,6651.0,0.31309702376253257\\n2569,1990-03-01,unemploy,6598.0,0.3089129233441225\\n2570,1990-04-01,unemploy,6797.0,0.3246230362358885\\n2571,1990-05-01,unemploy,6742.0,0.3202810452356517\\n2572,1990-06-01,unemploy,6590.0,0.30828136101681536\\n2573,1990-07-01,unemploy,6922.0,0.3344911976000632\\n2574,1990-08-01,unemploy,7188.0,0.35549064498302674\\n2575,1990-09-01,unemploy,7368.0,0.3697007973474382\\n2576,1990-10-01,unemploy,7459.0,0.37688481882055735\\n2577,1990-11-01,unemploy,7764.0,0.40096313254914345\\n2578,1990-12-01,unemploy,7901.0,0.41177863740427884\\n2579,1991-01-01,unemploy,8015.0,0.4207784005684061\\n2580,1991-02-01,unemploy,8265.0,0.44051472329675534\\n2581,1991-03-01,unemploy,8586.0,0.4658561616799558\\n2582,1991-04-01,unemploy,8439.0,0.4542512039156864\\n2583,1991-05-01,unemploy,8736.0,0.47769795531696535\\n2584,1991-06-01,unemploy,8692.0,0.47422436251677585\\n2585,1991-07-01,unemploy,8586.0,0.4658561616799558\\n2586,1991-08-01,unemploy,8666.0,0.47217178495302753\\n2587,1991-09-01,unemploy,8722.0,0.4765927212441778\\n2588,1991-10-01,unemploy,8842.0,0.4860661561537854\\n2589,1991-11-01,unemploy,8931.0,0.49309228704507774\\n2590,1991-12-01,unemploy,9198.0,0.5141706797189548\\n2591,1992-01-01,unemploy,9283.0,0.5208810294465935\\n2592,1992-02-01,unemploy,9454.0,0.5343806741927845\\n2593,1992-03-01,unemploy,9460.0,0.5348543459382648\\n2594,1992-04-01,unemploy,9415.0,0.531301807847162\\n2595,1992-05-01,unemploy,9744.0,0.5572748085576695\\n2596,1992-06-01,unemploy,10040.0,0.580642614668035\\n2597,1992-07-01,unemploy,9850.0,0.5656430093944896\\n2598,1992-08-01,unemploy,9787.0,0.5606694560669456\\n2599,1992-09-01,unemploy,9781.0,0.5601957843214652\\n2600,1992-10-01,unemploy,9398.0,0.5299597379016342\\n2601,1992-11-01,unemploy,9565.0,0.5431436014841715\\n2602,1992-12-01,unemploy,9557.0,0.5425120391568643\\n2603,1993-01-01,unemploy,9325.0,0.5241967316649562\\n2604,1993-02-01,unemploy,9183.0,0.5129865003552538\\n2605,1993-03-01,unemploy,9056.0,0.5029604484092524\\n2606,1993-04-01,unemploy,9110.0,0.5072234941185758\\n2607,1993-05-01,unemploy,9149.0,0.5103023604641983\\n2608,1993-06-01,unemploy,9121.0,0.5080918923186232\\n2609,1993-07-01,unemploy,8930.0,0.4930133417541644\\n2610,1993-08-01,unemploy,8763.0,0.4798294781716271\\n2611,1993-09-01,unemploy,8714.0,0.47596115891687063\\n2612,1993-10-01,unemploy,8750.0,0.4788031893897529\\n2613,1993-11-01,unemploy,8542.0,0.4623825688797663\\n2614,1993-12-01,unemploy,8477.0,0.4572511249703955\\n2615,1994-01-01,unemploy,8630.0,0.46932975448014524\\n2616,1994-02-01,unemploy,8583.0,0.4656193258072156\\n2617,1994-03-01,unemploy,8470.0,0.45669850793400174\\n2618,1994-04-01,unemploy,8331.0,0.44572511249703956\\n2619,1994-05-01,unemploy,7915.0,0.4128838714770664\\n2620,1994-06-01,unemploy,7927.0,0.41383121496802716\\n2621,1994-07-01,unemploy,7946.0,0.4153311754953817\\n2622,1994-08-01,unemploy,7933.0,0.4143048867135075\\n2623,1994-09-01,unemploy,7734.0,0.3985947738217415\\n2624,1994-10-01,unemploy,7632.0,0.390542354148575\\n2625,1994-11-01,unemploy,7375.0,0.370253414383832\\n2626,1994-12-01,unemploy,7230.0,0.35880634720138943\\n2627,1995-01-01,unemploy,7375.0,0.370253414383832\\n2628,1995-02-01,unemploy,7187.0,0.3554116996921134\\n2629,1995-03-01,unemploy,7153.0,0.35272755980105786\\n2630,1995-04-01,unemploy,7645.0,0.3915686429304492\\n2631,1995-05-01,unemploy,7430.0,0.3745954053840688\\n2632,1995-06-01,unemploy,7427.0,0.3743585695113287\\n2633,1995-07-01,unemploy,7527.0,0.3822530986026684\\n2634,1995-08-01,unemploy,7484.0,0.3788584510933923\\n2635,1995-09-01,unemploy,7478.0,0.37838477934791187\\n2636,1995-10-01,unemploy,7328.0,0.3665429857109023\\n2637,1995-11-01,unemploy,7426.0,0.3742796242204153\\n2638,1995-12-01,unemploy,7423.0,0.37404278834767507\\n2639,1996-01-01,unemploy,7491.0,0.37941106812978603\\n2640,1996-02-01,unemploy,7313.0,0.3653588063472014\\n2641,1996-03-01,unemploy,7318.0,0.36575353280176837\\n2642,1996-04-01,unemploy,7415.0,0.37341122602036786\\n2643,1996-05-01,unemploy,7423.0,0.37404278834767507\\n2644,1996-06-01,unemploy,7095.0,0.34814873292808085\\n2645,1996-07-01,unemploy,7337.0,0.36725349332912294\\n2646,1996-08-01,unemploy,6882.0,0.3313333859635273\\n2647,1996-09-01,unemploy,6979.0,0.3389910791821268\\n2648,1996-10-01,unemploy,7031.0,0.34309623430962344\\n2649,1996-11-01,unemploy,7236.0,0.35928001894686984\\n2650,1996-12-01,unemploy,7253.0,0.36062208889239755\\n2651,1997-01-01,unemploy,7158.0,0.35312228625562486\\n2652,1997-02-01,unemploy,7102.0,0.3487013499644746\\n2653,1997-03-01,unemploy,7000.0,0.3406489302913081\\n2654,1997-04-01,unemploy,6873.0,0.3306228783453067\\n2655,1997-05-01,unemploy,6655.0,0.3134128049261862\\n2656,1997-06-01,unemploy,6799.0,0.3247809268177153\\n2657,1997-07-01,unemploy,6655.0,0.3134128049261862\\n2658,1997-08-01,unemploy,6608.0,0.3097023762532565\\n2659,1997-09-01,unemploy,6656.0,0.3134917502170996\\n2660,1997-10-01,unemploy,6454.0,0.2975448014525934\\n2661,1997-11-01,unemploy,6308.0,0.2860187889792374\\n2662,1997-12-01,unemploy,6476.0,0.2992815978526881\\n2663,1998-01-01,unemploy,6368.0,0.2907555064340412\\n2664,1998-02-01,unemploy,6306.0,0.2858608983974106\\n2665,1998-03-01,unemploy,6422.0,0.29501855214336464\\n2666,1998-04-01,unemploy,5941.0,0.2570458672140207\\n2667,1998-05-01,unemploy,6047.0,0.2654140680508408\\n2668,1998-06-01,unemploy,6212.0,0.2784400410515513\\n2669,1998-07-01,unemploy,6259.0,0.28215046972448093\\n2670,1998-08-01,unemploy,6179.0,0.27583484645140915\\n2671,1998-09-01,unemploy,6300.0,0.2853872266519302\\n2672,1998-10-01,unemploy,6280.0,0.28380832083366225\\n2673,1998-11-01,unemploy,6100.0,0.26959816846925083\\n2674,1998-12-01,unemploy,6032.0,0.2642298886871398\\n2675,1999-01-01,unemploy,5976.0,0.25980895239598956\\n2676,1999-02-01,unemploy,6111.0,0.2704665666692982\\n2677,1999-03-01,unemploy,5783.0,0.24457251124970394\\n2678,1999-04-01,unemploy,6004.0,0.2620194205415647\\n2679,1999-05-01,unemploy,5796.0,0.2455988000315781\\n2680,1999-06-01,unemploy,5951.0,0.25783532012315463\\n2681,1999-07-01,unemploy,6025.0,0.26367727165074606\\n2682,1999-08-01,unemploy,5838.0,0.2489145022499408\\n2683,1999-09-01,unemploy,5915.0,0.25499328965027235\\n2684,1999-10-01,unemploy,5778.0,0.24417778479513697\\n2685,1999-11-01,unemploy,5716.0,0.23928317675850636\\n2686,1999-12-01,unemploy,5653.0,0.23430962343096234\\n2687,2000-01-01,unemploy,5708.0,0.23865161443119917\\n2688,2000-02-01,unemploy,5858.0,0.25049340806820874\\n2689,2000-03-01,unemploy,5733.0,0.2406252467040341\\n2690,2000-04-01,unemploy,5481.0,0.22073103339385805\\n2691,2000-05-01,unemploy,5758.0,0.24259887897686902\\n2692,2000-06-01,unemploy,5651.0,0.23415173284913554\\n2693,2000-07-01,unemploy,5747.0,0.24173048077682166\\n2694,2000-08-01,unemploy,5853.0,0.25009868161364174\\n2695,2000-09-01,unemploy,5625.0,0.23209915528538722\\n2696,2000-10-01,unemploy,5534.0,0.2249151338122681\\n2697,2000-11-01,unemploy,5639.0,0.23320438935817478\\n2698,2000-12-01,unemploy,5634.0,0.2328096629036078\\n2699,2001-01-01,unemploy,6023.0,0.26351938106891926\\n2700,2001-02-01,unemploy,6089.0,0.2687297702692034\\n2701,2001-03-01,unemploy,6141.0,0.27283492539670007\\n2702,2001-04-01,unemploy,6271.0,0.2830978132154417\\n2703,2001-05-01,unemploy,6226.0,0.27954527512433885\\n2704,2001-06-01,unemploy,6484.0,0.29991316017999525\\n2705,2001-07-01,unemploy,6583.0,0.30772874398042155\\n2706,2001-08-01,unemploy,7042.0,0.3439646325096708\\n2707,2001-09-01,unemploy,7142.0,0.3518591616010105\\n2708,2001-10-01,unemploy,7694.0,0.39543696218520563\\n2709,2001-11-01,unemploy,8003.0,0.41983105707744534\\n2710,2001-12-01,unemploy,8258.0,0.4399621062603616\\n2711,2002-01-01,unemploy,8182.0,0.4339622641509434\\n2712,2002-02-01,unemploy,8215.0,0.4365674587510855\\n2713,2002-03-01,unemploy,8304.0,0.44359358964237783\\n2714,2002-04-01,unemploy,8599.0,0.46688245046182997\\n2715,2002-05-01,unemploy,8399.0,0.4510933922791506\\n2716,2002-06-01,unemploy,8393.0,0.45061972053367016\\n2717,2002-07-01,unemploy,8390.0,0.45038288466092996\\n2718,2002-08-01,unemploy,8304.0,0.44359358964237783\\n2719,2002-09-01,unemploy,8251.0,0.4394094892239678\\n2720,2002-10-01,unemploy,8307.0,0.44383042551511803\\n2721,2002-11-01,unemploy,8520.0,0.4606457724796716\\n2722,2002-12-01,unemploy,8640.0,0.4701192073892792\\n2723,2003-01-01,unemploy,8520.0,0.4606457724796716\\n2724,2003-02-01,unemploy,8618.0,0.4683824109891845\\n2725,2003-03-01,unemploy,8588.0,0.4660140522617826\\n2726,2003-04-01,unemploy,8842.0,0.4860661561537854\\n2727,2003-05-01,unemploy,8957.0,0.49514486460882606\\n2728,2003-06-01,unemploy,9266.0,0.5195389595010658\\n2729,2003-07-01,unemploy,9011.0,0.4994079103181495\\n2730,2003-08-01,unemploy,8896.0,0.49032920186310885\\n2731,2003-09-01,unemploy,8921.0,0.4923028341359438\\n2732,2003-10-01,unemploy,8732.0,0.47738217415331174\\n2733,2003-11-01,unemploy,8576.0,0.46506670877082185\\n2734,2003-12-01,unemploy,8317.0,0.444619878424252\\n2735,2004-01-01,unemploy,8370.0,0.44880397884266204\\n2736,2004-02-01,unemploy,8167.0,0.43277808478724245\\n2737,2004-03-01,unemploy,8491.0,0.45835635904318306\\n2738,2004-04-01,unemploy,8170.0,0.43301492065998265\\n2739,2004-05-01,unemploy,8212.0,0.4363306228783453\\n2740,2004-06-01,unemploy,8286.0,0.4421725744059367\\n2741,2004-07-01,unemploy,8136.0,0.4303307807689271\\n2742,2004-08-01,unemploy,7990.0,0.4188047682955712\\n2743,2004-09-01,unemploy,7927.0,0.41383121496802716\\n2744,2004-10-01,unemploy,8061.0,0.42440988395042234\\n2745,2004-11-01,unemploy,7932.0,0.41422594142259417\\n2746,2004-12-01,unemploy,7934.0,0.4143838320044209\\n2747,2005-01-01,unemploy,7784.0,0.40254203836741137\\n2748,2005-02-01,unemploy,7980.0,0.4180153153864372\\n2749,2005-03-01,unemploy,7737.0,0.3988316096944817\\n2750,2005-04-01,unemploy,7672.0,0.3937001657851109\\n2751,2005-05-01,unemploy,7651.0,0.3920423146759296\\n2752,2005-06-01,unemploy,7524.0,0.38201626272992817\\n2753,2005-07-01,unemploy,7406.0,0.3727007184021473\\n2754,2005-08-01,unemploy,7345.0,0.3678850556564301\\n2755,2005-09-01,unemploy,7553.0,0.3843056761664167\\n2756,2005-10-01,unemploy,7453.0,0.37641114707507695\\n2757,2005-11-01,unemploy,7566.0,0.38533196494829086\\n2758,2005-12-01,unemploy,7279.0,0.3626746664561459\\n2759,2006-01-01,unemploy,7064.0,0.3457014289097655\\n2760,2006-02-01,unemploy,7184.0,0.3551748638193732\\n2761,2006-03-01,unemploy,7072.0,0.34633299123707273\\n2762,2006-04-01,unemploy,7120.0,0.3501223652009158\\n2763,2006-05-01,unemploy,6980.0,0.3390700244730402\\n2764,2006-06-01,unemploy,7001.0,0.3407278755822215\\n2765,2006-07-01,unemploy,7175.0,0.3544643562011526\\n2766,2006-08-01,unemploy,7091.0,0.34783295176442725\\n2767,2006-09-01,unemploy,6847.0,0.32857030078155836\\n2768,2006-10-01,unemploy,6727.0,0.31909686587195074\\n2769,2006-11-01,unemploy,6872.0,0.3305439330543933\\n2770,2006-12-01,unemploy,6762.0,0.3218599510539196\\n2771,2007-01-01,unemploy,7116.0,0.34980658403726217\\n2772,2007-02-01,unemploy,6927.0,0.33488592405463014\\n2773,2007-03-01,unemploy,6731.0,0.31941264703560435\\n2774,2007-04-01,unemploy,6850.0,0.32880713665429856\\n2775,2007-05-01,unemploy,6766.0,0.32217573221757323\\n2776,2007-06-01,unemploy,6979.0,0.3389910791821268\\n2777,2007-07-01,unemploy,7149.0,0.3524117786374043\\n2778,2007-08-01,unemploy,7067.0,0.3459382647825057\\n2779,2007-09-01,unemploy,7170.0,0.3540696297465856\\n2780,2007-10-01,unemploy,7237.0,0.35935896423778324\\n2781,2007-11-01,unemploy,7240.0,0.3595958001105234\\n2782,2007-12-01,unemploy,7645.0,0.3915686429304492\\n2783,2008-01-01,unemploy,7685.0,0.3947264545669851\\n2784,2008-02-01,unemploy,7497.0,0.37988473987526644\\n2785,2008-03-01,unemploy,7822.0,0.40554195942212046\\n2786,2008-04-01,unemploy,7637.0,0.39093708060314203\\n2787,2008-05-01,unemploy,8395.0,0.45077761111549697\\n2788,2008-06-01,unemploy,8575.0,0.46498776347990844\\n2789,2008-07-01,unemploy,8937.0,0.49356595879055815\\n2790,2008-08-01,unemploy,9438.0,0.53311754953817\\n2791,2008-09-01,unemploy,9494.0,0.5375384858293203\\n2792,2008-10-01,unemploy,10074.0,0.5833267545590906\\n2793,2008-11-01,unemploy,10538.0,0.6199573695429068\\n2794,2008-12-01,unemploy,11286.0,0.6790084471461277\\n2795,2009-01-01,unemploy,12058.0,0.7399542117312702\\n2796,2009-02-01,unemploy,12898.0,0.8062682560985237\\n2797,2009-03-01,unemploy,13426.0,0.8479513697007973\\n2798,2009-04-01,unemploy,13853.0,0.8816610089208179\\n2799,2009-05-01,unemploy,14499.0,0.9326596668508723\\n2800,2009-06-01,unemploy,14707.0,0.9490802873608589\\n2801,2009-07-01,unemploy,14601.0,0.9407120865240388\\n2802,2009-08-01,unemploy,14814.0,0.9575274334885924\\n2803,2009-09-01,unemploy,15009.0,0.9729217652167048\\n2804,2009-10-01,unemploy,15352.0,1.0\\n2805,2009-11-01,unemploy,15219.0,0.9895002763085182\\n2806,2009-12-01,unemploy,15098.0,0.9799478961079972\\n2807,2010-01-01,unemploy,15046.0,0.9758427409805005\\n2808,2010-02-01,unemploy,15113.0,0.9811320754716981\\n2809,2010-03-01,unemploy,15202.0,0.9881582063629905\\n2810,2010-04-01,unemploy,15325.0,0.9978684771453383\\n2811,2010-05-01,unemploy,14849.0,0.9602905186705613\\n2812,2010-06-01,unemploy,14474.0,0.9306860345780374\\n2813,2010-07-01,unemploy,14512.0,0.9336859556327465\\n2814,2010-08-01,unemploy,14648.0,0.9444225151969685\\n2815,2010-09-01,unemploy,14579.0,0.9389752901239441\\n2816,2010-10-01,unemploy,14516.0,0.9340017367964001\\n2817,2010-11-01,unemploy,15081.0,0.9786058261624694\\n2818,2010-12-01,unemploy,14348.0,0.9207389279229494\\n2819,2011-01-01,unemploy,14013.0,0.8942922554669614\\n2820,2011-02-01,unemploy,13820.0,0.8790558143206758\\n2821,2011-03-01,unemploy,13737.0,0.8725033551748638\\n2822,2011-04-01,unemploy,13957.0,0.8898713191758112\\n2823,2011-05-01,unemploy,13855.0,0.8818188995026447\\n2824,2011-06-01,unemploy,13962.0,0.8902660456303781\\n2825,2011-07-01,unemploy,13763.0,0.8745559327386121\\n2826,2011-08-01,unemploy,13818.0,0.878897923738849\\n2827,2011-09-01,unemploy,13948.0,0.8891608115575906\\n2828,2011-10-01,unemploy,13594.0,0.8612141785742481\\n2829,2011-11-01,unemploy,13302.0,0.8381621536275361\\n2830,2011-12-01,unemploy,13093.0,0.8216625878266361\\n2831,2012-01-01,unemploy,12797.0,0.7982947817162707\\n2832,2012-02-01,unemploy,12813.0,0.799557906370885\\n2833,2012-03-01,unemploy,12713.0,0.7916633772795453\\n2834,2012-04-01,unemploy,12646.0,0.7863740427883477\\n2835,2012-05-01,unemploy,12660.0,0.7874792768611353\\n2836,2012-06-01,unemploy,12692.0,0.7900055261703639\\n2837,2012-07-01,unemploy,12656.0,0.7871634956974817\\n2838,2012-08-01,unemploy,12471.0,0.7725586168785032\\n2839,2012-09-01,unemploy,12115.0,0.7444540933133339\\n2840,2012-10-01,unemploy,12124.0,0.7451646009315545\\n2841,2012-11-01,unemploy,12005.0,0.7357701113128602\\n2842,2012-12-01,unemploy,12298.0,0.7589010815504855\\n2843,2013-01-01,unemploy,12471.0,0.7725586168785032\\n2844,2013-02-01,unemploy,11950.0,0.7314281203126234\\n2845,2013-03-01,unemploy,11689.0,0.7108233993842268\\n2846,2013-04-01,unemploy,11760.0,0.7164285150390779\\n2847,2013-05-01,unemploy,11654.0,0.7080603142022578\\n2848,2013-06-01,unemploy,11751.0,0.7157180074208573\\n2849,2013-07-01,unemploy,11335.0,0.6828767664008842\\n2850,2013-08-01,unemploy,11279.0,0.678455830109734\\n2851,2013-09-01,unemploy,11270.0,0.6777453224915134\\n2852,2013-10-01,unemploy,11136.0,0.6671666535091182\\n2853,2013-11-01,unemploy,10787.0,0.6396147469803426\\n2854,2013-12-01,unemploy,10404.0,0.6093787005605116\\n2855,2014-01-01,unemploy,10202.0,0.5934317517960054\\n2856,2014-02-01,unemploy,10349.0,0.6050367095602748\\n2857,2014-03-01,unemploy,10380.0,0.60748401357859\\n2858,2014-04-01,unemploy,9702.0,0.5539591063393069\\n2859,2014-05-01,unemploy,9859.0,0.5663535170127102\\n2860,2014-06-01,unemploy,9460.0,0.5348543459382648\\n2861,2014-07-01,unemploy,9608.0,0.5465382489934475\\n2862,2014-08-01,unemploy,9599.0,0.5458277413752269\\n2863,2014-09-01,unemploy,9262.0,0.5192231783374122\\n2864,2014-10-01,unemploy,8990.0,0.4977500592089682\\n2865,2014-11-01,unemploy,9090.0,0.5056445883003079\\n2866,2014-12-01,unemploy,8717.0,0.4761979947896108\\n2867,2015-01-01,unemploy,8903.0,0.49088181889950266\\n2868,2015-02-01,unemploy,8610.0,0.4677508486618773\\n2869,2015-03-01,unemploy,8504.0,0.4593826478250572\\n2870,2015-04-01,unemploy,8526.0,0.46111944422515194\\n\",\n :format {:type \"csv\"}}}\n\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (haclo/base haclo/line-chart\n {:=x :date\n :=y :value\n :=mark-color \"purple\"})\n kind/pprint)\n\n\n{:encoding :=encoding,\n :usermeta :=usermeta,\n :mark\n {:type \"line\",\n :color :=mark-color,\n :size :=mark-size,\n :opacity :=mark-opacity,\n :tooltip :=mark-tooltip},\n :width :=width,\n :background :=background,\n :title :=title,\n :layer :=layer,\n :kindly/f #'scicloj.hanamicloth.v1.api/vega-lite-xform,\n :aerial.hanami.templates/defaults\n {:=x2 :com.rpl.specter.impl/NONE,\n :=base-dataset\n #<WrappedValue@36ca353f: ggplot2/economics_long [574 5]:\n\n| :rownames | :date | :variable | :value | :value01 |\n|----------:|------------|-----------|-------:|-----------:|\n| 2297 | 1967-07-01 | unemploy | 2944.0 | 0.02044683 |\n| 2298 | 1967-08-01 | unemploy | 2945.0 | 0.02052578 |\n| 2299 | 1967-09-01 | unemploy | 2958.0 | 0.02155206 |\n| 2300 | 1967-10-01 | unemploy | 3143.0 | 0.03615694 |\n| 2301 | 1967-11-01 | unemploy | 3066.0 | 0.03007816 |\n| 2302 | 1967-12-01 | unemploy | 3018.0 | 0.02628878 |\n| 2303 | 1968-01-01 | unemploy | 2878.0 | 0.01523644 |\n| 2304 | 1968-02-01 | unemploy | 3001.0 | 0.02494671 |\n| 2305 | 1968-03-01 | unemploy | 2877.0 | 0.01515750 |\n| 2306 | 1968-04-01 | unemploy | 2709.0 | 0.00189469 |\n| ... | ... | ... | ... | ... |\n| 2860 | 2014-06-01 | unemploy | 9460.0 | 0.53485435 |\n| 2861 | 2014-07-01 | unemploy | 9608.0 | 0.54653825 |\n| 2862 | 2014-08-01 | unemploy | 9599.0 | 0.54582774 |\n| 2863 | 2014-09-01 | unemploy | 9262.0 | 0.51922318 |\n| 2864 | 2014-10-01 | unemploy | 8990.0 | 0.49775006 |\n| 2865 | 2014-11-01 | unemploy | 9090.0 | 0.50564459 |\n| 2866 | 2014-12-01 | unemploy | 8717.0 | 0.47619799 |\n| 2867 | 2015-01-01 | unemploy | 8903.0 | 0.49088182 |\n| 2868 | 2015-02-01 | unemploy | 8610.0 | 0.46775085 |\n| 2869 | 2015-03-01 | unemploy | 8504.0 | 0.45938265 |\n| 2870 | 2015-04-01 | unemploy | 8526.0 | 0.46111944 |\n>,\n :=layer [],\n :=y-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465],\n :=x2-encoding\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465],\n :=opacity :com.rpl.specter.impl/NONE,\n :=y2-after-stat :=y2,\n :=x2-after-stat :=x2,\n :=usermeta {:embedOptions {:renderer :=renderer}},\n :=title :com.rpl.specter.impl/NONE,\n :=y-type-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465],\n :=height 300,\n :=renderer :svg,\n :=mark-opacity :com.rpl.specter.impl/NONE,\n :=y-title :com.rpl.specter.impl/NONE,\n :=size :com.rpl.specter.impl/NONE,\n :=group\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465],\n :=mark-size :com.rpl.specter.impl/NONE,\n :=layer? :com.rpl.specter.impl/NONE,\n :=size-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465],\n :=layer-dataset\n #<WrappedValue@36ca353f: ggplot2/economics_long [574 5]:\n\n| :rownames | :date | :variable | :value | :value01 |\n|----------:|------------|-----------|-------:|-----------:|\n| 2297 | 1967-07-01 | unemploy | 2944.0 | 0.02044683 |\n| 2298 | 1967-08-01 | unemploy | 2945.0 | 0.02052578 |\n| 2299 | 1967-09-01 | unemploy | 2958.0 | 0.02155206 |\n| 2300 | 1967-10-01 | unemploy | 3143.0 | 0.03615694 |\n| 2301 | 1967-11-01 | unemploy | 3066.0 | 0.03007816 |\n| 2302 | 1967-12-01 | unemploy | 3018.0 | 0.02628878 |\n| 2303 | 1968-01-01 | unemploy | 2878.0 | 0.01523644 |\n| 2304 | 1968-02-01 | unemploy | 3001.0 | 0.02494671 |\n| 2305 | 1968-03-01 | unemploy | 2877.0 | 0.01515750 |\n| 2306 | 1968-04-01 | unemploy | 2709.0 | 0.00189469 |\n| ... | ... | ... | ... | ... |\n| 2860 | 2014-06-01 | unemploy | 9460.0 | 0.53485435 |\n| 2861 | 2014-07-01 | unemploy | 9608.0 | 0.54653825 |\n| 2862 | 2014-08-01 | unemploy | 9599.0 | 0.54582774 |\n| 2863 | 2014-09-01 | unemploy | 9262.0 | 0.51922318 |\n| 2864 | 2014-10-01 | unemploy | 8990.0 | 0.49775006 |\n| 2865 | 2014-11-01 | unemploy | 9090.0 | 0.50564459 |\n| 2866 | 2014-12-01 | unemploy | 8717.0 | 0.47619799 |\n| 2867 | 2015-01-01 | unemploy | 8903.0 | 0.49088182 |\n| 2868 | 2015-02-01 | unemploy | 8610.0 | 0.46775085 |\n| 2869 | 2015-03-01 | unemploy | 8504.0 | 0.45938265 |\n| 2870 | 2015-04-01 | unemploy | 8526.0 | 0.46111944 |\n>,\n :=color :com.rpl.specter.impl/NONE,\n :=mark-color \"purple\",\n :=x :date,\n :=y2 :com.rpl.specter.impl/NONE,\n :=x-after-stat :=x,\n :DFMT {:type \"csv\"},\n :=encoding\n {:color {:field :=color, :type :=color-type},\n :size {:field :=size, :type :=size-type},\n :x\n {:field :=x-after-stat,\n :type :=x-type-after-stat,\n :title :=x-title,\n :bin :=x-bin},\n :y\n {:field :=y-after-stat,\n :type :=y-type-after-stat,\n :title :=y-title,\n :bin :=y-bin},\n :x2 :=x2-encoding,\n :y2 :=y2-encoding},\n :=x-type-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465],\n :=x-bin :com.rpl.specter.impl/NONE,\n :=x-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465],\n :=histogram-nbins 10,\n :=stat :com.rpl.specter.impl/NONE,\n :=width 400,\n :=color-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465],\n :=mark \"circle\",\n :=dataset-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465],\n :=y-bin :com.rpl.specter.impl/NONE,\n :=x-title :com.rpl.specter.impl/NONE,\n :=csv-data\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465],\n :=y :value,\n :=data {:values :=csv-data, :format {:type \"csv\"}},\n :=dataset\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465],\n :VALDATA :=csv-data,\n :=mark-tooltip true,\n :=background \"floralwhite\",\n :=y-after-stat :=y,\n :=predictors [:=x],\n :=y2-encoding\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--47465]},\n :height :=height,\n :data :=data}\n\nThe structure returned by haclo/base is a Hanami template (with local defaults). When it is displayed, it goes through the Hanami transform to recieve the Vega-Lite spec.\nWhen we use base, we can keep processing the template in a pipeline of transformations. We will use it soon with layers.", + "text": "3.7 Delayed transformation\nInstead of the haclo/plot function, it is possible to used haclo/base:\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (haclo/base haclo/line-chart\n {:=x :date\n :=y :value\n :=mark-color \"purple\"}))\n\n\nThe result is displayed the same way, but the internal representation delays the Hanami transformation of templates.\nLet us compare the two:\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (haclo/plot haclo/line-chart\n {:=x :date\n :=y :value\n :=mark-color \"purple\"})\n kind/pprint)\n\n\n{:encoding\n {:x {:field :date, :type :temporal},\n :y {:field :value, :type :quantitative}},\n :usermeta {:embedOptions {:renderer :svg}},\n :mark {:type \"line\", :color \"purple\", :tooltip true},\n :width 400,\n :background \"floralwhite\",\n :height 300,\n :data\n {:values\n \"rownames,date,variable,value,value01\\n2297,1967-07-01,unemploy,2944.0,0.020446830346569828\\n2298,1967-08-01,unemploy,2945.0,0.020525775637483226\\n2299,1967-09-01,unemploy,2958.0,0.021552064419357385\\n2300,1967-10-01,unemploy,3143.0,0.036156943238335834\\n2301,1967-11-01,unemploy,3066.0,0.030078155838004262\\n2302,1967-12-01,unemploy,3018.0,0.026288781874161206\\n2303,1968-01-01,unemploy,2878.0,0.015236441146285624\\n2304,1968-02-01,unemploy,3001.0,0.024946711928633458\\n2305,1968-03-01,unemploy,2877.0,0.015157495855372228\\n2306,1968-04-01,unemploy,2709.0,0.0018946869819215285\\n2307,1968-05-01,unemploy,2740.0,0.004341991000236836\\n2308,1968-06-01,unemploy,2938.0,0.019973158601089443\\n2309,1968-07-01,unemploy,2883.0,0.01563116760085261\\n2310,1968-08-01,unemploy,2768.0,0.006552459145811952\\n2311,1968-09-01,unemploy,2686.0,7.894529091339702E-5\\n2312,1968-10-01,unemploy,2689.0,3.157811636535881E-4\\n2313,1968-11-01,unemploy,2715.0,0.0023683587274019105\\n2314,1968-12-01,unemploy,2685.0,0.0\\n2315,1969-01-01,unemploy,2718.0,0.0026051946001421017\\n2316,1969-02-01,unemploy,2692.0,5.526170363937791E-4\\n2317,1969-03-01,unemploy,2712.0,0.0021315228546617193\\n2318,1969-04-01,unemploy,2758.0,0.005763006236677982\\n2319,1969-05-01,unemploy,2713.0,0.0022104681455751164\\n2320,1969-06-01,unemploy,2816.0,0.010341833109655009\\n2321,1969-07-01,unemploy,2868.0,0.014446988237151653\\n2322,1969-08-01,unemploy,2856.0,0.01349964474619089\\n2323,1969-09-01,unemploy,3040.0,0.02802557827425594\\n2324,1969-10-01,unemploy,3049.0,0.028736085892476514\\n2325,1969-11-01,unemploy,2856.0,0.01349964474619089\\n2326,1969-12-01,unemploy,2884.0,0.015710112891766007\\n2327,1970-01-01,unemploy,3201.0,0.04073577011131286\\n2328,1970-02-01,unemploy,3453.0,0.06062998342148891\\n2329,1970-03-01,unemploy,3635.0,0.07499802636772716\\n2330,1970-04-01,unemploy,3797.0,0.08778716349569748\\n2331,1970-05-01,unemploy,3919.0,0.09741848898713192\\n2332,1970-06-01,unemploy,4071.0,0.10941817320596826\\n2333,1970-07-01,unemploy,4175.0,0.11762848346096155\\n2334,1970-08-01,unemploy,4256.0,0.1240230520249467\\n2335,1970-09-01,unemploy,4456.0,0.13981211020762613\\n2336,1970-10-01,unemploy,4591.0,0.1504697244809347\\n2337,1970-11-01,unemploy,4898.0,0.1747059287913476\\n2338,1970-12-01,unemploy,5076.0,0.18875819057393226\\n2339,1971-01-01,unemploy,4986.0,0.18165311439172654\\n2340,1971-02-01,unemploy,4903.0,0.1751006552459146\\n2341,1971-03-01,unemploy,4987.0,0.18173205968263992\\n2342,1971-04-01,unemploy,4959.0,0.17952159153706482\\n2343,1971-05-01,unemploy,4996.0,0.1824425673008605\\n2344,1971-06-01,unemploy,4949.0,0.17873213862793083\\n2345,1971-07-01,unemploy,5035.0,0.185521433646483\\n2346,1971-08-01,unemploy,5134.0,0.1933370174469093\\n2347,1971-09-01,unemploy,5042.0,0.18607405068287677\\n2348,1971-10-01,unemploy,4954.0,0.17912686508249784\\n2349,1971-11-01,unemploy,5161.0,0.19546854030157101\\n2350,1971-12-01,unemploy,5154.0,0.19491592326517723\\n2351,1972-01-01,unemploy,5019.0,0.18425830899186862\\n2352,1972-02-01,unemploy,4928.0,0.1770742875187495\\n2353,1972-03-01,unemploy,5038.0,0.18575826951922317\\n2354,1972-04-01,unemploy,4959.0,0.17952159153706482\\n2355,1972-05-01,unemploy,4922.0,0.17660061577326913\\n2356,1972-06-01,unemploy,4923.0,0.17667956106418253\\n2357,1972-07-01,unemploy,4913.0,0.17589010815504855\\n2358,1972-08-01,unemploy,4939.0,0.17794268571879687\\n2359,1972-09-01,unemploy,4849.0,0.17083760953659113\\n2360,1972-10-01,unemploy,4875.0,0.17289018710033946\\n2361,1972-11-01,unemploy,4602.0,0.15133812268098207\\n2362,1972-12-01,unemploy,4543.0,0.14668035051709166\\n2363,1973-01-01,unemploy,4326.0,0.1295492223888845\\n2364,1973-02-01,unemploy,4452.0,0.13949632904397252\\n2365,1973-03-01,unemploy,4394.0,0.1349175021709955\\n2366,1973-04-01,unemploy,4459.0,0.1400489460803663\\n2367,1973-05-01,unemploy,4329.0,0.1297860582616247\\n2368,1973-06-01,unemploy,4363.0,0.13247019815268019\\n2369,1973-07-01,unemploy,4305.0,0.12789137127970315\\n2370,1973-08-01,unemploy,4305.0,0.12789137127970315\\n2371,1973-09-01,unemploy,4350.0,0.13144390937080602\\n2372,1973-10-01,unemploy,4144.0,0.11518117944264625\\n2373,1973-11-01,unemploy,4396.0,0.1350753927528223\\n2374,1973-12-01,unemploy,4489.0,0.1424173048077682\\n2375,1974-01-01,unemploy,4644.0,0.15465382489934476\\n2376,1974-02-01,unemploy,4731.0,0.1615220652088103\\n2377,1974-03-01,unemploy,4634.0,0.15386437199021077\\n2378,1974-04-01,unemploy,4618.0,0.15260124733559643\\n2379,1974-05-01,unemploy,4705.0,0.15946948764506197\\n2380,1974-06-01,unemploy,4927.0,0.1769953422278361\\n2381,1974-07-01,unemploy,5063.0,0.1877319017920581\\n2382,1974-08-01,unemploy,5022.0,0.18449514486460883\\n2383,1974-09-01,unemploy,5437.0,0.21725744059366858\\n2384,1974-10-01,unemploy,5523.0,0.22404673561222074\\n2385,1974-11-01,unemploy,6140.0,0.27275598010578667\\n2386,1974-12-01,unemploy,6636.0,0.3119128443988316\\n2387,1975-01-01,unemploy,7501.0,0.38020052103892005\\n2388,1975-02-01,unemploy,7520.0,0.38170048156627456\\n2389,1975-03-01,unemploy,7978.0,0.4178574248046104\\n2390,1975-04-01,unemploy,8210.0,0.43617273229651854\\n2391,1975-05-01,unemploy,8433.0,0.45377753217020605\\n2392,1975-06-01,unemploy,8220.0,0.4369621852056525\\n2393,1975-07-01,unemploy,8127.0,0.42962027315070656\\n2394,1975-08-01,unemploy,7928.0,0.41391016025894056\\n2395,1975-09-01,unemploy,7923.0,0.41351543380437356\\n2396,1975-10-01,unemploy,7897.0,0.41146285624062523\\n2397,1975-11-01,unemploy,7794.0,0.40333149127654533\\n2398,1975-12-01,unemploy,7744.0,0.3993842267308755\\n2399,1976-01-01,unemploy,7534.0,0.3828057156390621\\n2400,1976-02-01,unemploy,7326.0,0.3663850951290756\\n2401,1976-03-01,unemploy,7230.0,0.35880634720138943\\n2402,1976-04-01,unemploy,7330.0,0.3667008762927291\\n2403,1976-05-01,unemploy,7053.0,0.34483303070971816\\n2404,1976-06-01,unemploy,7322.0,0.36606931396542197\\n2405,1976-07-01,unemploy,7490.0,0.3793321228388727\\n2406,1976-08-01,unemploy,7518.0,0.38154259098444776\\n2407,1976-09-01,unemploy,7380.0,0.370648140838399\\n2408,1976-10-01,unemploy,7430.0,0.3745954053840688\\n2409,1976-11-01,unemploy,7620.0,0.38959501065761426\\n2410,1976-12-01,unemploy,7545.0,0.3836741138391095\\n2411,1977-01-01,unemploy,7280.0,0.3627536117470593\\n2412,1977-02-01,unemploy,7443.0,0.375621694165943\\n2413,1977-03-01,unemploy,7307.0,0.364885134601721\\n2414,1977-04-01,unemploy,7059.0,0.34530670245519857\\n2415,1977-05-01,unemploy,6911.0,0.33362279940001577\\n2416,1977-06-01,unemploy,7134.0,0.35122759927370334\\n2417,1977-07-01,unemploy,6829.0,0.32714928554511724\\n2418,1977-08-01,unemploy,6925.0,0.33472803347280333\\n2419,1977-09-01,unemploy,6751.0,0.32099155285387226\\n2420,1977-10-01,unemploy,6763.0,0.321938896344833\\n2421,1977-11-01,unemploy,6815.0,0.3260440514723297\\n2422,1977-12-01,unemploy,6386.0,0.29217652167048236\\n2423,1978-01-01,unemploy,6489.0,0.30030788663456226\\n2424,1978-02-01,unemploy,6318.0,0.28680824188837134\\n2425,1978-03-01,unemploy,6337.0,0.2883082024157259\\n2426,1978-04-01,unemploy,6180.0,0.27591379174232256\\n2427,1978-05-01,unemploy,6127.0,0.2717296913239125\\n2428,1978-06-01,unemploy,6028.0,0.2639141075234862\\n2429,1978-07-01,unemploy,6309.0,0.2860977342701508\\n2430,1978-08-01,unemploy,6080.0,0.26801926265098286\\n2431,1978-09-01,unemploy,6125.0,0.27157180074208576\\n2432,1978-10-01,unemploy,5947.0,0.2575195389595011\\n2433,1978-11-01,unemploy,6077.0,0.26778242677824265\\n2434,1978-12-01,unemploy,6228.0,0.2797031657061656\\n2435,1979-01-01,unemploy,6109.0,0.2703086760874714\\n2436,1979-02-01,unemploy,6173.0,0.2753611747059288\\n2437,1979-03-01,unemploy,6109.0,0.2703086760874714\\n2438,1979-04-01,unemploy,6069.0,0.2671508644509355\\n2439,1979-05-01,unemploy,5840.0,0.24907239283176758\\n2440,1979-06-01,unemploy,5959.0,0.25846688245046184\\n2441,1979-07-01,unemploy,5996.0,0.26138785821425753\\n2442,1979-08-01,unemploy,6320.0,0.28696613247019814\\n2443,1979-09-01,unemploy,6190.0,0.2767032446514565\\n2444,1979-10-01,unemploy,6296.0,0.2850714454882766\\n2445,1979-11-01,unemploy,6238.0,0.2804926186152996\\n2446,1979-12-01,unemploy,6325.0,0.28736085892476515\\n2447,1980-01-01,unemploy,6683.0,0.31562327307176125\\n2448,1980-02-01,unemploy,6702.0,0.3171232335991158\\n2449,1980-03-01,unemploy,6729.0,0.31925475645377754\\n2450,1980-04-01,unemploy,7358.0,0.36891134443830426\\n2451,1980-05-01,unemploy,7984.0,0.41833109655009076\\n2452,1980-06-01,unemploy,8098.0,0.427330859714218\\n2453,1980-07-01,unemploy,8363.0,0.44825136180626823\\n2454,1980-08-01,unemploy,8281.0,0.4417778479513697\\n2455,1980-09-01,unemploy,8021.0,0.42125207231388645\\n2456,1980-10-01,unemploy,8088.0,0.42654140680508407\\n2457,1980-11-01,unemploy,8023.0,0.42140996289571325\\n2458,1980-12-01,unemploy,7718.0,0.39733164916712715\\n2459,1981-01-01,unemploy,8071.0,0.42519933685955635\\n2460,1981-02-01,unemploy,8051.0,0.4236204310412884\\n2461,1981-03-01,unemploy,7982.0,0.418173205968264\\n2462,1981-04-01,unemploy,7869.0,0.40925238809505016\\n2463,1981-05-01,unemploy,8174.0,0.4333307018236362\\n2464,1981-06-01,unemploy,8098.0,0.427330859714218\\n2465,1981-07-01,unemploy,7863.0,0.40877871634956975\\n2466,1981-08-01,unemploy,8036.0,0.4224362516775874\\n2467,1981-09-01,unemploy,8230.0,0.43775163811478646\\n2468,1981-10-01,unemploy,8646.0,0.4705928791347596\\n2469,1981-11-01,unemploy,9029.0,0.5008289255545907\\n2470,1981-12-01,unemploy,9267.0,0.5196179047919791\\n2471,1982-01-01,unemploy,9397.0,0.5298807926107207\\n2472,1982-02-01,unemploy,9705.0,0.554195942212047\\n2473,1982-03-01,unemploy,9895.0,0.5691955474855925\\n2474,1982-04-01,unemploy,10244.0,0.596747454014368\\n2475,1982-05-01,unemploy,10335.0,0.6039314754874872\\n2476,1982-06-01,unemploy,10538.0,0.6199573695429068\\n2477,1982-07-01,unemploy,10849.0,0.6445093550169733\\n2478,1982-08-01,unemploy,10881.0,0.647035604326202\\n2479,1982-09-01,unemploy,11217.0,0.6735612220731033\\n2480,1982-10-01,unemploy,11529.0,0.6981921528380832\\n2481,1982-11-01,unemploy,11938.0,0.7304807768216626\\n2482,1982-12-01,unemploy,12051.0,0.7394015946948764\\n2483,1983-01-01,unemploy,11534.0,0.6985868792926502\\n2484,1983-02-01,unemploy,11545.0,0.6994552774926975\\n2485,1983-03-01,unemploy,11408.0,0.6886397726375622\\n2486,1983-04-01,unemploy,11268.0,0.6775874319096866\\n2487,1983-05-01,unemploy,11154.0,0.6685876687455593\\n2488,1983-06-01,unemploy,11246.0,0.6758506355095919\\n2489,1983-07-01,unemploy,10548.0,0.6207468224520407\\n2490,1983-08-01,unemploy,10623.0,0.6266677192705455\\n2491,1983-09-01,unemploy,10282.0,0.5997473750690772\\n2492,1983-10-01,unemploy,9887.0,0.5685639851582853\\n2493,1983-11-01,unemploy,9499.0,0.5379332122838872\\n2494,1983-12-01,unemploy,9331.0,0.5246704034104366\\n2495,1984-01-01,unemploy,9008.0,0.4991710744454093\\n2496,1984-02-01,unemploy,8791.0,0.4820399463172022\\n2497,1984-03-01,unemploy,8746.0,0.4784874082260993\\n2498,1984-04-01,unemploy,8762.0,0.4797505328807137\\n2499,1984-05-01,unemploy,8456.0,0.4555932738612142\\n2500,1984-06-01,unemploy,8226.0,0.43743585695113285\\n2501,1984-07-01,unemploy,8537.0,0.46198784242519936\\n2502,1984-08-01,unemploy,8519.0,0.4605668271887582\\n2503,1984-09-01,unemploy,8367.0,0.44856714296992184\\n2504,1984-10-01,unemploy,8381.0,0.4496723770427094\\n2505,1984-11-01,unemploy,8198.0,0.4352253888055577\\n2506,1984-12-01,unemploy,8358.0,0.4478566353517013\\n2507,1985-01-01,unemploy,8423.0,0.4529880792610721\\n2508,1985-02-01,unemploy,8321.0,0.4449356595879056\\n2509,1985-03-01,unemploy,8339.0,0.4463566748243467\\n2510,1985-04-01,unemploy,8395.0,0.45077761111549697\\n2511,1985-05-01,unemploy,8302.0,0.443435699060551\\n2512,1985-06-01,unemploy,8460.0,0.4559090550248678\\n2513,1985-07-01,unemploy,8513.0,0.46009315544327783\\n2514,1985-08-01,unemploy,8196.0,0.435067498223731\\n2515,1985-09-01,unemploy,8248.0,0.4391726533512276\\n2516,1985-10-01,unemploy,8298.0,0.4431199178968975\\n2517,1985-11-01,unemploy,8128.0,0.42969921844161996\\n2518,1985-12-01,unemploy,8138.0,0.4304886713507539\\n2519,1986-01-01,unemploy,7795.0,0.40341043656745873\\n2520,1986-02-01,unemploy,8402.0,0.4513302281518907\\n2521,1986-03-01,unemploy,8383.0,0.4498302676245362\\n2522,1986-04-01,unemploy,8364.0,0.44833030709718164\\n2523,1986-05-01,unemploy,8439.0,0.4542512039156864\\n2524,1986-06-01,unemploy,8508.0,0.4596984289887108\\n2525,1986-07-01,unemploy,8319.0,0.4447777690060788\\n2526,1986-08-01,unemploy,8135.0,0.4302518354780137\\n2527,1986-09-01,unemploy,8310.0,0.44406726138785824\\n2528,1986-10-01,unemploy,8243.0,0.4387779268966606\\n2529,1986-11-01,unemploy,8159.0,0.4321465224599353\\n2530,1986-12-01,unemploy,7883.0,0.41035762216783767\\n2531,1987-01-01,unemploy,7892.0,0.4110681297860583\\n2532,1987-02-01,unemploy,7865.0,0.40893660693139655\\n2533,1987-03-01,unemploy,7862.0,0.40869977105865635\\n2534,1987-04-01,unemploy,7542.0,0.3834372779663693\\n2535,1987-05-01,unemploy,7574.0,0.385963527275598\\n2536,1987-06-01,unemploy,7398.0,0.37206915607484015\\n2537,1987-07-01,unemploy,7268.0,0.3618062682560985\\n2538,1987-08-01,unemploy,7261.0,0.36125365121970476\\n2539,1987-09-01,unemploy,7102.0,0.3487013499644746\\n2540,1987-10-01,unemploy,7227.0,0.3585695113286492\\n2541,1987-11-01,unemploy,7035.0,0.34341201547327704\\n2542,1987-12-01,unemploy,6936.0,0.3355964316728507\\n2543,1988-01-01,unemploy,6953.0,0.33693850161837846\\n2544,1988-02-01,unemploy,6929.0,0.33504381463645694\\n2545,1988-03-01,unemploy,6876.0,0.3308597142180469\\n2546,1988-04-01,unemploy,6601.0,0.3091497592168627\\n2547,1988-05-01,unemploy,6779.0,0.3232020209994474\\n2548,1988-06-01,unemploy,6546.0,0.30480776821662586\\n2549,1988-07-01,unemploy,6605.0,0.3094655403805163\\n2550,1988-08-01,unemploy,6843.0,0.3282545196179048\\n2551,1988-09-01,unemploy,6604.0,0.3093865950896029\\n2552,1988-10-01,unemploy,6568.0,0.30654456461672064\\n2553,1988-11-01,unemploy,6537.0,0.3040972605984053\\n2554,1988-12-01,unemploy,6518.0,0.30259730007105073\\n2555,1989-01-01,unemploy,6682.0,0.3155443277808479\\n2556,1989-02-01,unemploy,6359.0,0.29004499881582063\\n2557,1989-03-01,unemploy,6205.0,0.2778874240151575\\n2558,1989-04-01,unemploy,6468.0,0.2986500355253809\\n2559,1989-05-01,unemploy,6375.0,0.291308123470435\\n2560,1989-06-01,unemploy,6577.0,0.3072550722349412\\n2561,1989-07-01,unemploy,6495.0,0.3007815583800426\\n2562,1989-08-01,unemploy,6511.0,0.302044683034657\\n2563,1989-09-01,unemploy,6590.0,0.30828136101681536\\n2564,1989-10-01,unemploy,6630.0,0.31143917265335125\\n2565,1989-11-01,unemploy,6725.0,0.31893897529012394\\n2566,1989-12-01,unemploy,6667.0,0.31436014841714693\\n2567,1990-01-01,unemploy,6752.0,0.32107049814478567\\n2568,1990-02-01,unemploy,6651.0,0.31309702376253257\\n2569,1990-03-01,unemploy,6598.0,0.3089129233441225\\n2570,1990-04-01,unemploy,6797.0,0.3246230362358885\\n2571,1990-05-01,unemploy,6742.0,0.3202810452356517\\n2572,1990-06-01,unemploy,6590.0,0.30828136101681536\\n2573,1990-07-01,unemploy,6922.0,0.3344911976000632\\n2574,1990-08-01,unemploy,7188.0,0.35549064498302674\\n2575,1990-09-01,unemploy,7368.0,0.3697007973474382\\n2576,1990-10-01,unemploy,7459.0,0.37688481882055735\\n2577,1990-11-01,unemploy,7764.0,0.40096313254914345\\n2578,1990-12-01,unemploy,7901.0,0.41177863740427884\\n2579,1991-01-01,unemploy,8015.0,0.4207784005684061\\n2580,1991-02-01,unemploy,8265.0,0.44051472329675534\\n2581,1991-03-01,unemploy,8586.0,0.4658561616799558\\n2582,1991-04-01,unemploy,8439.0,0.4542512039156864\\n2583,1991-05-01,unemploy,8736.0,0.47769795531696535\\n2584,1991-06-01,unemploy,8692.0,0.47422436251677585\\n2585,1991-07-01,unemploy,8586.0,0.4658561616799558\\n2586,1991-08-01,unemploy,8666.0,0.47217178495302753\\n2587,1991-09-01,unemploy,8722.0,0.4765927212441778\\n2588,1991-10-01,unemploy,8842.0,0.4860661561537854\\n2589,1991-11-01,unemploy,8931.0,0.49309228704507774\\n2590,1991-12-01,unemploy,9198.0,0.5141706797189548\\n2591,1992-01-01,unemploy,9283.0,0.5208810294465935\\n2592,1992-02-01,unemploy,9454.0,0.5343806741927845\\n2593,1992-03-01,unemploy,9460.0,0.5348543459382648\\n2594,1992-04-01,unemploy,9415.0,0.531301807847162\\n2595,1992-05-01,unemploy,9744.0,0.5572748085576695\\n2596,1992-06-01,unemploy,10040.0,0.580642614668035\\n2597,1992-07-01,unemploy,9850.0,0.5656430093944896\\n2598,1992-08-01,unemploy,9787.0,0.5606694560669456\\n2599,1992-09-01,unemploy,9781.0,0.5601957843214652\\n2600,1992-10-01,unemploy,9398.0,0.5299597379016342\\n2601,1992-11-01,unemploy,9565.0,0.5431436014841715\\n2602,1992-12-01,unemploy,9557.0,0.5425120391568643\\n2603,1993-01-01,unemploy,9325.0,0.5241967316649562\\n2604,1993-02-01,unemploy,9183.0,0.5129865003552538\\n2605,1993-03-01,unemploy,9056.0,0.5029604484092524\\n2606,1993-04-01,unemploy,9110.0,0.5072234941185758\\n2607,1993-05-01,unemploy,9149.0,0.5103023604641983\\n2608,1993-06-01,unemploy,9121.0,0.5080918923186232\\n2609,1993-07-01,unemploy,8930.0,0.4930133417541644\\n2610,1993-08-01,unemploy,8763.0,0.4798294781716271\\n2611,1993-09-01,unemploy,8714.0,0.47596115891687063\\n2612,1993-10-01,unemploy,8750.0,0.4788031893897529\\n2613,1993-11-01,unemploy,8542.0,0.4623825688797663\\n2614,1993-12-01,unemploy,8477.0,0.4572511249703955\\n2615,1994-01-01,unemploy,8630.0,0.46932975448014524\\n2616,1994-02-01,unemploy,8583.0,0.4656193258072156\\n2617,1994-03-01,unemploy,8470.0,0.45669850793400174\\n2618,1994-04-01,unemploy,8331.0,0.44572511249703956\\n2619,1994-05-01,unemploy,7915.0,0.4128838714770664\\n2620,1994-06-01,unemploy,7927.0,0.41383121496802716\\n2621,1994-07-01,unemploy,7946.0,0.4153311754953817\\n2622,1994-08-01,unemploy,7933.0,0.4143048867135075\\n2623,1994-09-01,unemploy,7734.0,0.3985947738217415\\n2624,1994-10-01,unemploy,7632.0,0.390542354148575\\n2625,1994-11-01,unemploy,7375.0,0.370253414383832\\n2626,1994-12-01,unemploy,7230.0,0.35880634720138943\\n2627,1995-01-01,unemploy,7375.0,0.370253414383832\\n2628,1995-02-01,unemploy,7187.0,0.3554116996921134\\n2629,1995-03-01,unemploy,7153.0,0.35272755980105786\\n2630,1995-04-01,unemploy,7645.0,0.3915686429304492\\n2631,1995-05-01,unemploy,7430.0,0.3745954053840688\\n2632,1995-06-01,unemploy,7427.0,0.3743585695113287\\n2633,1995-07-01,unemploy,7527.0,0.3822530986026684\\n2634,1995-08-01,unemploy,7484.0,0.3788584510933923\\n2635,1995-09-01,unemploy,7478.0,0.37838477934791187\\n2636,1995-10-01,unemploy,7328.0,0.3665429857109023\\n2637,1995-11-01,unemploy,7426.0,0.3742796242204153\\n2638,1995-12-01,unemploy,7423.0,0.37404278834767507\\n2639,1996-01-01,unemploy,7491.0,0.37941106812978603\\n2640,1996-02-01,unemploy,7313.0,0.3653588063472014\\n2641,1996-03-01,unemploy,7318.0,0.36575353280176837\\n2642,1996-04-01,unemploy,7415.0,0.37341122602036786\\n2643,1996-05-01,unemploy,7423.0,0.37404278834767507\\n2644,1996-06-01,unemploy,7095.0,0.34814873292808085\\n2645,1996-07-01,unemploy,7337.0,0.36725349332912294\\n2646,1996-08-01,unemploy,6882.0,0.3313333859635273\\n2647,1996-09-01,unemploy,6979.0,0.3389910791821268\\n2648,1996-10-01,unemploy,7031.0,0.34309623430962344\\n2649,1996-11-01,unemploy,7236.0,0.35928001894686984\\n2650,1996-12-01,unemploy,7253.0,0.36062208889239755\\n2651,1997-01-01,unemploy,7158.0,0.35312228625562486\\n2652,1997-02-01,unemploy,7102.0,0.3487013499644746\\n2653,1997-03-01,unemploy,7000.0,0.3406489302913081\\n2654,1997-04-01,unemploy,6873.0,0.3306228783453067\\n2655,1997-05-01,unemploy,6655.0,0.3134128049261862\\n2656,1997-06-01,unemploy,6799.0,0.3247809268177153\\n2657,1997-07-01,unemploy,6655.0,0.3134128049261862\\n2658,1997-08-01,unemploy,6608.0,0.3097023762532565\\n2659,1997-09-01,unemploy,6656.0,0.3134917502170996\\n2660,1997-10-01,unemploy,6454.0,0.2975448014525934\\n2661,1997-11-01,unemploy,6308.0,0.2860187889792374\\n2662,1997-12-01,unemploy,6476.0,0.2992815978526881\\n2663,1998-01-01,unemploy,6368.0,0.2907555064340412\\n2664,1998-02-01,unemploy,6306.0,0.2858608983974106\\n2665,1998-03-01,unemploy,6422.0,0.29501855214336464\\n2666,1998-04-01,unemploy,5941.0,0.2570458672140207\\n2667,1998-05-01,unemploy,6047.0,0.2654140680508408\\n2668,1998-06-01,unemploy,6212.0,0.2784400410515513\\n2669,1998-07-01,unemploy,6259.0,0.28215046972448093\\n2670,1998-08-01,unemploy,6179.0,0.27583484645140915\\n2671,1998-09-01,unemploy,6300.0,0.2853872266519302\\n2672,1998-10-01,unemploy,6280.0,0.28380832083366225\\n2673,1998-11-01,unemploy,6100.0,0.26959816846925083\\n2674,1998-12-01,unemploy,6032.0,0.2642298886871398\\n2675,1999-01-01,unemploy,5976.0,0.25980895239598956\\n2676,1999-02-01,unemploy,6111.0,0.2704665666692982\\n2677,1999-03-01,unemploy,5783.0,0.24457251124970394\\n2678,1999-04-01,unemploy,6004.0,0.2620194205415647\\n2679,1999-05-01,unemploy,5796.0,0.2455988000315781\\n2680,1999-06-01,unemploy,5951.0,0.25783532012315463\\n2681,1999-07-01,unemploy,6025.0,0.26367727165074606\\n2682,1999-08-01,unemploy,5838.0,0.2489145022499408\\n2683,1999-09-01,unemploy,5915.0,0.25499328965027235\\n2684,1999-10-01,unemploy,5778.0,0.24417778479513697\\n2685,1999-11-01,unemploy,5716.0,0.23928317675850636\\n2686,1999-12-01,unemploy,5653.0,0.23430962343096234\\n2687,2000-01-01,unemploy,5708.0,0.23865161443119917\\n2688,2000-02-01,unemploy,5858.0,0.25049340806820874\\n2689,2000-03-01,unemploy,5733.0,0.2406252467040341\\n2690,2000-04-01,unemploy,5481.0,0.22073103339385805\\n2691,2000-05-01,unemploy,5758.0,0.24259887897686902\\n2692,2000-06-01,unemploy,5651.0,0.23415173284913554\\n2693,2000-07-01,unemploy,5747.0,0.24173048077682166\\n2694,2000-08-01,unemploy,5853.0,0.25009868161364174\\n2695,2000-09-01,unemploy,5625.0,0.23209915528538722\\n2696,2000-10-01,unemploy,5534.0,0.2249151338122681\\n2697,2000-11-01,unemploy,5639.0,0.23320438935817478\\n2698,2000-12-01,unemploy,5634.0,0.2328096629036078\\n2699,2001-01-01,unemploy,6023.0,0.26351938106891926\\n2700,2001-02-01,unemploy,6089.0,0.2687297702692034\\n2701,2001-03-01,unemploy,6141.0,0.27283492539670007\\n2702,2001-04-01,unemploy,6271.0,0.2830978132154417\\n2703,2001-05-01,unemploy,6226.0,0.27954527512433885\\n2704,2001-06-01,unemploy,6484.0,0.29991316017999525\\n2705,2001-07-01,unemploy,6583.0,0.30772874398042155\\n2706,2001-08-01,unemploy,7042.0,0.3439646325096708\\n2707,2001-09-01,unemploy,7142.0,0.3518591616010105\\n2708,2001-10-01,unemploy,7694.0,0.39543696218520563\\n2709,2001-11-01,unemploy,8003.0,0.41983105707744534\\n2710,2001-12-01,unemploy,8258.0,0.4399621062603616\\n2711,2002-01-01,unemploy,8182.0,0.4339622641509434\\n2712,2002-02-01,unemploy,8215.0,0.4365674587510855\\n2713,2002-03-01,unemploy,8304.0,0.44359358964237783\\n2714,2002-04-01,unemploy,8599.0,0.46688245046182997\\n2715,2002-05-01,unemploy,8399.0,0.4510933922791506\\n2716,2002-06-01,unemploy,8393.0,0.45061972053367016\\n2717,2002-07-01,unemploy,8390.0,0.45038288466092996\\n2718,2002-08-01,unemploy,8304.0,0.44359358964237783\\n2719,2002-09-01,unemploy,8251.0,0.4394094892239678\\n2720,2002-10-01,unemploy,8307.0,0.44383042551511803\\n2721,2002-11-01,unemploy,8520.0,0.4606457724796716\\n2722,2002-12-01,unemploy,8640.0,0.4701192073892792\\n2723,2003-01-01,unemploy,8520.0,0.4606457724796716\\n2724,2003-02-01,unemploy,8618.0,0.4683824109891845\\n2725,2003-03-01,unemploy,8588.0,0.4660140522617826\\n2726,2003-04-01,unemploy,8842.0,0.4860661561537854\\n2727,2003-05-01,unemploy,8957.0,0.49514486460882606\\n2728,2003-06-01,unemploy,9266.0,0.5195389595010658\\n2729,2003-07-01,unemploy,9011.0,0.4994079103181495\\n2730,2003-08-01,unemploy,8896.0,0.49032920186310885\\n2731,2003-09-01,unemploy,8921.0,0.4923028341359438\\n2732,2003-10-01,unemploy,8732.0,0.47738217415331174\\n2733,2003-11-01,unemploy,8576.0,0.46506670877082185\\n2734,2003-12-01,unemploy,8317.0,0.444619878424252\\n2735,2004-01-01,unemploy,8370.0,0.44880397884266204\\n2736,2004-02-01,unemploy,8167.0,0.43277808478724245\\n2737,2004-03-01,unemploy,8491.0,0.45835635904318306\\n2738,2004-04-01,unemploy,8170.0,0.43301492065998265\\n2739,2004-05-01,unemploy,8212.0,0.4363306228783453\\n2740,2004-06-01,unemploy,8286.0,0.4421725744059367\\n2741,2004-07-01,unemploy,8136.0,0.4303307807689271\\n2742,2004-08-01,unemploy,7990.0,0.4188047682955712\\n2743,2004-09-01,unemploy,7927.0,0.41383121496802716\\n2744,2004-10-01,unemploy,8061.0,0.42440988395042234\\n2745,2004-11-01,unemploy,7932.0,0.41422594142259417\\n2746,2004-12-01,unemploy,7934.0,0.4143838320044209\\n2747,2005-01-01,unemploy,7784.0,0.40254203836741137\\n2748,2005-02-01,unemploy,7980.0,0.4180153153864372\\n2749,2005-03-01,unemploy,7737.0,0.3988316096944817\\n2750,2005-04-01,unemploy,7672.0,0.3937001657851109\\n2751,2005-05-01,unemploy,7651.0,0.3920423146759296\\n2752,2005-06-01,unemploy,7524.0,0.38201626272992817\\n2753,2005-07-01,unemploy,7406.0,0.3727007184021473\\n2754,2005-08-01,unemploy,7345.0,0.3678850556564301\\n2755,2005-09-01,unemploy,7553.0,0.3843056761664167\\n2756,2005-10-01,unemploy,7453.0,0.37641114707507695\\n2757,2005-11-01,unemploy,7566.0,0.38533196494829086\\n2758,2005-12-01,unemploy,7279.0,0.3626746664561459\\n2759,2006-01-01,unemploy,7064.0,0.3457014289097655\\n2760,2006-02-01,unemploy,7184.0,0.3551748638193732\\n2761,2006-03-01,unemploy,7072.0,0.34633299123707273\\n2762,2006-04-01,unemploy,7120.0,0.3501223652009158\\n2763,2006-05-01,unemploy,6980.0,0.3390700244730402\\n2764,2006-06-01,unemploy,7001.0,0.3407278755822215\\n2765,2006-07-01,unemploy,7175.0,0.3544643562011526\\n2766,2006-08-01,unemploy,7091.0,0.34783295176442725\\n2767,2006-09-01,unemploy,6847.0,0.32857030078155836\\n2768,2006-10-01,unemploy,6727.0,0.31909686587195074\\n2769,2006-11-01,unemploy,6872.0,0.3305439330543933\\n2770,2006-12-01,unemploy,6762.0,0.3218599510539196\\n2771,2007-01-01,unemploy,7116.0,0.34980658403726217\\n2772,2007-02-01,unemploy,6927.0,0.33488592405463014\\n2773,2007-03-01,unemploy,6731.0,0.31941264703560435\\n2774,2007-04-01,unemploy,6850.0,0.32880713665429856\\n2775,2007-05-01,unemploy,6766.0,0.32217573221757323\\n2776,2007-06-01,unemploy,6979.0,0.3389910791821268\\n2777,2007-07-01,unemploy,7149.0,0.3524117786374043\\n2778,2007-08-01,unemploy,7067.0,0.3459382647825057\\n2779,2007-09-01,unemploy,7170.0,0.3540696297465856\\n2780,2007-10-01,unemploy,7237.0,0.35935896423778324\\n2781,2007-11-01,unemploy,7240.0,0.3595958001105234\\n2782,2007-12-01,unemploy,7645.0,0.3915686429304492\\n2783,2008-01-01,unemploy,7685.0,0.3947264545669851\\n2784,2008-02-01,unemploy,7497.0,0.37988473987526644\\n2785,2008-03-01,unemploy,7822.0,0.40554195942212046\\n2786,2008-04-01,unemploy,7637.0,0.39093708060314203\\n2787,2008-05-01,unemploy,8395.0,0.45077761111549697\\n2788,2008-06-01,unemploy,8575.0,0.46498776347990844\\n2789,2008-07-01,unemploy,8937.0,0.49356595879055815\\n2790,2008-08-01,unemploy,9438.0,0.53311754953817\\n2791,2008-09-01,unemploy,9494.0,0.5375384858293203\\n2792,2008-10-01,unemploy,10074.0,0.5833267545590906\\n2793,2008-11-01,unemploy,10538.0,0.6199573695429068\\n2794,2008-12-01,unemploy,11286.0,0.6790084471461277\\n2795,2009-01-01,unemploy,12058.0,0.7399542117312702\\n2796,2009-02-01,unemploy,12898.0,0.8062682560985237\\n2797,2009-03-01,unemploy,13426.0,0.8479513697007973\\n2798,2009-04-01,unemploy,13853.0,0.8816610089208179\\n2799,2009-05-01,unemploy,14499.0,0.9326596668508723\\n2800,2009-06-01,unemploy,14707.0,0.9490802873608589\\n2801,2009-07-01,unemploy,14601.0,0.9407120865240388\\n2802,2009-08-01,unemploy,14814.0,0.9575274334885924\\n2803,2009-09-01,unemploy,15009.0,0.9729217652167048\\n2804,2009-10-01,unemploy,15352.0,1.0\\n2805,2009-11-01,unemploy,15219.0,0.9895002763085182\\n2806,2009-12-01,unemploy,15098.0,0.9799478961079972\\n2807,2010-01-01,unemploy,15046.0,0.9758427409805005\\n2808,2010-02-01,unemploy,15113.0,0.9811320754716981\\n2809,2010-03-01,unemploy,15202.0,0.9881582063629905\\n2810,2010-04-01,unemploy,15325.0,0.9978684771453383\\n2811,2010-05-01,unemploy,14849.0,0.9602905186705613\\n2812,2010-06-01,unemploy,14474.0,0.9306860345780374\\n2813,2010-07-01,unemploy,14512.0,0.9336859556327465\\n2814,2010-08-01,unemploy,14648.0,0.9444225151969685\\n2815,2010-09-01,unemploy,14579.0,0.9389752901239441\\n2816,2010-10-01,unemploy,14516.0,0.9340017367964001\\n2817,2010-11-01,unemploy,15081.0,0.9786058261624694\\n2818,2010-12-01,unemploy,14348.0,0.9207389279229494\\n2819,2011-01-01,unemploy,14013.0,0.8942922554669614\\n2820,2011-02-01,unemploy,13820.0,0.8790558143206758\\n2821,2011-03-01,unemploy,13737.0,0.8725033551748638\\n2822,2011-04-01,unemploy,13957.0,0.8898713191758112\\n2823,2011-05-01,unemploy,13855.0,0.8818188995026447\\n2824,2011-06-01,unemploy,13962.0,0.8902660456303781\\n2825,2011-07-01,unemploy,13763.0,0.8745559327386121\\n2826,2011-08-01,unemploy,13818.0,0.878897923738849\\n2827,2011-09-01,unemploy,13948.0,0.8891608115575906\\n2828,2011-10-01,unemploy,13594.0,0.8612141785742481\\n2829,2011-11-01,unemploy,13302.0,0.8381621536275361\\n2830,2011-12-01,unemploy,13093.0,0.8216625878266361\\n2831,2012-01-01,unemploy,12797.0,0.7982947817162707\\n2832,2012-02-01,unemploy,12813.0,0.799557906370885\\n2833,2012-03-01,unemploy,12713.0,0.7916633772795453\\n2834,2012-04-01,unemploy,12646.0,0.7863740427883477\\n2835,2012-05-01,unemploy,12660.0,0.7874792768611353\\n2836,2012-06-01,unemploy,12692.0,0.7900055261703639\\n2837,2012-07-01,unemploy,12656.0,0.7871634956974817\\n2838,2012-08-01,unemploy,12471.0,0.7725586168785032\\n2839,2012-09-01,unemploy,12115.0,0.7444540933133339\\n2840,2012-10-01,unemploy,12124.0,0.7451646009315545\\n2841,2012-11-01,unemploy,12005.0,0.7357701113128602\\n2842,2012-12-01,unemploy,12298.0,0.7589010815504855\\n2843,2013-01-01,unemploy,12471.0,0.7725586168785032\\n2844,2013-02-01,unemploy,11950.0,0.7314281203126234\\n2845,2013-03-01,unemploy,11689.0,0.7108233993842268\\n2846,2013-04-01,unemploy,11760.0,0.7164285150390779\\n2847,2013-05-01,unemploy,11654.0,0.7080603142022578\\n2848,2013-06-01,unemploy,11751.0,0.7157180074208573\\n2849,2013-07-01,unemploy,11335.0,0.6828767664008842\\n2850,2013-08-01,unemploy,11279.0,0.678455830109734\\n2851,2013-09-01,unemploy,11270.0,0.6777453224915134\\n2852,2013-10-01,unemploy,11136.0,0.6671666535091182\\n2853,2013-11-01,unemploy,10787.0,0.6396147469803426\\n2854,2013-12-01,unemploy,10404.0,0.6093787005605116\\n2855,2014-01-01,unemploy,10202.0,0.5934317517960054\\n2856,2014-02-01,unemploy,10349.0,0.6050367095602748\\n2857,2014-03-01,unemploy,10380.0,0.60748401357859\\n2858,2014-04-01,unemploy,9702.0,0.5539591063393069\\n2859,2014-05-01,unemploy,9859.0,0.5663535170127102\\n2860,2014-06-01,unemploy,9460.0,0.5348543459382648\\n2861,2014-07-01,unemploy,9608.0,0.5465382489934475\\n2862,2014-08-01,unemploy,9599.0,0.5458277413752269\\n2863,2014-09-01,unemploy,9262.0,0.5192231783374122\\n2864,2014-10-01,unemploy,8990.0,0.4977500592089682\\n2865,2014-11-01,unemploy,9090.0,0.5056445883003079\\n2866,2014-12-01,unemploy,8717.0,0.4761979947896108\\n2867,2015-01-01,unemploy,8903.0,0.49088181889950266\\n2868,2015-02-01,unemploy,8610.0,0.4677508486618773\\n2869,2015-03-01,unemploy,8504.0,0.4593826478250572\\n2870,2015-04-01,unemploy,8526.0,0.46111944422515194\\n\",\n :format {:type \"csv\"}}}\n\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (haclo/base haclo/line-chart\n {:=x :date\n :=y :value\n :=mark-color \"purple\"})\n kind/pprint)\n\n\n{:encoding :=encoding,\n :usermeta :=usermeta,\n :mark\n {:type \"line\",\n :color :=mark-color,\n :size :=mark-size,\n :opacity :=mark-opacity,\n :tooltip :=mark-tooltip},\n :width :=width,\n :background :=background,\n :title :=title,\n :layer :=layer,\n :kindly/f #'scicloj.hanamicloth.v1.api/vega-lite-xform,\n :aerial.hanami.templates/defaults\n {:=x2 :com.rpl.specter.impl/NONE,\n :=base-dataset #<WrappedValue@37e5aed: ggplot2/economics_long [574 5]:\n\n| :rownames | :date | :variable | :value | :value01 |\n|----------:|------------|-----------|-------:|-----------:|\n| 2297 | 1967-07-01 | unemploy | 2944.0 | 0.02044683 |\n| 2298 | 1967-08-01 | unemploy | 2945.0 | 0.02052578 |\n| 2299 | 1967-09-01 | unemploy | 2958.0 | 0.02155206 |\n| 2300 | 1967-10-01 | unemploy | 3143.0 | 0.03615694 |\n| 2301 | 1967-11-01 | unemploy | 3066.0 | 0.03007816 |\n| 2302 | 1967-12-01 | unemploy | 3018.0 | 0.02628878 |\n| 2303 | 1968-01-01 | unemploy | 2878.0 | 0.01523644 |\n| 2304 | 1968-02-01 | unemploy | 3001.0 | 0.02494671 |\n| 2305 | 1968-03-01 | unemploy | 2877.0 | 0.01515750 |\n| 2306 | 1968-04-01 | unemploy | 2709.0 | 0.00189469 |\n| ... | ... | ... | ... | ... |\n| 2860 | 2014-06-01 | unemploy | 9460.0 | 0.53485435 |\n| 2861 | 2014-07-01 | unemploy | 9608.0 | 0.54653825 |\n| 2862 | 2014-08-01 | unemploy | 9599.0 | 0.54582774 |\n| 2863 | 2014-09-01 | unemploy | 9262.0 | 0.51922318 |\n| 2864 | 2014-10-01 | unemploy | 8990.0 | 0.49775006 |\n| 2865 | 2014-11-01 | unemploy | 9090.0 | 0.50564459 |\n| 2866 | 2014-12-01 | unemploy | 8717.0 | 0.47619799 |\n| 2867 | 2015-01-01 | unemploy | 8903.0 | 0.49088182 |\n| 2868 | 2015-02-01 | unemploy | 8610.0 | 0.46775085 |\n| 2869 | 2015-03-01 | unemploy | 8504.0 | 0.45938265 |\n| 2870 | 2015-04-01 | unemploy | 8526.0 | 0.46111944 |\n>,\n :=layer [],\n :=y-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=x2-encoding\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=opacity :com.rpl.specter.impl/NONE,\n :=y2-after-stat :=y2,\n :=x2-after-stat :=x2,\n :=usermeta {:embedOptions {:renderer :=renderer}},\n :=title :com.rpl.specter.impl/NONE,\n :=y-type-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=height 300,\n :=renderer :svg,\n :=mark-opacity :com.rpl.specter.impl/NONE,\n :=y-title :com.rpl.specter.impl/NONE,\n :=size :com.rpl.specter.impl/NONE,\n :=group\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=mark-size :com.rpl.specter.impl/NONE,\n :=layer? :com.rpl.specter.impl/NONE,\n :=size-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=layer-dataset\n #<WrappedValue@37e5aed: ggplot2/economics_long [574 5]:\n\n| :rownames | :date | :variable | :value | :value01 |\n|----------:|------------|-----------|-------:|-----------:|\n| 2297 | 1967-07-01 | unemploy | 2944.0 | 0.02044683 |\n| 2298 | 1967-08-01 | unemploy | 2945.0 | 0.02052578 |\n| 2299 | 1967-09-01 | unemploy | 2958.0 | 0.02155206 |\n| 2300 | 1967-10-01 | unemploy | 3143.0 | 0.03615694 |\n| 2301 | 1967-11-01 | unemploy | 3066.0 | 0.03007816 |\n| 2302 | 1967-12-01 | unemploy | 3018.0 | 0.02628878 |\n| 2303 | 1968-01-01 | unemploy | 2878.0 | 0.01523644 |\n| 2304 | 1968-02-01 | unemploy | 3001.0 | 0.02494671 |\n| 2305 | 1968-03-01 | unemploy | 2877.0 | 0.01515750 |\n| 2306 | 1968-04-01 | unemploy | 2709.0 | 0.00189469 |\n| ... | ... | ... | ... | ... |\n| 2860 | 2014-06-01 | unemploy | 9460.0 | 0.53485435 |\n| 2861 | 2014-07-01 | unemploy | 9608.0 | 0.54653825 |\n| 2862 | 2014-08-01 | unemploy | 9599.0 | 0.54582774 |\n| 2863 | 2014-09-01 | unemploy | 9262.0 | 0.51922318 |\n| 2864 | 2014-10-01 | unemploy | 8990.0 | 0.49775006 |\n| 2865 | 2014-11-01 | unemploy | 9090.0 | 0.50564459 |\n| 2866 | 2014-12-01 | unemploy | 8717.0 | 0.47619799 |\n| 2867 | 2015-01-01 | unemploy | 8903.0 | 0.49088182 |\n| 2868 | 2015-02-01 | unemploy | 8610.0 | 0.46775085 |\n| 2869 | 2015-03-01 | unemploy | 8504.0 | 0.45938265 |\n| 2870 | 2015-04-01 | unemploy | 8526.0 | 0.46111944 |\n>,\n :=color :com.rpl.specter.impl/NONE,\n :=mark-color \"purple\",\n :=x :date,\n :=y2 :com.rpl.specter.impl/NONE,\n :=x-after-stat :=x,\n :DFMT {:type \"csv\"},\n :=encoding\n {:color {:field :=color, :type :=color-type},\n :size {:field :=size, :type :=size-type},\n :x\n {:field :=x-after-stat,\n :type :=x-type-after-stat,\n :title :=x-title,\n :bin :=x-bin},\n :y\n {:field :=y-after-stat,\n :type :=y-type-after-stat,\n :title :=y-title,\n :bin :=y-bin},\n :x2 :=x2-encoding,\n :y2 :=y2-encoding},\n :=x-type-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=x-bin :com.rpl.specter.impl/NONE,\n :=x-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=histogram-nbins 10,\n :=stat :com.rpl.specter.impl/NONE,\n :=width 400,\n :=color-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=mark \"circle\",\n :=dataset-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=y-bin :com.rpl.specter.impl/NONE,\n :=x-title :com.rpl.specter.impl/NONE,\n :=csv-data\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=y :value,\n :=data {:values :=csv-data, :format {:type \"csv\"}},\n :=dataset\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :VALDATA :=csv-data,\n :=mark-tooltip true,\n :=background \"floralwhite\",\n :=y-after-stat :=y,\n :=predictors [:=x],\n :=y2-encoding\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211]},\n :height :=height,\n :data :=data}\n\nThe structure returned by haclo/base is a Hanami template (with local defaults). When it is displayed, it goes through the Hanami transform to recieve the Vega-Lite spec.\nWhen we use base, we can keep processing the template in a pipeline of transformations. We will use it soon with layers.", "crumbs": [ "3  Walkthrough" ] @@ -194,7 +194,7 @@ "href": "hanamicloth_book.walkthrough.html#processing-raw-vega-lite", "title": "3  Walkthrough", "section": "3.10 Processing raw vega-lite", - "text": "3.10 Processing raw vega-lite\nDuring a pipeline, we may call haclo/plot to apply the Hanami transform and realize the Vega-Lite spec.\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (haclo/base {:=x :date\n :=y :value})\n (haclo/layer-line {:=mark-color \"purple\"})\n (haclo/update-data tc/random 5)\n (haclo/layer-point {:=mark-color \"green\"\n :=mark-size 200})\n haclo/plot\n kind/pprint)\n\n\n{:encoding\n {:x {:field :date, :type :temporal},\n :y {:field :value, :type :quantitative}},\n :usermeta {:embedOptions {:renderer :svg}},\n :width 400,\n :background \"floralwhite\",\n :layer\n [{:mark {:type \"line\", :color \"purple\", :tooltip true},\n :encoding\n {:x {:field :date, :type :temporal},\n :y {:field :value, :type :quantitative}},\n :data\n {:values\n \"rownames,date,variable,value,value01\\n2297,1967-07-01,unemploy,2944.0,0.020446830346569828\\n2298,1967-08-01,unemploy,2945.0,0.020525775637483226\\n2299,1967-09-01,unemploy,2958.0,0.021552064419357385\\n2300,1967-10-01,unemploy,3143.0,0.036156943238335834\\n2301,1967-11-01,unemploy,3066.0,0.030078155838004262\\n2302,1967-12-01,unemploy,3018.0,0.026288781874161206\\n2303,1968-01-01,unemploy,2878.0,0.015236441146285624\\n2304,1968-02-01,unemploy,3001.0,0.024946711928633458\\n2305,1968-03-01,unemploy,2877.0,0.015157495855372228\\n2306,1968-04-01,unemploy,2709.0,0.0018946869819215285\\n2307,1968-05-01,unemploy,2740.0,0.004341991000236836\\n2308,1968-06-01,unemploy,2938.0,0.019973158601089443\\n2309,1968-07-01,unemploy,2883.0,0.01563116760085261\\n2310,1968-08-01,unemploy,2768.0,0.006552459145811952\\n2311,1968-09-01,unemploy,2686.0,7.894529091339702E-5\\n2312,1968-10-01,unemploy,2689.0,3.157811636535881E-4\\n2313,1968-11-01,unemploy,2715.0,0.0023683587274019105\\n2314,1968-12-01,unemploy,2685.0,0.0\\n2315,1969-01-01,unemploy,2718.0,0.0026051946001421017\\n2316,1969-02-01,unemploy,2692.0,5.526170363937791E-4\\n2317,1969-03-01,unemploy,2712.0,0.0021315228546617193\\n2318,1969-04-01,unemploy,2758.0,0.005763006236677982\\n2319,1969-05-01,unemploy,2713.0,0.0022104681455751164\\n2320,1969-06-01,unemploy,2816.0,0.010341833109655009\\n2321,1969-07-01,unemploy,2868.0,0.014446988237151653\\n2322,1969-08-01,unemploy,2856.0,0.01349964474619089\\n2323,1969-09-01,unemploy,3040.0,0.02802557827425594\\n2324,1969-10-01,unemploy,3049.0,0.028736085892476514\\n2325,1969-11-01,unemploy,2856.0,0.01349964474619089\\n2326,1969-12-01,unemploy,2884.0,0.015710112891766007\\n2327,1970-01-01,unemploy,3201.0,0.04073577011131286\\n2328,1970-02-01,unemploy,3453.0,0.06062998342148891\\n2329,1970-03-01,unemploy,3635.0,0.07499802636772716\\n2330,1970-04-01,unemploy,3797.0,0.08778716349569748\\n2331,1970-05-01,unemploy,3919.0,0.09741848898713192\\n2332,1970-06-01,unemploy,4071.0,0.10941817320596826\\n2333,1970-07-01,unemploy,4175.0,0.11762848346096155\\n2334,1970-08-01,unemploy,4256.0,0.1240230520249467\\n2335,1970-09-01,unemploy,4456.0,0.13981211020762613\\n2336,1970-10-01,unemploy,4591.0,0.1504697244809347\\n2337,1970-11-01,unemploy,4898.0,0.1747059287913476\\n2338,1970-12-01,unemploy,5076.0,0.18875819057393226\\n2339,1971-01-01,unemploy,4986.0,0.18165311439172654\\n2340,1971-02-01,unemploy,4903.0,0.1751006552459146\\n2341,1971-03-01,unemploy,4987.0,0.18173205968263992\\n2342,1971-04-01,unemploy,4959.0,0.17952159153706482\\n2343,1971-05-01,unemploy,4996.0,0.1824425673008605\\n2344,1971-06-01,unemploy,4949.0,0.17873213862793083\\n2345,1971-07-01,unemploy,5035.0,0.185521433646483\\n2346,1971-08-01,unemploy,5134.0,0.1933370174469093\\n2347,1971-09-01,unemploy,5042.0,0.18607405068287677\\n2348,1971-10-01,unemploy,4954.0,0.17912686508249784\\n2349,1971-11-01,unemploy,5161.0,0.19546854030157101\\n2350,1971-12-01,unemploy,5154.0,0.19491592326517723\\n2351,1972-01-01,unemploy,5019.0,0.18425830899186862\\n2352,1972-02-01,unemploy,4928.0,0.1770742875187495\\n2353,1972-03-01,unemploy,5038.0,0.18575826951922317\\n2354,1972-04-01,unemploy,4959.0,0.17952159153706482\\n2355,1972-05-01,unemploy,4922.0,0.17660061577326913\\n2356,1972-06-01,unemploy,4923.0,0.17667956106418253\\n2357,1972-07-01,unemploy,4913.0,0.17589010815504855\\n2358,1972-08-01,unemploy,4939.0,0.17794268571879687\\n2359,1972-09-01,unemploy,4849.0,0.17083760953659113\\n2360,1972-10-01,unemploy,4875.0,0.17289018710033946\\n2361,1972-11-01,unemploy,4602.0,0.15133812268098207\\n2362,1972-12-01,unemploy,4543.0,0.14668035051709166\\n2363,1973-01-01,unemploy,4326.0,0.1295492223888845\\n2364,1973-02-01,unemploy,4452.0,0.13949632904397252\\n2365,1973-03-01,unemploy,4394.0,0.1349175021709955\\n2366,1973-04-01,unemploy,4459.0,0.1400489460803663\\n2367,1973-05-01,unemploy,4329.0,0.1297860582616247\\n2368,1973-06-01,unemploy,4363.0,0.13247019815268019\\n2369,1973-07-01,unemploy,4305.0,0.12789137127970315\\n2370,1973-08-01,unemploy,4305.0,0.12789137127970315\\n2371,1973-09-01,unemploy,4350.0,0.13144390937080602\\n2372,1973-10-01,unemploy,4144.0,0.11518117944264625\\n2373,1973-11-01,unemploy,4396.0,0.1350753927528223\\n2374,1973-12-01,unemploy,4489.0,0.1424173048077682\\n2375,1974-01-01,unemploy,4644.0,0.15465382489934476\\n2376,1974-02-01,unemploy,4731.0,0.1615220652088103\\n2377,1974-03-01,unemploy,4634.0,0.15386437199021077\\n2378,1974-04-01,unemploy,4618.0,0.15260124733559643\\n2379,1974-05-01,unemploy,4705.0,0.15946948764506197\\n2380,1974-06-01,unemploy,4927.0,0.1769953422278361\\n2381,1974-07-01,unemploy,5063.0,0.1877319017920581\\n2382,1974-08-01,unemploy,5022.0,0.18449514486460883\\n2383,1974-09-01,unemploy,5437.0,0.21725744059366858\\n2384,1974-10-01,unemploy,5523.0,0.22404673561222074\\n2385,1974-11-01,unemploy,6140.0,0.27275598010578667\\n2386,1974-12-01,unemploy,6636.0,0.3119128443988316\\n2387,1975-01-01,unemploy,7501.0,0.38020052103892005\\n2388,1975-02-01,unemploy,7520.0,0.38170048156627456\\n2389,1975-03-01,unemploy,7978.0,0.4178574248046104\\n2390,1975-04-01,unemploy,8210.0,0.43617273229651854\\n2391,1975-05-01,unemploy,8433.0,0.45377753217020605\\n2392,1975-06-01,unemploy,8220.0,0.4369621852056525\\n2393,1975-07-01,unemploy,8127.0,0.42962027315070656\\n2394,1975-08-01,unemploy,7928.0,0.41391016025894056\\n2395,1975-09-01,unemploy,7923.0,0.41351543380437356\\n2396,1975-10-01,unemploy,7897.0,0.41146285624062523\\n2397,1975-11-01,unemploy,7794.0,0.40333149127654533\\n2398,1975-12-01,unemploy,7744.0,0.3993842267308755\\n2399,1976-01-01,unemploy,7534.0,0.3828057156390621\\n2400,1976-02-01,unemploy,7326.0,0.3663850951290756\\n2401,1976-03-01,unemploy,7230.0,0.35880634720138943\\n2402,1976-04-01,unemploy,7330.0,0.3667008762927291\\n2403,1976-05-01,unemploy,7053.0,0.34483303070971816\\n2404,1976-06-01,unemploy,7322.0,0.36606931396542197\\n2405,1976-07-01,unemploy,7490.0,0.3793321228388727\\n2406,1976-08-01,unemploy,7518.0,0.38154259098444776\\n2407,1976-09-01,unemploy,7380.0,0.370648140838399\\n2408,1976-10-01,unemploy,7430.0,0.3745954053840688\\n2409,1976-11-01,unemploy,7620.0,0.38959501065761426\\n2410,1976-12-01,unemploy,7545.0,0.3836741138391095\\n2411,1977-01-01,unemploy,7280.0,0.3627536117470593\\n2412,1977-02-01,unemploy,7443.0,0.375621694165943\\n2413,1977-03-01,unemploy,7307.0,0.364885134601721\\n2414,1977-04-01,unemploy,7059.0,0.34530670245519857\\n2415,1977-05-01,unemploy,6911.0,0.33362279940001577\\n2416,1977-06-01,unemploy,7134.0,0.35122759927370334\\n2417,1977-07-01,unemploy,6829.0,0.32714928554511724\\n2418,1977-08-01,unemploy,6925.0,0.33472803347280333\\n2419,1977-09-01,unemploy,6751.0,0.32099155285387226\\n2420,1977-10-01,unemploy,6763.0,0.321938896344833\\n2421,1977-11-01,unemploy,6815.0,0.3260440514723297\\n2422,1977-12-01,unemploy,6386.0,0.29217652167048236\\n2423,1978-01-01,unemploy,6489.0,0.30030788663456226\\n2424,1978-02-01,unemploy,6318.0,0.28680824188837134\\n2425,1978-03-01,unemploy,6337.0,0.2883082024157259\\n2426,1978-04-01,unemploy,6180.0,0.27591379174232256\\n2427,1978-05-01,unemploy,6127.0,0.2717296913239125\\n2428,1978-06-01,unemploy,6028.0,0.2639141075234862\\n2429,1978-07-01,unemploy,6309.0,0.2860977342701508\\n2430,1978-08-01,unemploy,6080.0,0.26801926265098286\\n2431,1978-09-01,unemploy,6125.0,0.27157180074208576\\n2432,1978-10-01,unemploy,5947.0,0.2575195389595011\\n2433,1978-11-01,unemploy,6077.0,0.26778242677824265\\n2434,1978-12-01,unemploy,6228.0,0.2797031657061656\\n2435,1979-01-01,unemploy,6109.0,0.2703086760874714\\n2436,1979-02-01,unemploy,6173.0,0.2753611747059288\\n2437,1979-03-01,unemploy,6109.0,0.2703086760874714\\n2438,1979-04-01,unemploy,6069.0,0.2671508644509355\\n2439,1979-05-01,unemploy,5840.0,0.24907239283176758\\n2440,1979-06-01,unemploy,5959.0,0.25846688245046184\\n2441,1979-07-01,unemploy,5996.0,0.26138785821425753\\n2442,1979-08-01,unemploy,6320.0,0.28696613247019814\\n2443,1979-09-01,unemploy,6190.0,0.2767032446514565\\n2444,1979-10-01,unemploy,6296.0,0.2850714454882766\\n2445,1979-11-01,unemploy,6238.0,0.2804926186152996\\n2446,1979-12-01,unemploy,6325.0,0.28736085892476515\\n2447,1980-01-01,unemploy,6683.0,0.31562327307176125\\n2448,1980-02-01,unemploy,6702.0,0.3171232335991158\\n2449,1980-03-01,unemploy,6729.0,0.31925475645377754\\n2450,1980-04-01,unemploy,7358.0,0.36891134443830426\\n2451,1980-05-01,unemploy,7984.0,0.41833109655009076\\n2452,1980-06-01,unemploy,8098.0,0.427330859714218\\n2453,1980-07-01,unemploy,8363.0,0.44825136180626823\\n2454,1980-08-01,unemploy,8281.0,0.4417778479513697\\n2455,1980-09-01,unemploy,8021.0,0.42125207231388645\\n2456,1980-10-01,unemploy,8088.0,0.42654140680508407\\n2457,1980-11-01,unemploy,8023.0,0.42140996289571325\\n2458,1980-12-01,unemploy,7718.0,0.39733164916712715\\n2459,1981-01-01,unemploy,8071.0,0.42519933685955635\\n2460,1981-02-01,unemploy,8051.0,0.4236204310412884\\n2461,1981-03-01,unemploy,7982.0,0.418173205968264\\n2462,1981-04-01,unemploy,7869.0,0.40925238809505016\\n2463,1981-05-01,unemploy,8174.0,0.4333307018236362\\n2464,1981-06-01,unemploy,8098.0,0.427330859714218\\n2465,1981-07-01,unemploy,7863.0,0.40877871634956975\\n2466,1981-08-01,unemploy,8036.0,0.4224362516775874\\n2467,1981-09-01,unemploy,8230.0,0.43775163811478646\\n2468,1981-10-01,unemploy,8646.0,0.4705928791347596\\n2469,1981-11-01,unemploy,9029.0,0.5008289255545907\\n2470,1981-12-01,unemploy,9267.0,0.5196179047919791\\n2471,1982-01-01,unemploy,9397.0,0.5298807926107207\\n2472,1982-02-01,unemploy,9705.0,0.554195942212047\\n2473,1982-03-01,unemploy,9895.0,0.5691955474855925\\n2474,1982-04-01,unemploy,10244.0,0.596747454014368\\n2475,1982-05-01,unemploy,10335.0,0.6039314754874872\\n2476,1982-06-01,unemploy,10538.0,0.6199573695429068\\n2477,1982-07-01,unemploy,10849.0,0.6445093550169733\\n2478,1982-08-01,unemploy,10881.0,0.647035604326202\\n2479,1982-09-01,unemploy,11217.0,0.6735612220731033\\n2480,1982-10-01,unemploy,11529.0,0.6981921528380832\\n2481,1982-11-01,unemploy,11938.0,0.7304807768216626\\n2482,1982-12-01,unemploy,12051.0,0.7394015946948764\\n2483,1983-01-01,unemploy,11534.0,0.6985868792926502\\n2484,1983-02-01,unemploy,11545.0,0.6994552774926975\\n2485,1983-03-01,unemploy,11408.0,0.6886397726375622\\n2486,1983-04-01,unemploy,11268.0,0.6775874319096866\\n2487,1983-05-01,unemploy,11154.0,0.6685876687455593\\n2488,1983-06-01,unemploy,11246.0,0.6758506355095919\\n2489,1983-07-01,unemploy,10548.0,0.6207468224520407\\n2490,1983-08-01,unemploy,10623.0,0.6266677192705455\\n2491,1983-09-01,unemploy,10282.0,0.5997473750690772\\n2492,1983-10-01,unemploy,9887.0,0.5685639851582853\\n2493,1983-11-01,unemploy,9499.0,0.5379332122838872\\n2494,1983-12-01,unemploy,9331.0,0.5246704034104366\\n2495,1984-01-01,unemploy,9008.0,0.4991710744454093\\n2496,1984-02-01,unemploy,8791.0,0.4820399463172022\\n2497,1984-03-01,unemploy,8746.0,0.4784874082260993\\n2498,1984-04-01,unemploy,8762.0,0.4797505328807137\\n2499,1984-05-01,unemploy,8456.0,0.4555932738612142\\n2500,1984-06-01,unemploy,8226.0,0.43743585695113285\\n2501,1984-07-01,unemploy,8537.0,0.46198784242519936\\n2502,1984-08-01,unemploy,8519.0,0.4605668271887582\\n2503,1984-09-01,unemploy,8367.0,0.44856714296992184\\n2504,1984-10-01,unemploy,8381.0,0.4496723770427094\\n2505,1984-11-01,unemploy,8198.0,0.4352253888055577\\n2506,1984-12-01,unemploy,8358.0,0.4478566353517013\\n2507,1985-01-01,unemploy,8423.0,0.4529880792610721\\n2508,1985-02-01,unemploy,8321.0,0.4449356595879056\\n2509,1985-03-01,unemploy,8339.0,0.4463566748243467\\n2510,1985-04-01,unemploy,8395.0,0.45077761111549697\\n2511,1985-05-01,unemploy,8302.0,0.443435699060551\\n2512,1985-06-01,unemploy,8460.0,0.4559090550248678\\n2513,1985-07-01,unemploy,8513.0,0.46009315544327783\\n2514,1985-08-01,unemploy,8196.0,0.435067498223731\\n2515,1985-09-01,unemploy,8248.0,0.4391726533512276\\n2516,1985-10-01,unemploy,8298.0,0.4431199178968975\\n2517,1985-11-01,unemploy,8128.0,0.42969921844161996\\n2518,1985-12-01,unemploy,8138.0,0.4304886713507539\\n2519,1986-01-01,unemploy,7795.0,0.40341043656745873\\n2520,1986-02-01,unemploy,8402.0,0.4513302281518907\\n2521,1986-03-01,unemploy,8383.0,0.4498302676245362\\n2522,1986-04-01,unemploy,8364.0,0.44833030709718164\\n2523,1986-05-01,unemploy,8439.0,0.4542512039156864\\n2524,1986-06-01,unemploy,8508.0,0.4596984289887108\\n2525,1986-07-01,unemploy,8319.0,0.4447777690060788\\n2526,1986-08-01,unemploy,8135.0,0.4302518354780137\\n2527,1986-09-01,unemploy,8310.0,0.44406726138785824\\n2528,1986-10-01,unemploy,8243.0,0.4387779268966606\\n2529,1986-11-01,unemploy,8159.0,0.4321465224599353\\n2530,1986-12-01,unemploy,7883.0,0.41035762216783767\\n2531,1987-01-01,unemploy,7892.0,0.4110681297860583\\n2532,1987-02-01,unemploy,7865.0,0.40893660693139655\\n2533,1987-03-01,unemploy,7862.0,0.40869977105865635\\n2534,1987-04-01,unemploy,7542.0,0.3834372779663693\\n2535,1987-05-01,unemploy,7574.0,0.385963527275598\\n2536,1987-06-01,unemploy,7398.0,0.37206915607484015\\n2537,1987-07-01,unemploy,7268.0,0.3618062682560985\\n2538,1987-08-01,unemploy,7261.0,0.36125365121970476\\n2539,1987-09-01,unemploy,7102.0,0.3487013499644746\\n2540,1987-10-01,unemploy,7227.0,0.3585695113286492\\n2541,1987-11-01,unemploy,7035.0,0.34341201547327704\\n2542,1987-12-01,unemploy,6936.0,0.3355964316728507\\n2543,1988-01-01,unemploy,6953.0,0.33693850161837846\\n2544,1988-02-01,unemploy,6929.0,0.33504381463645694\\n2545,1988-03-01,unemploy,6876.0,0.3308597142180469\\n2546,1988-04-01,unemploy,6601.0,0.3091497592168627\\n2547,1988-05-01,unemploy,6779.0,0.3232020209994474\\n2548,1988-06-01,unemploy,6546.0,0.30480776821662586\\n2549,1988-07-01,unemploy,6605.0,0.3094655403805163\\n2550,1988-08-01,unemploy,6843.0,0.3282545196179048\\n2551,1988-09-01,unemploy,6604.0,0.3093865950896029\\n2552,1988-10-01,unemploy,6568.0,0.30654456461672064\\n2553,1988-11-01,unemploy,6537.0,0.3040972605984053\\n2554,1988-12-01,unemploy,6518.0,0.30259730007105073\\n2555,1989-01-01,unemploy,6682.0,0.3155443277808479\\n2556,1989-02-01,unemploy,6359.0,0.29004499881582063\\n2557,1989-03-01,unemploy,6205.0,0.2778874240151575\\n2558,1989-04-01,unemploy,6468.0,0.2986500355253809\\n2559,1989-05-01,unemploy,6375.0,0.291308123470435\\n2560,1989-06-01,unemploy,6577.0,0.3072550722349412\\n2561,1989-07-01,unemploy,6495.0,0.3007815583800426\\n2562,1989-08-01,unemploy,6511.0,0.302044683034657\\n2563,1989-09-01,unemploy,6590.0,0.30828136101681536\\n2564,1989-10-01,unemploy,6630.0,0.31143917265335125\\n2565,1989-11-01,unemploy,6725.0,0.31893897529012394\\n2566,1989-12-01,unemploy,6667.0,0.31436014841714693\\n2567,1990-01-01,unemploy,6752.0,0.32107049814478567\\n2568,1990-02-01,unemploy,6651.0,0.31309702376253257\\n2569,1990-03-01,unemploy,6598.0,0.3089129233441225\\n2570,1990-04-01,unemploy,6797.0,0.3246230362358885\\n2571,1990-05-01,unemploy,6742.0,0.3202810452356517\\n2572,1990-06-01,unemploy,6590.0,0.30828136101681536\\n2573,1990-07-01,unemploy,6922.0,0.3344911976000632\\n2574,1990-08-01,unemploy,7188.0,0.35549064498302674\\n2575,1990-09-01,unemploy,7368.0,0.3697007973474382\\n2576,1990-10-01,unemploy,7459.0,0.37688481882055735\\n2577,1990-11-01,unemploy,7764.0,0.40096313254914345\\n2578,1990-12-01,unemploy,7901.0,0.41177863740427884\\n2579,1991-01-01,unemploy,8015.0,0.4207784005684061\\n2580,1991-02-01,unemploy,8265.0,0.44051472329675534\\n2581,1991-03-01,unemploy,8586.0,0.4658561616799558\\n2582,1991-04-01,unemploy,8439.0,0.4542512039156864\\n2583,1991-05-01,unemploy,8736.0,0.47769795531696535\\n2584,1991-06-01,unemploy,8692.0,0.47422436251677585\\n2585,1991-07-01,unemploy,8586.0,0.4658561616799558\\n2586,1991-08-01,unemploy,8666.0,0.47217178495302753\\n2587,1991-09-01,unemploy,8722.0,0.4765927212441778\\n2588,1991-10-01,unemploy,8842.0,0.4860661561537854\\n2589,1991-11-01,unemploy,8931.0,0.49309228704507774\\n2590,1991-12-01,unemploy,9198.0,0.5141706797189548\\n2591,1992-01-01,unemploy,9283.0,0.5208810294465935\\n2592,1992-02-01,unemploy,9454.0,0.5343806741927845\\n2593,1992-03-01,unemploy,9460.0,0.5348543459382648\\n2594,1992-04-01,unemploy,9415.0,0.531301807847162\\n2595,1992-05-01,unemploy,9744.0,0.5572748085576695\\n2596,1992-06-01,unemploy,10040.0,0.580642614668035\\n2597,1992-07-01,unemploy,9850.0,0.5656430093944896\\n2598,1992-08-01,unemploy,9787.0,0.5606694560669456\\n2599,1992-09-01,unemploy,9781.0,0.5601957843214652\\n2600,1992-10-01,unemploy,9398.0,0.5299597379016342\\n2601,1992-11-01,unemploy,9565.0,0.5431436014841715\\n2602,1992-12-01,unemploy,9557.0,0.5425120391568643\\n2603,1993-01-01,unemploy,9325.0,0.5241967316649562\\n2604,1993-02-01,unemploy,9183.0,0.5129865003552538\\n2605,1993-03-01,unemploy,9056.0,0.5029604484092524\\n2606,1993-04-01,unemploy,9110.0,0.5072234941185758\\n2607,1993-05-01,unemploy,9149.0,0.5103023604641983\\n2608,1993-06-01,unemploy,9121.0,0.5080918923186232\\n2609,1993-07-01,unemploy,8930.0,0.4930133417541644\\n2610,1993-08-01,unemploy,8763.0,0.4798294781716271\\n2611,1993-09-01,unemploy,8714.0,0.47596115891687063\\n2612,1993-10-01,unemploy,8750.0,0.4788031893897529\\n2613,1993-11-01,unemploy,8542.0,0.4623825688797663\\n2614,1993-12-01,unemploy,8477.0,0.4572511249703955\\n2615,1994-01-01,unemploy,8630.0,0.46932975448014524\\n2616,1994-02-01,unemploy,8583.0,0.4656193258072156\\n2617,1994-03-01,unemploy,8470.0,0.45669850793400174\\n2618,1994-04-01,unemploy,8331.0,0.44572511249703956\\n2619,1994-05-01,unemploy,7915.0,0.4128838714770664\\n2620,1994-06-01,unemploy,7927.0,0.41383121496802716\\n2621,1994-07-01,unemploy,7946.0,0.4153311754953817\\n2622,1994-08-01,unemploy,7933.0,0.4143048867135075\\n2623,1994-09-01,unemploy,7734.0,0.3985947738217415\\n2624,1994-10-01,unemploy,7632.0,0.390542354148575\\n2625,1994-11-01,unemploy,7375.0,0.370253414383832\\n2626,1994-12-01,unemploy,7230.0,0.35880634720138943\\n2627,1995-01-01,unemploy,7375.0,0.370253414383832\\n2628,1995-02-01,unemploy,7187.0,0.3554116996921134\\n2629,1995-03-01,unemploy,7153.0,0.35272755980105786\\n2630,1995-04-01,unemploy,7645.0,0.3915686429304492\\n2631,1995-05-01,unemploy,7430.0,0.3745954053840688\\n2632,1995-06-01,unemploy,7427.0,0.3743585695113287\\n2633,1995-07-01,unemploy,7527.0,0.3822530986026684\\n2634,1995-08-01,unemploy,7484.0,0.3788584510933923\\n2635,1995-09-01,unemploy,7478.0,0.37838477934791187\\n2636,1995-10-01,unemploy,7328.0,0.3665429857109023\\n2637,1995-11-01,unemploy,7426.0,0.3742796242204153\\n2638,1995-12-01,unemploy,7423.0,0.37404278834767507\\n2639,1996-01-01,unemploy,7491.0,0.37941106812978603\\n2640,1996-02-01,unemploy,7313.0,0.3653588063472014\\n2641,1996-03-01,unemploy,7318.0,0.36575353280176837\\n2642,1996-04-01,unemploy,7415.0,0.37341122602036786\\n2643,1996-05-01,unemploy,7423.0,0.37404278834767507\\n2644,1996-06-01,unemploy,7095.0,0.34814873292808085\\n2645,1996-07-01,unemploy,7337.0,0.36725349332912294\\n2646,1996-08-01,unemploy,6882.0,0.3313333859635273\\n2647,1996-09-01,unemploy,6979.0,0.3389910791821268\\n2648,1996-10-01,unemploy,7031.0,0.34309623430962344\\n2649,1996-11-01,unemploy,7236.0,0.35928001894686984\\n2650,1996-12-01,unemploy,7253.0,0.36062208889239755\\n2651,1997-01-01,unemploy,7158.0,0.35312228625562486\\n2652,1997-02-01,unemploy,7102.0,0.3487013499644746\\n2653,1997-03-01,unemploy,7000.0,0.3406489302913081\\n2654,1997-04-01,unemploy,6873.0,0.3306228783453067\\n2655,1997-05-01,unemploy,6655.0,0.3134128049261862\\n2656,1997-06-01,unemploy,6799.0,0.3247809268177153\\n2657,1997-07-01,unemploy,6655.0,0.3134128049261862\\n2658,1997-08-01,unemploy,6608.0,0.3097023762532565\\n2659,1997-09-01,unemploy,6656.0,0.3134917502170996\\n2660,1997-10-01,unemploy,6454.0,0.2975448014525934\\n2661,1997-11-01,unemploy,6308.0,0.2860187889792374\\n2662,1997-12-01,unemploy,6476.0,0.2992815978526881\\n2663,1998-01-01,unemploy,6368.0,0.2907555064340412\\n2664,1998-02-01,unemploy,6306.0,0.2858608983974106\\n2665,1998-03-01,unemploy,6422.0,0.29501855214336464\\n2666,1998-04-01,unemploy,5941.0,0.2570458672140207\\n2667,1998-05-01,unemploy,6047.0,0.2654140680508408\\n2668,1998-06-01,unemploy,6212.0,0.2784400410515513\\n2669,1998-07-01,unemploy,6259.0,0.28215046972448093\\n2670,1998-08-01,unemploy,6179.0,0.27583484645140915\\n2671,1998-09-01,unemploy,6300.0,0.2853872266519302\\n2672,1998-10-01,unemploy,6280.0,0.28380832083366225\\n2673,1998-11-01,unemploy,6100.0,0.26959816846925083\\n2674,1998-12-01,unemploy,6032.0,0.2642298886871398\\n2675,1999-01-01,unemploy,5976.0,0.25980895239598956\\n2676,1999-02-01,unemploy,6111.0,0.2704665666692982\\n2677,1999-03-01,unemploy,5783.0,0.24457251124970394\\n2678,1999-04-01,unemploy,6004.0,0.2620194205415647\\n2679,1999-05-01,unemploy,5796.0,0.2455988000315781\\n2680,1999-06-01,unemploy,5951.0,0.25783532012315463\\n2681,1999-07-01,unemploy,6025.0,0.26367727165074606\\n2682,1999-08-01,unemploy,5838.0,0.2489145022499408\\n2683,1999-09-01,unemploy,5915.0,0.25499328965027235\\n2684,1999-10-01,unemploy,5778.0,0.24417778479513697\\n2685,1999-11-01,unemploy,5716.0,0.23928317675850636\\n2686,1999-12-01,unemploy,5653.0,0.23430962343096234\\n2687,2000-01-01,unemploy,5708.0,0.23865161443119917\\n2688,2000-02-01,unemploy,5858.0,0.25049340806820874\\n2689,2000-03-01,unemploy,5733.0,0.2406252467040341\\n2690,2000-04-01,unemploy,5481.0,0.22073103339385805\\n2691,2000-05-01,unemploy,5758.0,0.24259887897686902\\n2692,2000-06-01,unemploy,5651.0,0.23415173284913554\\n2693,2000-07-01,unemploy,5747.0,0.24173048077682166\\n2694,2000-08-01,unemploy,5853.0,0.25009868161364174\\n2695,2000-09-01,unemploy,5625.0,0.23209915528538722\\n2696,2000-10-01,unemploy,5534.0,0.2249151338122681\\n2697,2000-11-01,unemploy,5639.0,0.23320438935817478\\n2698,2000-12-01,unemploy,5634.0,0.2328096629036078\\n2699,2001-01-01,unemploy,6023.0,0.26351938106891926\\n2700,2001-02-01,unemploy,6089.0,0.2687297702692034\\n2701,2001-03-01,unemploy,6141.0,0.27283492539670007\\n2702,2001-04-01,unemploy,6271.0,0.2830978132154417\\n2703,2001-05-01,unemploy,6226.0,0.27954527512433885\\n2704,2001-06-01,unemploy,6484.0,0.29991316017999525\\n2705,2001-07-01,unemploy,6583.0,0.30772874398042155\\n2706,2001-08-01,unemploy,7042.0,0.3439646325096708\\n2707,2001-09-01,unemploy,7142.0,0.3518591616010105\\n2708,2001-10-01,unemploy,7694.0,0.39543696218520563\\n2709,2001-11-01,unemploy,8003.0,0.41983105707744534\\n2710,2001-12-01,unemploy,8258.0,0.4399621062603616\\n2711,2002-01-01,unemploy,8182.0,0.4339622641509434\\n2712,2002-02-01,unemploy,8215.0,0.4365674587510855\\n2713,2002-03-01,unemploy,8304.0,0.44359358964237783\\n2714,2002-04-01,unemploy,8599.0,0.46688245046182997\\n2715,2002-05-01,unemploy,8399.0,0.4510933922791506\\n2716,2002-06-01,unemploy,8393.0,0.45061972053367016\\n2717,2002-07-01,unemploy,8390.0,0.45038288466092996\\n2718,2002-08-01,unemploy,8304.0,0.44359358964237783\\n2719,2002-09-01,unemploy,8251.0,0.4394094892239678\\n2720,2002-10-01,unemploy,8307.0,0.44383042551511803\\n2721,2002-11-01,unemploy,8520.0,0.4606457724796716\\n2722,2002-12-01,unemploy,8640.0,0.4701192073892792\\n2723,2003-01-01,unemploy,8520.0,0.4606457724796716\\n2724,2003-02-01,unemploy,8618.0,0.4683824109891845\\n2725,2003-03-01,unemploy,8588.0,0.4660140522617826\\n2726,2003-04-01,unemploy,8842.0,0.4860661561537854\\n2727,2003-05-01,unemploy,8957.0,0.49514486460882606\\n2728,2003-06-01,unemploy,9266.0,0.5195389595010658\\n2729,2003-07-01,unemploy,9011.0,0.4994079103181495\\n2730,2003-08-01,unemploy,8896.0,0.49032920186310885\\n2731,2003-09-01,unemploy,8921.0,0.4923028341359438\\n2732,2003-10-01,unemploy,8732.0,0.47738217415331174\\n2733,2003-11-01,unemploy,8576.0,0.46506670877082185\\n2734,2003-12-01,unemploy,8317.0,0.444619878424252\\n2735,2004-01-01,unemploy,8370.0,0.44880397884266204\\n2736,2004-02-01,unemploy,8167.0,0.43277808478724245\\n2737,2004-03-01,unemploy,8491.0,0.45835635904318306\\n2738,2004-04-01,unemploy,8170.0,0.43301492065998265\\n2739,2004-05-01,unemploy,8212.0,0.4363306228783453\\n2740,2004-06-01,unemploy,8286.0,0.4421725744059367\\n2741,2004-07-01,unemploy,8136.0,0.4303307807689271\\n2742,2004-08-01,unemploy,7990.0,0.4188047682955712\\n2743,2004-09-01,unemploy,7927.0,0.41383121496802716\\n2744,2004-10-01,unemploy,8061.0,0.42440988395042234\\n2745,2004-11-01,unemploy,7932.0,0.41422594142259417\\n2746,2004-12-01,unemploy,7934.0,0.4143838320044209\\n2747,2005-01-01,unemploy,7784.0,0.40254203836741137\\n2748,2005-02-01,unemploy,7980.0,0.4180153153864372\\n2749,2005-03-01,unemploy,7737.0,0.3988316096944817\\n2750,2005-04-01,unemploy,7672.0,0.3937001657851109\\n2751,2005-05-01,unemploy,7651.0,0.3920423146759296\\n2752,2005-06-01,unemploy,7524.0,0.38201626272992817\\n2753,2005-07-01,unemploy,7406.0,0.3727007184021473\\n2754,2005-08-01,unemploy,7345.0,0.3678850556564301\\n2755,2005-09-01,unemploy,7553.0,0.3843056761664167\\n2756,2005-10-01,unemploy,7453.0,0.37641114707507695\\n2757,2005-11-01,unemploy,7566.0,0.38533196494829086\\n2758,2005-12-01,unemploy,7279.0,0.3626746664561459\\n2759,2006-01-01,unemploy,7064.0,0.3457014289097655\\n2760,2006-02-01,unemploy,7184.0,0.3551748638193732\\n2761,2006-03-01,unemploy,7072.0,0.34633299123707273\\n2762,2006-04-01,unemploy,7120.0,0.3501223652009158\\n2763,2006-05-01,unemploy,6980.0,0.3390700244730402\\n2764,2006-06-01,unemploy,7001.0,0.3407278755822215\\n2765,2006-07-01,unemploy,7175.0,0.3544643562011526\\n2766,2006-08-01,unemploy,7091.0,0.34783295176442725\\n2767,2006-09-01,unemploy,6847.0,0.32857030078155836\\n2768,2006-10-01,unemploy,6727.0,0.31909686587195074\\n2769,2006-11-01,unemploy,6872.0,0.3305439330543933\\n2770,2006-12-01,unemploy,6762.0,0.3218599510539196\\n2771,2007-01-01,unemploy,7116.0,0.34980658403726217\\n2772,2007-02-01,unemploy,6927.0,0.33488592405463014\\n2773,2007-03-01,unemploy,6731.0,0.31941264703560435\\n2774,2007-04-01,unemploy,6850.0,0.32880713665429856\\n2775,2007-05-01,unemploy,6766.0,0.32217573221757323\\n2776,2007-06-01,unemploy,6979.0,0.3389910791821268\\n2777,2007-07-01,unemploy,7149.0,0.3524117786374043\\n2778,2007-08-01,unemploy,7067.0,0.3459382647825057\\n2779,2007-09-01,unemploy,7170.0,0.3540696297465856\\n2780,2007-10-01,unemploy,7237.0,0.35935896423778324\\n2781,2007-11-01,unemploy,7240.0,0.3595958001105234\\n2782,2007-12-01,unemploy,7645.0,0.3915686429304492\\n2783,2008-01-01,unemploy,7685.0,0.3947264545669851\\n2784,2008-02-01,unemploy,7497.0,0.37988473987526644\\n2785,2008-03-01,unemploy,7822.0,0.40554195942212046\\n2786,2008-04-01,unemploy,7637.0,0.39093708060314203\\n2787,2008-05-01,unemploy,8395.0,0.45077761111549697\\n2788,2008-06-01,unemploy,8575.0,0.46498776347990844\\n2789,2008-07-01,unemploy,8937.0,0.49356595879055815\\n2790,2008-08-01,unemploy,9438.0,0.53311754953817\\n2791,2008-09-01,unemploy,9494.0,0.5375384858293203\\n2792,2008-10-01,unemploy,10074.0,0.5833267545590906\\n2793,2008-11-01,unemploy,10538.0,0.6199573695429068\\n2794,2008-12-01,unemploy,11286.0,0.6790084471461277\\n2795,2009-01-01,unemploy,12058.0,0.7399542117312702\\n2796,2009-02-01,unemploy,12898.0,0.8062682560985237\\n2797,2009-03-01,unemploy,13426.0,0.8479513697007973\\n2798,2009-04-01,unemploy,13853.0,0.8816610089208179\\n2799,2009-05-01,unemploy,14499.0,0.9326596668508723\\n2800,2009-06-01,unemploy,14707.0,0.9490802873608589\\n2801,2009-07-01,unemploy,14601.0,0.9407120865240388\\n2802,2009-08-01,unemploy,14814.0,0.9575274334885924\\n2803,2009-09-01,unemploy,15009.0,0.9729217652167048\\n2804,2009-10-01,unemploy,15352.0,1.0\\n2805,2009-11-01,unemploy,15219.0,0.9895002763085182\\n2806,2009-12-01,unemploy,15098.0,0.9799478961079972\\n2807,2010-01-01,unemploy,15046.0,0.9758427409805005\\n2808,2010-02-01,unemploy,15113.0,0.9811320754716981\\n2809,2010-03-01,unemploy,15202.0,0.9881582063629905\\n2810,2010-04-01,unemploy,15325.0,0.9978684771453383\\n2811,2010-05-01,unemploy,14849.0,0.9602905186705613\\n2812,2010-06-01,unemploy,14474.0,0.9306860345780374\\n2813,2010-07-01,unemploy,14512.0,0.9336859556327465\\n2814,2010-08-01,unemploy,14648.0,0.9444225151969685\\n2815,2010-09-01,unemploy,14579.0,0.9389752901239441\\n2816,2010-10-01,unemploy,14516.0,0.9340017367964001\\n2817,2010-11-01,unemploy,15081.0,0.9786058261624694\\n2818,2010-12-01,unemploy,14348.0,0.9207389279229494\\n2819,2011-01-01,unemploy,14013.0,0.8942922554669614\\n2820,2011-02-01,unemploy,13820.0,0.8790558143206758\\n2821,2011-03-01,unemploy,13737.0,0.8725033551748638\\n2822,2011-04-01,unemploy,13957.0,0.8898713191758112\\n2823,2011-05-01,unemploy,13855.0,0.8818188995026447\\n2824,2011-06-01,unemploy,13962.0,0.8902660456303781\\n2825,2011-07-01,unemploy,13763.0,0.8745559327386121\\n2826,2011-08-01,unemploy,13818.0,0.878897923738849\\n2827,2011-09-01,unemploy,13948.0,0.8891608115575906\\n2828,2011-10-01,unemploy,13594.0,0.8612141785742481\\n2829,2011-11-01,unemploy,13302.0,0.8381621536275361\\n2830,2011-12-01,unemploy,13093.0,0.8216625878266361\\n2831,2012-01-01,unemploy,12797.0,0.7982947817162707\\n2832,2012-02-01,unemploy,12813.0,0.799557906370885\\n2833,2012-03-01,unemploy,12713.0,0.7916633772795453\\n2834,2012-04-01,unemploy,12646.0,0.7863740427883477\\n2835,2012-05-01,unemploy,12660.0,0.7874792768611353\\n2836,2012-06-01,unemploy,12692.0,0.7900055261703639\\n2837,2012-07-01,unemploy,12656.0,0.7871634956974817\\n2838,2012-08-01,unemploy,12471.0,0.7725586168785032\\n2839,2012-09-01,unemploy,12115.0,0.7444540933133339\\n2840,2012-10-01,unemploy,12124.0,0.7451646009315545\\n2841,2012-11-01,unemploy,12005.0,0.7357701113128602\\n2842,2012-12-01,unemploy,12298.0,0.7589010815504855\\n2843,2013-01-01,unemploy,12471.0,0.7725586168785032\\n2844,2013-02-01,unemploy,11950.0,0.7314281203126234\\n2845,2013-03-01,unemploy,11689.0,0.7108233993842268\\n2846,2013-04-01,unemploy,11760.0,0.7164285150390779\\n2847,2013-05-01,unemploy,11654.0,0.7080603142022578\\n2848,2013-06-01,unemploy,11751.0,0.7157180074208573\\n2849,2013-07-01,unemploy,11335.0,0.6828767664008842\\n2850,2013-08-01,unemploy,11279.0,0.678455830109734\\n2851,2013-09-01,unemploy,11270.0,0.6777453224915134\\n2852,2013-10-01,unemploy,11136.0,0.6671666535091182\\n2853,2013-11-01,unemploy,10787.0,0.6396147469803426\\n2854,2013-12-01,unemploy,10404.0,0.6093787005605116\\n2855,2014-01-01,unemploy,10202.0,0.5934317517960054\\n2856,2014-02-01,unemploy,10349.0,0.6050367095602748\\n2857,2014-03-01,unemploy,10380.0,0.60748401357859\\n2858,2014-04-01,unemploy,9702.0,0.5539591063393069\\n2859,2014-05-01,unemploy,9859.0,0.5663535170127102\\n2860,2014-06-01,unemploy,9460.0,0.5348543459382648\\n2861,2014-07-01,unemploy,9608.0,0.5465382489934475\\n2862,2014-08-01,unemploy,9599.0,0.5458277413752269\\n2863,2014-09-01,unemploy,9262.0,0.5192231783374122\\n2864,2014-10-01,unemploy,8990.0,0.4977500592089682\\n2865,2014-11-01,unemploy,9090.0,0.5056445883003079\\n2866,2014-12-01,unemploy,8717.0,0.4761979947896108\\n2867,2015-01-01,unemploy,8903.0,0.49088181889950266\\n2868,2015-02-01,unemploy,8610.0,0.4677508486618773\\n2869,2015-03-01,unemploy,8504.0,0.4593826478250572\\n2870,2015-04-01,unemploy,8526.0,0.46111944422515194\\n\",\n :format {:type \"csv\"}}}\n {:mark {:type \"circle\", :color \"green\", :size 200, :tooltip true},\n :encoding\n {:x {:field :date, :type :temporal},\n :y {:field :value, :type :quantitative}},\n :data\n {:values\n \"rownames,date,variable,value,value01\\n2782,2007-12-01,unemploy,7645.0,0.3915686429304492\\n2717,2002-07-01,unemploy,8390.0,0.45038288466092996\\n2594,1992-04-01,unemploy,9415.0,0.531301807847162\\n2789,2008-07-01,unemploy,8937.0,0.49356595879055815\\n2798,2009-04-01,unemploy,13853.0,0.8816610089208179\\n\",\n :format {:type \"csv\"}}}],\n :height 300,\n :data\n {:values\n \"rownames,date,variable,value,value01\\n2297,1967-07-01,unemploy,2944.0,0.020446830346569828\\n2298,1967-08-01,unemploy,2945.0,0.020525775637483226\\n2299,1967-09-01,unemploy,2958.0,0.021552064419357385\\n2300,1967-10-01,unemploy,3143.0,0.036156943238335834\\n2301,1967-11-01,unemploy,3066.0,0.030078155838004262\\n2302,1967-12-01,unemploy,3018.0,0.026288781874161206\\n2303,1968-01-01,unemploy,2878.0,0.015236441146285624\\n2304,1968-02-01,unemploy,3001.0,0.024946711928633458\\n2305,1968-03-01,unemploy,2877.0,0.015157495855372228\\n2306,1968-04-01,unemploy,2709.0,0.0018946869819215285\\n2307,1968-05-01,unemploy,2740.0,0.004341991000236836\\n2308,1968-06-01,unemploy,2938.0,0.019973158601089443\\n2309,1968-07-01,unemploy,2883.0,0.01563116760085261\\n2310,1968-08-01,unemploy,2768.0,0.006552459145811952\\n2311,1968-09-01,unemploy,2686.0,7.894529091339702E-5\\n2312,1968-10-01,unemploy,2689.0,3.157811636535881E-4\\n2313,1968-11-01,unemploy,2715.0,0.0023683587274019105\\n2314,1968-12-01,unemploy,2685.0,0.0\\n2315,1969-01-01,unemploy,2718.0,0.0026051946001421017\\n2316,1969-02-01,unemploy,2692.0,5.526170363937791E-4\\n2317,1969-03-01,unemploy,2712.0,0.0021315228546617193\\n2318,1969-04-01,unemploy,2758.0,0.005763006236677982\\n2319,1969-05-01,unemploy,2713.0,0.0022104681455751164\\n2320,1969-06-01,unemploy,2816.0,0.010341833109655009\\n2321,1969-07-01,unemploy,2868.0,0.014446988237151653\\n2322,1969-08-01,unemploy,2856.0,0.01349964474619089\\n2323,1969-09-01,unemploy,3040.0,0.02802557827425594\\n2324,1969-10-01,unemploy,3049.0,0.028736085892476514\\n2325,1969-11-01,unemploy,2856.0,0.01349964474619089\\n2326,1969-12-01,unemploy,2884.0,0.015710112891766007\\n2327,1970-01-01,unemploy,3201.0,0.04073577011131286\\n2328,1970-02-01,unemploy,3453.0,0.06062998342148891\\n2329,1970-03-01,unemploy,3635.0,0.07499802636772716\\n2330,1970-04-01,unemploy,3797.0,0.08778716349569748\\n2331,1970-05-01,unemploy,3919.0,0.09741848898713192\\n2332,1970-06-01,unemploy,4071.0,0.10941817320596826\\n2333,1970-07-01,unemploy,4175.0,0.11762848346096155\\n2334,1970-08-01,unemploy,4256.0,0.1240230520249467\\n2335,1970-09-01,unemploy,4456.0,0.13981211020762613\\n2336,1970-10-01,unemploy,4591.0,0.1504697244809347\\n2337,1970-11-01,unemploy,4898.0,0.1747059287913476\\n2338,1970-12-01,unemploy,5076.0,0.18875819057393226\\n2339,1971-01-01,unemploy,4986.0,0.18165311439172654\\n2340,1971-02-01,unemploy,4903.0,0.1751006552459146\\n2341,1971-03-01,unemploy,4987.0,0.18173205968263992\\n2342,1971-04-01,unemploy,4959.0,0.17952159153706482\\n2343,1971-05-01,unemploy,4996.0,0.1824425673008605\\n2344,1971-06-01,unemploy,4949.0,0.17873213862793083\\n2345,1971-07-01,unemploy,5035.0,0.185521433646483\\n2346,1971-08-01,unemploy,5134.0,0.1933370174469093\\n2347,1971-09-01,unemploy,5042.0,0.18607405068287677\\n2348,1971-10-01,unemploy,4954.0,0.17912686508249784\\n2349,1971-11-01,unemploy,5161.0,0.19546854030157101\\n2350,1971-12-01,unemploy,5154.0,0.19491592326517723\\n2351,1972-01-01,unemploy,5019.0,0.18425830899186862\\n2352,1972-02-01,unemploy,4928.0,0.1770742875187495\\n2353,1972-03-01,unemploy,5038.0,0.18575826951922317\\n2354,1972-04-01,unemploy,4959.0,0.17952159153706482\\n2355,1972-05-01,unemploy,4922.0,0.17660061577326913\\n2356,1972-06-01,unemploy,4923.0,0.17667956106418253\\n2357,1972-07-01,unemploy,4913.0,0.17589010815504855\\n2358,1972-08-01,unemploy,4939.0,0.17794268571879687\\n2359,1972-09-01,unemploy,4849.0,0.17083760953659113\\n2360,1972-10-01,unemploy,4875.0,0.17289018710033946\\n2361,1972-11-01,unemploy,4602.0,0.15133812268098207\\n2362,1972-12-01,unemploy,4543.0,0.14668035051709166\\n2363,1973-01-01,unemploy,4326.0,0.1295492223888845\\n2364,1973-02-01,unemploy,4452.0,0.13949632904397252\\n2365,1973-03-01,unemploy,4394.0,0.1349175021709955\\n2366,1973-04-01,unemploy,4459.0,0.1400489460803663\\n2367,1973-05-01,unemploy,4329.0,0.1297860582616247\\n2368,1973-06-01,unemploy,4363.0,0.13247019815268019\\n2369,1973-07-01,unemploy,4305.0,0.12789137127970315\\n2370,1973-08-01,unemploy,4305.0,0.12789137127970315\\n2371,1973-09-01,unemploy,4350.0,0.13144390937080602\\n2372,1973-10-01,unemploy,4144.0,0.11518117944264625\\n2373,1973-11-01,unemploy,4396.0,0.1350753927528223\\n2374,1973-12-01,unemploy,4489.0,0.1424173048077682\\n2375,1974-01-01,unemploy,4644.0,0.15465382489934476\\n2376,1974-02-01,unemploy,4731.0,0.1615220652088103\\n2377,1974-03-01,unemploy,4634.0,0.15386437199021077\\n2378,1974-04-01,unemploy,4618.0,0.15260124733559643\\n2379,1974-05-01,unemploy,4705.0,0.15946948764506197\\n2380,1974-06-01,unemploy,4927.0,0.1769953422278361\\n2381,1974-07-01,unemploy,5063.0,0.1877319017920581\\n2382,1974-08-01,unemploy,5022.0,0.18449514486460883\\n2383,1974-09-01,unemploy,5437.0,0.21725744059366858\\n2384,1974-10-01,unemploy,5523.0,0.22404673561222074\\n2385,1974-11-01,unemploy,6140.0,0.27275598010578667\\n2386,1974-12-01,unemploy,6636.0,0.3119128443988316\\n2387,1975-01-01,unemploy,7501.0,0.38020052103892005\\n2388,1975-02-01,unemploy,7520.0,0.38170048156627456\\n2389,1975-03-01,unemploy,7978.0,0.4178574248046104\\n2390,1975-04-01,unemploy,8210.0,0.43617273229651854\\n2391,1975-05-01,unemploy,8433.0,0.45377753217020605\\n2392,1975-06-01,unemploy,8220.0,0.4369621852056525\\n2393,1975-07-01,unemploy,8127.0,0.42962027315070656\\n2394,1975-08-01,unemploy,7928.0,0.41391016025894056\\n2395,1975-09-01,unemploy,7923.0,0.41351543380437356\\n2396,1975-10-01,unemploy,7897.0,0.41146285624062523\\n2397,1975-11-01,unemploy,7794.0,0.40333149127654533\\n2398,1975-12-01,unemploy,7744.0,0.3993842267308755\\n2399,1976-01-01,unemploy,7534.0,0.3828057156390621\\n2400,1976-02-01,unemploy,7326.0,0.3663850951290756\\n2401,1976-03-01,unemploy,7230.0,0.35880634720138943\\n2402,1976-04-01,unemploy,7330.0,0.3667008762927291\\n2403,1976-05-01,unemploy,7053.0,0.34483303070971816\\n2404,1976-06-01,unemploy,7322.0,0.36606931396542197\\n2405,1976-07-01,unemploy,7490.0,0.3793321228388727\\n2406,1976-08-01,unemploy,7518.0,0.38154259098444776\\n2407,1976-09-01,unemploy,7380.0,0.370648140838399\\n2408,1976-10-01,unemploy,7430.0,0.3745954053840688\\n2409,1976-11-01,unemploy,7620.0,0.38959501065761426\\n2410,1976-12-01,unemploy,7545.0,0.3836741138391095\\n2411,1977-01-01,unemploy,7280.0,0.3627536117470593\\n2412,1977-02-01,unemploy,7443.0,0.375621694165943\\n2413,1977-03-01,unemploy,7307.0,0.364885134601721\\n2414,1977-04-01,unemploy,7059.0,0.34530670245519857\\n2415,1977-05-01,unemploy,6911.0,0.33362279940001577\\n2416,1977-06-01,unemploy,7134.0,0.35122759927370334\\n2417,1977-07-01,unemploy,6829.0,0.32714928554511724\\n2418,1977-08-01,unemploy,6925.0,0.33472803347280333\\n2419,1977-09-01,unemploy,6751.0,0.32099155285387226\\n2420,1977-10-01,unemploy,6763.0,0.321938896344833\\n2421,1977-11-01,unemploy,6815.0,0.3260440514723297\\n2422,1977-12-01,unemploy,6386.0,0.29217652167048236\\n2423,1978-01-01,unemploy,6489.0,0.30030788663456226\\n2424,1978-02-01,unemploy,6318.0,0.28680824188837134\\n2425,1978-03-01,unemploy,6337.0,0.2883082024157259\\n2426,1978-04-01,unemploy,6180.0,0.27591379174232256\\n2427,1978-05-01,unemploy,6127.0,0.2717296913239125\\n2428,1978-06-01,unemploy,6028.0,0.2639141075234862\\n2429,1978-07-01,unemploy,6309.0,0.2860977342701508\\n2430,1978-08-01,unemploy,6080.0,0.26801926265098286\\n2431,1978-09-01,unemploy,6125.0,0.27157180074208576\\n2432,1978-10-01,unemploy,5947.0,0.2575195389595011\\n2433,1978-11-01,unemploy,6077.0,0.26778242677824265\\n2434,1978-12-01,unemploy,6228.0,0.2797031657061656\\n2435,1979-01-01,unemploy,6109.0,0.2703086760874714\\n2436,1979-02-01,unemploy,6173.0,0.2753611747059288\\n2437,1979-03-01,unemploy,6109.0,0.2703086760874714\\n2438,1979-04-01,unemploy,6069.0,0.2671508644509355\\n2439,1979-05-01,unemploy,5840.0,0.24907239283176758\\n2440,1979-06-01,unemploy,5959.0,0.25846688245046184\\n2441,1979-07-01,unemploy,5996.0,0.26138785821425753\\n2442,1979-08-01,unemploy,6320.0,0.28696613247019814\\n2443,1979-09-01,unemploy,6190.0,0.2767032446514565\\n2444,1979-10-01,unemploy,6296.0,0.2850714454882766\\n2445,1979-11-01,unemploy,6238.0,0.2804926186152996\\n2446,1979-12-01,unemploy,6325.0,0.28736085892476515\\n2447,1980-01-01,unemploy,6683.0,0.31562327307176125\\n2448,1980-02-01,unemploy,6702.0,0.3171232335991158\\n2449,1980-03-01,unemploy,6729.0,0.31925475645377754\\n2450,1980-04-01,unemploy,7358.0,0.36891134443830426\\n2451,1980-05-01,unemploy,7984.0,0.41833109655009076\\n2452,1980-06-01,unemploy,8098.0,0.427330859714218\\n2453,1980-07-01,unemploy,8363.0,0.44825136180626823\\n2454,1980-08-01,unemploy,8281.0,0.4417778479513697\\n2455,1980-09-01,unemploy,8021.0,0.42125207231388645\\n2456,1980-10-01,unemploy,8088.0,0.42654140680508407\\n2457,1980-11-01,unemploy,8023.0,0.42140996289571325\\n2458,1980-12-01,unemploy,7718.0,0.39733164916712715\\n2459,1981-01-01,unemploy,8071.0,0.42519933685955635\\n2460,1981-02-01,unemploy,8051.0,0.4236204310412884\\n2461,1981-03-01,unemploy,7982.0,0.418173205968264\\n2462,1981-04-01,unemploy,7869.0,0.40925238809505016\\n2463,1981-05-01,unemploy,8174.0,0.4333307018236362\\n2464,1981-06-01,unemploy,8098.0,0.427330859714218\\n2465,1981-07-01,unemploy,7863.0,0.40877871634956975\\n2466,1981-08-01,unemploy,8036.0,0.4224362516775874\\n2467,1981-09-01,unemploy,8230.0,0.43775163811478646\\n2468,1981-10-01,unemploy,8646.0,0.4705928791347596\\n2469,1981-11-01,unemploy,9029.0,0.5008289255545907\\n2470,1981-12-01,unemploy,9267.0,0.5196179047919791\\n2471,1982-01-01,unemploy,9397.0,0.5298807926107207\\n2472,1982-02-01,unemploy,9705.0,0.554195942212047\\n2473,1982-03-01,unemploy,9895.0,0.5691955474855925\\n2474,1982-04-01,unemploy,10244.0,0.596747454014368\\n2475,1982-05-01,unemploy,10335.0,0.6039314754874872\\n2476,1982-06-01,unemploy,10538.0,0.6199573695429068\\n2477,1982-07-01,unemploy,10849.0,0.6445093550169733\\n2478,1982-08-01,unemploy,10881.0,0.647035604326202\\n2479,1982-09-01,unemploy,11217.0,0.6735612220731033\\n2480,1982-10-01,unemploy,11529.0,0.6981921528380832\\n2481,1982-11-01,unemploy,11938.0,0.7304807768216626\\n2482,1982-12-01,unemploy,12051.0,0.7394015946948764\\n2483,1983-01-01,unemploy,11534.0,0.6985868792926502\\n2484,1983-02-01,unemploy,11545.0,0.6994552774926975\\n2485,1983-03-01,unemploy,11408.0,0.6886397726375622\\n2486,1983-04-01,unemploy,11268.0,0.6775874319096866\\n2487,1983-05-01,unemploy,11154.0,0.6685876687455593\\n2488,1983-06-01,unemploy,11246.0,0.6758506355095919\\n2489,1983-07-01,unemploy,10548.0,0.6207468224520407\\n2490,1983-08-01,unemploy,10623.0,0.6266677192705455\\n2491,1983-09-01,unemploy,10282.0,0.5997473750690772\\n2492,1983-10-01,unemploy,9887.0,0.5685639851582853\\n2493,1983-11-01,unemploy,9499.0,0.5379332122838872\\n2494,1983-12-01,unemploy,9331.0,0.5246704034104366\\n2495,1984-01-01,unemploy,9008.0,0.4991710744454093\\n2496,1984-02-01,unemploy,8791.0,0.4820399463172022\\n2497,1984-03-01,unemploy,8746.0,0.4784874082260993\\n2498,1984-04-01,unemploy,8762.0,0.4797505328807137\\n2499,1984-05-01,unemploy,8456.0,0.4555932738612142\\n2500,1984-06-01,unemploy,8226.0,0.43743585695113285\\n2501,1984-07-01,unemploy,8537.0,0.46198784242519936\\n2502,1984-08-01,unemploy,8519.0,0.4605668271887582\\n2503,1984-09-01,unemploy,8367.0,0.44856714296992184\\n2504,1984-10-01,unemploy,8381.0,0.4496723770427094\\n2505,1984-11-01,unemploy,8198.0,0.4352253888055577\\n2506,1984-12-01,unemploy,8358.0,0.4478566353517013\\n2507,1985-01-01,unemploy,8423.0,0.4529880792610721\\n2508,1985-02-01,unemploy,8321.0,0.4449356595879056\\n2509,1985-03-01,unemploy,8339.0,0.4463566748243467\\n2510,1985-04-01,unemploy,8395.0,0.45077761111549697\\n2511,1985-05-01,unemploy,8302.0,0.443435699060551\\n2512,1985-06-01,unemploy,8460.0,0.4559090550248678\\n2513,1985-07-01,unemploy,8513.0,0.46009315544327783\\n2514,1985-08-01,unemploy,8196.0,0.435067498223731\\n2515,1985-09-01,unemploy,8248.0,0.4391726533512276\\n2516,1985-10-01,unemploy,8298.0,0.4431199178968975\\n2517,1985-11-01,unemploy,8128.0,0.42969921844161996\\n2518,1985-12-01,unemploy,8138.0,0.4304886713507539\\n2519,1986-01-01,unemploy,7795.0,0.40341043656745873\\n2520,1986-02-01,unemploy,8402.0,0.4513302281518907\\n2521,1986-03-01,unemploy,8383.0,0.4498302676245362\\n2522,1986-04-01,unemploy,8364.0,0.44833030709718164\\n2523,1986-05-01,unemploy,8439.0,0.4542512039156864\\n2524,1986-06-01,unemploy,8508.0,0.4596984289887108\\n2525,1986-07-01,unemploy,8319.0,0.4447777690060788\\n2526,1986-08-01,unemploy,8135.0,0.4302518354780137\\n2527,1986-09-01,unemploy,8310.0,0.44406726138785824\\n2528,1986-10-01,unemploy,8243.0,0.4387779268966606\\n2529,1986-11-01,unemploy,8159.0,0.4321465224599353\\n2530,1986-12-01,unemploy,7883.0,0.41035762216783767\\n2531,1987-01-01,unemploy,7892.0,0.4110681297860583\\n2532,1987-02-01,unemploy,7865.0,0.40893660693139655\\n2533,1987-03-01,unemploy,7862.0,0.40869977105865635\\n2534,1987-04-01,unemploy,7542.0,0.3834372779663693\\n2535,1987-05-01,unemploy,7574.0,0.385963527275598\\n2536,1987-06-01,unemploy,7398.0,0.37206915607484015\\n2537,1987-07-01,unemploy,7268.0,0.3618062682560985\\n2538,1987-08-01,unemploy,7261.0,0.36125365121970476\\n2539,1987-09-01,unemploy,7102.0,0.3487013499644746\\n2540,1987-10-01,unemploy,7227.0,0.3585695113286492\\n2541,1987-11-01,unemploy,7035.0,0.34341201547327704\\n2542,1987-12-01,unemploy,6936.0,0.3355964316728507\\n2543,1988-01-01,unemploy,6953.0,0.33693850161837846\\n2544,1988-02-01,unemploy,6929.0,0.33504381463645694\\n2545,1988-03-01,unemploy,6876.0,0.3308597142180469\\n2546,1988-04-01,unemploy,6601.0,0.3091497592168627\\n2547,1988-05-01,unemploy,6779.0,0.3232020209994474\\n2548,1988-06-01,unemploy,6546.0,0.30480776821662586\\n2549,1988-07-01,unemploy,6605.0,0.3094655403805163\\n2550,1988-08-01,unemploy,6843.0,0.3282545196179048\\n2551,1988-09-01,unemploy,6604.0,0.3093865950896029\\n2552,1988-10-01,unemploy,6568.0,0.30654456461672064\\n2553,1988-11-01,unemploy,6537.0,0.3040972605984053\\n2554,1988-12-01,unemploy,6518.0,0.30259730007105073\\n2555,1989-01-01,unemploy,6682.0,0.3155443277808479\\n2556,1989-02-01,unemploy,6359.0,0.29004499881582063\\n2557,1989-03-01,unemploy,6205.0,0.2778874240151575\\n2558,1989-04-01,unemploy,6468.0,0.2986500355253809\\n2559,1989-05-01,unemploy,6375.0,0.291308123470435\\n2560,1989-06-01,unemploy,6577.0,0.3072550722349412\\n2561,1989-07-01,unemploy,6495.0,0.3007815583800426\\n2562,1989-08-01,unemploy,6511.0,0.302044683034657\\n2563,1989-09-01,unemploy,6590.0,0.30828136101681536\\n2564,1989-10-01,unemploy,6630.0,0.31143917265335125\\n2565,1989-11-01,unemploy,6725.0,0.31893897529012394\\n2566,1989-12-01,unemploy,6667.0,0.31436014841714693\\n2567,1990-01-01,unemploy,6752.0,0.32107049814478567\\n2568,1990-02-01,unemploy,6651.0,0.31309702376253257\\n2569,1990-03-01,unemploy,6598.0,0.3089129233441225\\n2570,1990-04-01,unemploy,6797.0,0.3246230362358885\\n2571,1990-05-01,unemploy,6742.0,0.3202810452356517\\n2572,1990-06-01,unemploy,6590.0,0.30828136101681536\\n2573,1990-07-01,unemploy,6922.0,0.3344911976000632\\n2574,1990-08-01,unemploy,7188.0,0.35549064498302674\\n2575,1990-09-01,unemploy,7368.0,0.3697007973474382\\n2576,1990-10-01,unemploy,7459.0,0.37688481882055735\\n2577,1990-11-01,unemploy,7764.0,0.40096313254914345\\n2578,1990-12-01,unemploy,7901.0,0.41177863740427884\\n2579,1991-01-01,unemploy,8015.0,0.4207784005684061\\n2580,1991-02-01,unemploy,8265.0,0.44051472329675534\\n2581,1991-03-01,unemploy,8586.0,0.4658561616799558\\n2582,1991-04-01,unemploy,8439.0,0.4542512039156864\\n2583,1991-05-01,unemploy,8736.0,0.47769795531696535\\n2584,1991-06-01,unemploy,8692.0,0.47422436251677585\\n2585,1991-07-01,unemploy,8586.0,0.4658561616799558\\n2586,1991-08-01,unemploy,8666.0,0.47217178495302753\\n2587,1991-09-01,unemploy,8722.0,0.4765927212441778\\n2588,1991-10-01,unemploy,8842.0,0.4860661561537854\\n2589,1991-11-01,unemploy,8931.0,0.49309228704507774\\n2590,1991-12-01,unemploy,9198.0,0.5141706797189548\\n2591,1992-01-01,unemploy,9283.0,0.5208810294465935\\n2592,1992-02-01,unemploy,9454.0,0.5343806741927845\\n2593,1992-03-01,unemploy,9460.0,0.5348543459382648\\n2594,1992-04-01,unemploy,9415.0,0.531301807847162\\n2595,1992-05-01,unemploy,9744.0,0.5572748085576695\\n2596,1992-06-01,unemploy,10040.0,0.580642614668035\\n2597,1992-07-01,unemploy,9850.0,0.5656430093944896\\n2598,1992-08-01,unemploy,9787.0,0.5606694560669456\\n2599,1992-09-01,unemploy,9781.0,0.5601957843214652\\n2600,1992-10-01,unemploy,9398.0,0.5299597379016342\\n2601,1992-11-01,unemploy,9565.0,0.5431436014841715\\n2602,1992-12-01,unemploy,9557.0,0.5425120391568643\\n2603,1993-01-01,unemploy,9325.0,0.5241967316649562\\n2604,1993-02-01,unemploy,9183.0,0.5129865003552538\\n2605,1993-03-01,unemploy,9056.0,0.5029604484092524\\n2606,1993-04-01,unemploy,9110.0,0.5072234941185758\\n2607,1993-05-01,unemploy,9149.0,0.5103023604641983\\n2608,1993-06-01,unemploy,9121.0,0.5080918923186232\\n2609,1993-07-01,unemploy,8930.0,0.4930133417541644\\n2610,1993-08-01,unemploy,8763.0,0.4798294781716271\\n2611,1993-09-01,unemploy,8714.0,0.47596115891687063\\n2612,1993-10-01,unemploy,8750.0,0.4788031893897529\\n2613,1993-11-01,unemploy,8542.0,0.4623825688797663\\n2614,1993-12-01,unemploy,8477.0,0.4572511249703955\\n2615,1994-01-01,unemploy,8630.0,0.46932975448014524\\n2616,1994-02-01,unemploy,8583.0,0.4656193258072156\\n2617,1994-03-01,unemploy,8470.0,0.45669850793400174\\n2618,1994-04-01,unemploy,8331.0,0.44572511249703956\\n2619,1994-05-01,unemploy,7915.0,0.4128838714770664\\n2620,1994-06-01,unemploy,7927.0,0.41383121496802716\\n2621,1994-07-01,unemploy,7946.0,0.4153311754953817\\n2622,1994-08-01,unemploy,7933.0,0.4143048867135075\\n2623,1994-09-01,unemploy,7734.0,0.3985947738217415\\n2624,1994-10-01,unemploy,7632.0,0.390542354148575\\n2625,1994-11-01,unemploy,7375.0,0.370253414383832\\n2626,1994-12-01,unemploy,7230.0,0.35880634720138943\\n2627,1995-01-01,unemploy,7375.0,0.370253414383832\\n2628,1995-02-01,unemploy,7187.0,0.3554116996921134\\n2629,1995-03-01,unemploy,7153.0,0.35272755980105786\\n2630,1995-04-01,unemploy,7645.0,0.3915686429304492\\n2631,1995-05-01,unemploy,7430.0,0.3745954053840688\\n2632,1995-06-01,unemploy,7427.0,0.3743585695113287\\n2633,1995-07-01,unemploy,7527.0,0.3822530986026684\\n2634,1995-08-01,unemploy,7484.0,0.3788584510933923\\n2635,1995-09-01,unemploy,7478.0,0.37838477934791187\\n2636,1995-10-01,unemploy,7328.0,0.3665429857109023\\n2637,1995-11-01,unemploy,7426.0,0.3742796242204153\\n2638,1995-12-01,unemploy,7423.0,0.37404278834767507\\n2639,1996-01-01,unemploy,7491.0,0.37941106812978603\\n2640,1996-02-01,unemploy,7313.0,0.3653588063472014\\n2641,1996-03-01,unemploy,7318.0,0.36575353280176837\\n2642,1996-04-01,unemploy,7415.0,0.37341122602036786\\n2643,1996-05-01,unemploy,7423.0,0.37404278834767507\\n2644,1996-06-01,unemploy,7095.0,0.34814873292808085\\n2645,1996-07-01,unemploy,7337.0,0.36725349332912294\\n2646,1996-08-01,unemploy,6882.0,0.3313333859635273\\n2647,1996-09-01,unemploy,6979.0,0.3389910791821268\\n2648,1996-10-01,unemploy,7031.0,0.34309623430962344\\n2649,1996-11-01,unemploy,7236.0,0.35928001894686984\\n2650,1996-12-01,unemploy,7253.0,0.36062208889239755\\n2651,1997-01-01,unemploy,7158.0,0.35312228625562486\\n2652,1997-02-01,unemploy,7102.0,0.3487013499644746\\n2653,1997-03-01,unemploy,7000.0,0.3406489302913081\\n2654,1997-04-01,unemploy,6873.0,0.3306228783453067\\n2655,1997-05-01,unemploy,6655.0,0.3134128049261862\\n2656,1997-06-01,unemploy,6799.0,0.3247809268177153\\n2657,1997-07-01,unemploy,6655.0,0.3134128049261862\\n2658,1997-08-01,unemploy,6608.0,0.3097023762532565\\n2659,1997-09-01,unemploy,6656.0,0.3134917502170996\\n2660,1997-10-01,unemploy,6454.0,0.2975448014525934\\n2661,1997-11-01,unemploy,6308.0,0.2860187889792374\\n2662,1997-12-01,unemploy,6476.0,0.2992815978526881\\n2663,1998-01-01,unemploy,6368.0,0.2907555064340412\\n2664,1998-02-01,unemploy,6306.0,0.2858608983974106\\n2665,1998-03-01,unemploy,6422.0,0.29501855214336464\\n2666,1998-04-01,unemploy,5941.0,0.2570458672140207\\n2667,1998-05-01,unemploy,6047.0,0.2654140680508408\\n2668,1998-06-01,unemploy,6212.0,0.2784400410515513\\n2669,1998-07-01,unemploy,6259.0,0.28215046972448093\\n2670,1998-08-01,unemploy,6179.0,0.27583484645140915\\n2671,1998-09-01,unemploy,6300.0,0.2853872266519302\\n2672,1998-10-01,unemploy,6280.0,0.28380832083366225\\n2673,1998-11-01,unemploy,6100.0,0.26959816846925083\\n2674,1998-12-01,unemploy,6032.0,0.2642298886871398\\n2675,1999-01-01,unemploy,5976.0,0.25980895239598956\\n2676,1999-02-01,unemploy,6111.0,0.2704665666692982\\n2677,1999-03-01,unemploy,5783.0,0.24457251124970394\\n2678,1999-04-01,unemploy,6004.0,0.2620194205415647\\n2679,1999-05-01,unemploy,5796.0,0.2455988000315781\\n2680,1999-06-01,unemploy,5951.0,0.25783532012315463\\n2681,1999-07-01,unemploy,6025.0,0.26367727165074606\\n2682,1999-08-01,unemploy,5838.0,0.2489145022499408\\n2683,1999-09-01,unemploy,5915.0,0.25499328965027235\\n2684,1999-10-01,unemploy,5778.0,0.24417778479513697\\n2685,1999-11-01,unemploy,5716.0,0.23928317675850636\\n2686,1999-12-01,unemploy,5653.0,0.23430962343096234\\n2687,2000-01-01,unemploy,5708.0,0.23865161443119917\\n2688,2000-02-01,unemploy,5858.0,0.25049340806820874\\n2689,2000-03-01,unemploy,5733.0,0.2406252467040341\\n2690,2000-04-01,unemploy,5481.0,0.22073103339385805\\n2691,2000-05-01,unemploy,5758.0,0.24259887897686902\\n2692,2000-06-01,unemploy,5651.0,0.23415173284913554\\n2693,2000-07-01,unemploy,5747.0,0.24173048077682166\\n2694,2000-08-01,unemploy,5853.0,0.25009868161364174\\n2695,2000-09-01,unemploy,5625.0,0.23209915528538722\\n2696,2000-10-01,unemploy,5534.0,0.2249151338122681\\n2697,2000-11-01,unemploy,5639.0,0.23320438935817478\\n2698,2000-12-01,unemploy,5634.0,0.2328096629036078\\n2699,2001-01-01,unemploy,6023.0,0.26351938106891926\\n2700,2001-02-01,unemploy,6089.0,0.2687297702692034\\n2701,2001-03-01,unemploy,6141.0,0.27283492539670007\\n2702,2001-04-01,unemploy,6271.0,0.2830978132154417\\n2703,2001-05-01,unemploy,6226.0,0.27954527512433885\\n2704,2001-06-01,unemploy,6484.0,0.29991316017999525\\n2705,2001-07-01,unemploy,6583.0,0.30772874398042155\\n2706,2001-08-01,unemploy,7042.0,0.3439646325096708\\n2707,2001-09-01,unemploy,7142.0,0.3518591616010105\\n2708,2001-10-01,unemploy,7694.0,0.39543696218520563\\n2709,2001-11-01,unemploy,8003.0,0.41983105707744534\\n2710,2001-12-01,unemploy,8258.0,0.4399621062603616\\n2711,2002-01-01,unemploy,8182.0,0.4339622641509434\\n2712,2002-02-01,unemploy,8215.0,0.4365674587510855\\n2713,2002-03-01,unemploy,8304.0,0.44359358964237783\\n2714,2002-04-01,unemploy,8599.0,0.46688245046182997\\n2715,2002-05-01,unemploy,8399.0,0.4510933922791506\\n2716,2002-06-01,unemploy,8393.0,0.45061972053367016\\n2717,2002-07-01,unemploy,8390.0,0.45038288466092996\\n2718,2002-08-01,unemploy,8304.0,0.44359358964237783\\n2719,2002-09-01,unemploy,8251.0,0.4394094892239678\\n2720,2002-10-01,unemploy,8307.0,0.44383042551511803\\n2721,2002-11-01,unemploy,8520.0,0.4606457724796716\\n2722,2002-12-01,unemploy,8640.0,0.4701192073892792\\n2723,2003-01-01,unemploy,8520.0,0.4606457724796716\\n2724,2003-02-01,unemploy,8618.0,0.4683824109891845\\n2725,2003-03-01,unemploy,8588.0,0.4660140522617826\\n2726,2003-04-01,unemploy,8842.0,0.4860661561537854\\n2727,2003-05-01,unemploy,8957.0,0.49514486460882606\\n2728,2003-06-01,unemploy,9266.0,0.5195389595010658\\n2729,2003-07-01,unemploy,9011.0,0.4994079103181495\\n2730,2003-08-01,unemploy,8896.0,0.49032920186310885\\n2731,2003-09-01,unemploy,8921.0,0.4923028341359438\\n2732,2003-10-01,unemploy,8732.0,0.47738217415331174\\n2733,2003-11-01,unemploy,8576.0,0.46506670877082185\\n2734,2003-12-01,unemploy,8317.0,0.444619878424252\\n2735,2004-01-01,unemploy,8370.0,0.44880397884266204\\n2736,2004-02-01,unemploy,8167.0,0.43277808478724245\\n2737,2004-03-01,unemploy,8491.0,0.45835635904318306\\n2738,2004-04-01,unemploy,8170.0,0.43301492065998265\\n2739,2004-05-01,unemploy,8212.0,0.4363306228783453\\n2740,2004-06-01,unemploy,8286.0,0.4421725744059367\\n2741,2004-07-01,unemploy,8136.0,0.4303307807689271\\n2742,2004-08-01,unemploy,7990.0,0.4188047682955712\\n2743,2004-09-01,unemploy,7927.0,0.41383121496802716\\n2744,2004-10-01,unemploy,8061.0,0.42440988395042234\\n2745,2004-11-01,unemploy,7932.0,0.41422594142259417\\n2746,2004-12-01,unemploy,7934.0,0.4143838320044209\\n2747,2005-01-01,unemploy,7784.0,0.40254203836741137\\n2748,2005-02-01,unemploy,7980.0,0.4180153153864372\\n2749,2005-03-01,unemploy,7737.0,0.3988316096944817\\n2750,2005-04-01,unemploy,7672.0,0.3937001657851109\\n2751,2005-05-01,unemploy,7651.0,0.3920423146759296\\n2752,2005-06-01,unemploy,7524.0,0.38201626272992817\\n2753,2005-07-01,unemploy,7406.0,0.3727007184021473\\n2754,2005-08-01,unemploy,7345.0,0.3678850556564301\\n2755,2005-09-01,unemploy,7553.0,0.3843056761664167\\n2756,2005-10-01,unemploy,7453.0,0.37641114707507695\\n2757,2005-11-01,unemploy,7566.0,0.38533196494829086\\n2758,2005-12-01,unemploy,7279.0,0.3626746664561459\\n2759,2006-01-01,unemploy,7064.0,0.3457014289097655\\n2760,2006-02-01,unemploy,7184.0,0.3551748638193732\\n2761,2006-03-01,unemploy,7072.0,0.34633299123707273\\n2762,2006-04-01,unemploy,7120.0,0.3501223652009158\\n2763,2006-05-01,unemploy,6980.0,0.3390700244730402\\n2764,2006-06-01,unemploy,7001.0,0.3407278755822215\\n2765,2006-07-01,unemploy,7175.0,0.3544643562011526\\n2766,2006-08-01,unemploy,7091.0,0.34783295176442725\\n2767,2006-09-01,unemploy,6847.0,0.32857030078155836\\n2768,2006-10-01,unemploy,6727.0,0.31909686587195074\\n2769,2006-11-01,unemploy,6872.0,0.3305439330543933\\n2770,2006-12-01,unemploy,6762.0,0.3218599510539196\\n2771,2007-01-01,unemploy,7116.0,0.34980658403726217\\n2772,2007-02-01,unemploy,6927.0,0.33488592405463014\\n2773,2007-03-01,unemploy,6731.0,0.31941264703560435\\n2774,2007-04-01,unemploy,6850.0,0.32880713665429856\\n2775,2007-05-01,unemploy,6766.0,0.32217573221757323\\n2776,2007-06-01,unemploy,6979.0,0.3389910791821268\\n2777,2007-07-01,unemploy,7149.0,0.3524117786374043\\n2778,2007-08-01,unemploy,7067.0,0.3459382647825057\\n2779,2007-09-01,unemploy,7170.0,0.3540696297465856\\n2780,2007-10-01,unemploy,7237.0,0.35935896423778324\\n2781,2007-11-01,unemploy,7240.0,0.3595958001105234\\n2782,2007-12-01,unemploy,7645.0,0.3915686429304492\\n2783,2008-01-01,unemploy,7685.0,0.3947264545669851\\n2784,2008-02-01,unemploy,7497.0,0.37988473987526644\\n2785,2008-03-01,unemploy,7822.0,0.40554195942212046\\n2786,2008-04-01,unemploy,7637.0,0.39093708060314203\\n2787,2008-05-01,unemploy,8395.0,0.45077761111549697\\n2788,2008-06-01,unemploy,8575.0,0.46498776347990844\\n2789,2008-07-01,unemploy,8937.0,0.49356595879055815\\n2790,2008-08-01,unemploy,9438.0,0.53311754953817\\n2791,2008-09-01,unemploy,9494.0,0.5375384858293203\\n2792,2008-10-01,unemploy,10074.0,0.5833267545590906\\n2793,2008-11-01,unemploy,10538.0,0.6199573695429068\\n2794,2008-12-01,unemploy,11286.0,0.6790084471461277\\n2795,2009-01-01,unemploy,12058.0,0.7399542117312702\\n2796,2009-02-01,unemploy,12898.0,0.8062682560985237\\n2797,2009-03-01,unemploy,13426.0,0.8479513697007973\\n2798,2009-04-01,unemploy,13853.0,0.8816610089208179\\n2799,2009-05-01,unemploy,14499.0,0.9326596668508723\\n2800,2009-06-01,unemploy,14707.0,0.9490802873608589\\n2801,2009-07-01,unemploy,14601.0,0.9407120865240388\\n2802,2009-08-01,unemploy,14814.0,0.9575274334885924\\n2803,2009-09-01,unemploy,15009.0,0.9729217652167048\\n2804,2009-10-01,unemploy,15352.0,1.0\\n2805,2009-11-01,unemploy,15219.0,0.9895002763085182\\n2806,2009-12-01,unemploy,15098.0,0.9799478961079972\\n2807,2010-01-01,unemploy,15046.0,0.9758427409805005\\n2808,2010-02-01,unemploy,15113.0,0.9811320754716981\\n2809,2010-03-01,unemploy,15202.0,0.9881582063629905\\n2810,2010-04-01,unemploy,15325.0,0.9978684771453383\\n2811,2010-05-01,unemploy,14849.0,0.9602905186705613\\n2812,2010-06-01,unemploy,14474.0,0.9306860345780374\\n2813,2010-07-01,unemploy,14512.0,0.9336859556327465\\n2814,2010-08-01,unemploy,14648.0,0.9444225151969685\\n2815,2010-09-01,unemploy,14579.0,0.9389752901239441\\n2816,2010-10-01,unemploy,14516.0,0.9340017367964001\\n2817,2010-11-01,unemploy,15081.0,0.9786058261624694\\n2818,2010-12-01,unemploy,14348.0,0.9207389279229494\\n2819,2011-01-01,unemploy,14013.0,0.8942922554669614\\n2820,2011-02-01,unemploy,13820.0,0.8790558143206758\\n2821,2011-03-01,unemploy,13737.0,0.8725033551748638\\n2822,2011-04-01,unemploy,13957.0,0.8898713191758112\\n2823,2011-05-01,unemploy,13855.0,0.8818188995026447\\n2824,2011-06-01,unemploy,13962.0,0.8902660456303781\\n2825,2011-07-01,unemploy,13763.0,0.8745559327386121\\n2826,2011-08-01,unemploy,13818.0,0.878897923738849\\n2827,2011-09-01,unemploy,13948.0,0.8891608115575906\\n2828,2011-10-01,unemploy,13594.0,0.8612141785742481\\n2829,2011-11-01,unemploy,13302.0,0.8381621536275361\\n2830,2011-12-01,unemploy,13093.0,0.8216625878266361\\n2831,2012-01-01,unemploy,12797.0,0.7982947817162707\\n2832,2012-02-01,unemploy,12813.0,0.799557906370885\\n2833,2012-03-01,unemploy,12713.0,0.7916633772795453\\n2834,2012-04-01,unemploy,12646.0,0.7863740427883477\\n2835,2012-05-01,unemploy,12660.0,0.7874792768611353\\n2836,2012-06-01,unemploy,12692.0,0.7900055261703639\\n2837,2012-07-01,unemploy,12656.0,0.7871634956974817\\n2838,2012-08-01,unemploy,12471.0,0.7725586168785032\\n2839,2012-09-01,unemploy,12115.0,0.7444540933133339\\n2840,2012-10-01,unemploy,12124.0,0.7451646009315545\\n2841,2012-11-01,unemploy,12005.0,0.7357701113128602\\n2842,2012-12-01,unemploy,12298.0,0.7589010815504855\\n2843,2013-01-01,unemploy,12471.0,0.7725586168785032\\n2844,2013-02-01,unemploy,11950.0,0.7314281203126234\\n2845,2013-03-01,unemploy,11689.0,0.7108233993842268\\n2846,2013-04-01,unemploy,11760.0,0.7164285150390779\\n2847,2013-05-01,unemploy,11654.0,0.7080603142022578\\n2848,2013-06-01,unemploy,11751.0,0.7157180074208573\\n2849,2013-07-01,unemploy,11335.0,0.6828767664008842\\n2850,2013-08-01,unemploy,11279.0,0.678455830109734\\n2851,2013-09-01,unemploy,11270.0,0.6777453224915134\\n2852,2013-10-01,unemploy,11136.0,0.6671666535091182\\n2853,2013-11-01,unemploy,10787.0,0.6396147469803426\\n2854,2013-12-01,unemploy,10404.0,0.6093787005605116\\n2855,2014-01-01,unemploy,10202.0,0.5934317517960054\\n2856,2014-02-01,unemploy,10349.0,0.6050367095602748\\n2857,2014-03-01,unemploy,10380.0,0.60748401357859\\n2858,2014-04-01,unemploy,9702.0,0.5539591063393069\\n2859,2014-05-01,unemploy,9859.0,0.5663535170127102\\n2860,2014-06-01,unemploy,9460.0,0.5348543459382648\\n2861,2014-07-01,unemploy,9608.0,0.5465382489934475\\n2862,2014-08-01,unemploy,9599.0,0.5458277413752269\\n2863,2014-09-01,unemploy,9262.0,0.5192231783374122\\n2864,2014-10-01,unemploy,8990.0,0.4977500592089682\\n2865,2014-11-01,unemploy,9090.0,0.5056445883003079\\n2866,2014-12-01,unemploy,8717.0,0.4761979947896108\\n2867,2015-01-01,unemploy,8903.0,0.49088181889950266\\n2868,2015-02-01,unemploy,8610.0,0.4677508486618773\\n2869,2015-03-01,unemploy,8504.0,0.4593826478250572\\n2870,2015-04-01,unemploy,8526.0,0.46111944422515194\\n\",\n :format {:type \"csv\"}}}\n\nWhile this in itself does not affect the display of the plot, it allows us to keep editing it as a Vega-Lite spec. For example, let us change the backgound colour this way:\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (haclo/base {:=x :date\n :=y :value})\n (haclo/layer-line {:=mark-color \"purple\"})\n (haclo/update-data tc/random 5)\n (haclo/layer-point {:=mark-color \"green\"\n :=mark-size 200})\n haclo/plot\n (assoc :background \"lightgrey\"))", + "text": "3.10 Processing raw vega-lite\nDuring a pipeline, we may call haclo/plot to apply the Hanami transform and realize the Vega-Lite spec.\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (haclo/base {:=x :date\n :=y :value})\n (haclo/layer-line {:=mark-color \"purple\"})\n (haclo/update-data tc/random 5)\n (haclo/layer-point {:=mark-color \"green\"\n :=mark-size 200})\n haclo/plot\n kind/pprint)\n\n\n{:encoding\n {:x {:field :date, :type :temporal},\n :y {:field :value, :type :quantitative}},\n :usermeta {:embedOptions {:renderer :svg}},\n :width 400,\n :background \"floralwhite\",\n :layer\n [{:mark {:type \"line\", :color \"purple\", :tooltip true},\n :encoding\n {:x {:field :date, :type :temporal},\n :y {:field :value, :type :quantitative}},\n :data\n {:values\n \"rownames,date,variable,value,value01\\n2297,1967-07-01,unemploy,2944.0,0.020446830346569828\\n2298,1967-08-01,unemploy,2945.0,0.020525775637483226\\n2299,1967-09-01,unemploy,2958.0,0.021552064419357385\\n2300,1967-10-01,unemploy,3143.0,0.036156943238335834\\n2301,1967-11-01,unemploy,3066.0,0.030078155838004262\\n2302,1967-12-01,unemploy,3018.0,0.026288781874161206\\n2303,1968-01-01,unemploy,2878.0,0.015236441146285624\\n2304,1968-02-01,unemploy,3001.0,0.024946711928633458\\n2305,1968-03-01,unemploy,2877.0,0.015157495855372228\\n2306,1968-04-01,unemploy,2709.0,0.0018946869819215285\\n2307,1968-05-01,unemploy,2740.0,0.004341991000236836\\n2308,1968-06-01,unemploy,2938.0,0.019973158601089443\\n2309,1968-07-01,unemploy,2883.0,0.01563116760085261\\n2310,1968-08-01,unemploy,2768.0,0.006552459145811952\\n2311,1968-09-01,unemploy,2686.0,7.894529091339702E-5\\n2312,1968-10-01,unemploy,2689.0,3.157811636535881E-4\\n2313,1968-11-01,unemploy,2715.0,0.0023683587274019105\\n2314,1968-12-01,unemploy,2685.0,0.0\\n2315,1969-01-01,unemploy,2718.0,0.0026051946001421017\\n2316,1969-02-01,unemploy,2692.0,5.526170363937791E-4\\n2317,1969-03-01,unemploy,2712.0,0.0021315228546617193\\n2318,1969-04-01,unemploy,2758.0,0.005763006236677982\\n2319,1969-05-01,unemploy,2713.0,0.0022104681455751164\\n2320,1969-06-01,unemploy,2816.0,0.010341833109655009\\n2321,1969-07-01,unemploy,2868.0,0.014446988237151653\\n2322,1969-08-01,unemploy,2856.0,0.01349964474619089\\n2323,1969-09-01,unemploy,3040.0,0.02802557827425594\\n2324,1969-10-01,unemploy,3049.0,0.028736085892476514\\n2325,1969-11-01,unemploy,2856.0,0.01349964474619089\\n2326,1969-12-01,unemploy,2884.0,0.015710112891766007\\n2327,1970-01-01,unemploy,3201.0,0.04073577011131286\\n2328,1970-02-01,unemploy,3453.0,0.06062998342148891\\n2329,1970-03-01,unemploy,3635.0,0.07499802636772716\\n2330,1970-04-01,unemploy,3797.0,0.08778716349569748\\n2331,1970-05-01,unemploy,3919.0,0.09741848898713192\\n2332,1970-06-01,unemploy,4071.0,0.10941817320596826\\n2333,1970-07-01,unemploy,4175.0,0.11762848346096155\\n2334,1970-08-01,unemploy,4256.0,0.1240230520249467\\n2335,1970-09-01,unemploy,4456.0,0.13981211020762613\\n2336,1970-10-01,unemploy,4591.0,0.1504697244809347\\n2337,1970-11-01,unemploy,4898.0,0.1747059287913476\\n2338,1970-12-01,unemploy,5076.0,0.18875819057393226\\n2339,1971-01-01,unemploy,4986.0,0.18165311439172654\\n2340,1971-02-01,unemploy,4903.0,0.1751006552459146\\n2341,1971-03-01,unemploy,4987.0,0.18173205968263992\\n2342,1971-04-01,unemploy,4959.0,0.17952159153706482\\n2343,1971-05-01,unemploy,4996.0,0.1824425673008605\\n2344,1971-06-01,unemploy,4949.0,0.17873213862793083\\n2345,1971-07-01,unemploy,5035.0,0.185521433646483\\n2346,1971-08-01,unemploy,5134.0,0.1933370174469093\\n2347,1971-09-01,unemploy,5042.0,0.18607405068287677\\n2348,1971-10-01,unemploy,4954.0,0.17912686508249784\\n2349,1971-11-01,unemploy,5161.0,0.19546854030157101\\n2350,1971-12-01,unemploy,5154.0,0.19491592326517723\\n2351,1972-01-01,unemploy,5019.0,0.18425830899186862\\n2352,1972-02-01,unemploy,4928.0,0.1770742875187495\\n2353,1972-03-01,unemploy,5038.0,0.18575826951922317\\n2354,1972-04-01,unemploy,4959.0,0.17952159153706482\\n2355,1972-05-01,unemploy,4922.0,0.17660061577326913\\n2356,1972-06-01,unemploy,4923.0,0.17667956106418253\\n2357,1972-07-01,unemploy,4913.0,0.17589010815504855\\n2358,1972-08-01,unemploy,4939.0,0.17794268571879687\\n2359,1972-09-01,unemploy,4849.0,0.17083760953659113\\n2360,1972-10-01,unemploy,4875.0,0.17289018710033946\\n2361,1972-11-01,unemploy,4602.0,0.15133812268098207\\n2362,1972-12-01,unemploy,4543.0,0.14668035051709166\\n2363,1973-01-01,unemploy,4326.0,0.1295492223888845\\n2364,1973-02-01,unemploy,4452.0,0.13949632904397252\\n2365,1973-03-01,unemploy,4394.0,0.1349175021709955\\n2366,1973-04-01,unemploy,4459.0,0.1400489460803663\\n2367,1973-05-01,unemploy,4329.0,0.1297860582616247\\n2368,1973-06-01,unemploy,4363.0,0.13247019815268019\\n2369,1973-07-01,unemploy,4305.0,0.12789137127970315\\n2370,1973-08-01,unemploy,4305.0,0.12789137127970315\\n2371,1973-09-01,unemploy,4350.0,0.13144390937080602\\n2372,1973-10-01,unemploy,4144.0,0.11518117944264625\\n2373,1973-11-01,unemploy,4396.0,0.1350753927528223\\n2374,1973-12-01,unemploy,4489.0,0.1424173048077682\\n2375,1974-01-01,unemploy,4644.0,0.15465382489934476\\n2376,1974-02-01,unemploy,4731.0,0.1615220652088103\\n2377,1974-03-01,unemploy,4634.0,0.15386437199021077\\n2378,1974-04-01,unemploy,4618.0,0.15260124733559643\\n2379,1974-05-01,unemploy,4705.0,0.15946948764506197\\n2380,1974-06-01,unemploy,4927.0,0.1769953422278361\\n2381,1974-07-01,unemploy,5063.0,0.1877319017920581\\n2382,1974-08-01,unemploy,5022.0,0.18449514486460883\\n2383,1974-09-01,unemploy,5437.0,0.21725744059366858\\n2384,1974-10-01,unemploy,5523.0,0.22404673561222074\\n2385,1974-11-01,unemploy,6140.0,0.27275598010578667\\n2386,1974-12-01,unemploy,6636.0,0.3119128443988316\\n2387,1975-01-01,unemploy,7501.0,0.38020052103892005\\n2388,1975-02-01,unemploy,7520.0,0.38170048156627456\\n2389,1975-03-01,unemploy,7978.0,0.4178574248046104\\n2390,1975-04-01,unemploy,8210.0,0.43617273229651854\\n2391,1975-05-01,unemploy,8433.0,0.45377753217020605\\n2392,1975-06-01,unemploy,8220.0,0.4369621852056525\\n2393,1975-07-01,unemploy,8127.0,0.42962027315070656\\n2394,1975-08-01,unemploy,7928.0,0.41391016025894056\\n2395,1975-09-01,unemploy,7923.0,0.41351543380437356\\n2396,1975-10-01,unemploy,7897.0,0.41146285624062523\\n2397,1975-11-01,unemploy,7794.0,0.40333149127654533\\n2398,1975-12-01,unemploy,7744.0,0.3993842267308755\\n2399,1976-01-01,unemploy,7534.0,0.3828057156390621\\n2400,1976-02-01,unemploy,7326.0,0.3663850951290756\\n2401,1976-03-01,unemploy,7230.0,0.35880634720138943\\n2402,1976-04-01,unemploy,7330.0,0.3667008762927291\\n2403,1976-05-01,unemploy,7053.0,0.34483303070971816\\n2404,1976-06-01,unemploy,7322.0,0.36606931396542197\\n2405,1976-07-01,unemploy,7490.0,0.3793321228388727\\n2406,1976-08-01,unemploy,7518.0,0.38154259098444776\\n2407,1976-09-01,unemploy,7380.0,0.370648140838399\\n2408,1976-10-01,unemploy,7430.0,0.3745954053840688\\n2409,1976-11-01,unemploy,7620.0,0.38959501065761426\\n2410,1976-12-01,unemploy,7545.0,0.3836741138391095\\n2411,1977-01-01,unemploy,7280.0,0.3627536117470593\\n2412,1977-02-01,unemploy,7443.0,0.375621694165943\\n2413,1977-03-01,unemploy,7307.0,0.364885134601721\\n2414,1977-04-01,unemploy,7059.0,0.34530670245519857\\n2415,1977-05-01,unemploy,6911.0,0.33362279940001577\\n2416,1977-06-01,unemploy,7134.0,0.35122759927370334\\n2417,1977-07-01,unemploy,6829.0,0.32714928554511724\\n2418,1977-08-01,unemploy,6925.0,0.33472803347280333\\n2419,1977-09-01,unemploy,6751.0,0.32099155285387226\\n2420,1977-10-01,unemploy,6763.0,0.321938896344833\\n2421,1977-11-01,unemploy,6815.0,0.3260440514723297\\n2422,1977-12-01,unemploy,6386.0,0.29217652167048236\\n2423,1978-01-01,unemploy,6489.0,0.30030788663456226\\n2424,1978-02-01,unemploy,6318.0,0.28680824188837134\\n2425,1978-03-01,unemploy,6337.0,0.2883082024157259\\n2426,1978-04-01,unemploy,6180.0,0.27591379174232256\\n2427,1978-05-01,unemploy,6127.0,0.2717296913239125\\n2428,1978-06-01,unemploy,6028.0,0.2639141075234862\\n2429,1978-07-01,unemploy,6309.0,0.2860977342701508\\n2430,1978-08-01,unemploy,6080.0,0.26801926265098286\\n2431,1978-09-01,unemploy,6125.0,0.27157180074208576\\n2432,1978-10-01,unemploy,5947.0,0.2575195389595011\\n2433,1978-11-01,unemploy,6077.0,0.26778242677824265\\n2434,1978-12-01,unemploy,6228.0,0.2797031657061656\\n2435,1979-01-01,unemploy,6109.0,0.2703086760874714\\n2436,1979-02-01,unemploy,6173.0,0.2753611747059288\\n2437,1979-03-01,unemploy,6109.0,0.2703086760874714\\n2438,1979-04-01,unemploy,6069.0,0.2671508644509355\\n2439,1979-05-01,unemploy,5840.0,0.24907239283176758\\n2440,1979-06-01,unemploy,5959.0,0.25846688245046184\\n2441,1979-07-01,unemploy,5996.0,0.26138785821425753\\n2442,1979-08-01,unemploy,6320.0,0.28696613247019814\\n2443,1979-09-01,unemploy,6190.0,0.2767032446514565\\n2444,1979-10-01,unemploy,6296.0,0.2850714454882766\\n2445,1979-11-01,unemploy,6238.0,0.2804926186152996\\n2446,1979-12-01,unemploy,6325.0,0.28736085892476515\\n2447,1980-01-01,unemploy,6683.0,0.31562327307176125\\n2448,1980-02-01,unemploy,6702.0,0.3171232335991158\\n2449,1980-03-01,unemploy,6729.0,0.31925475645377754\\n2450,1980-04-01,unemploy,7358.0,0.36891134443830426\\n2451,1980-05-01,unemploy,7984.0,0.41833109655009076\\n2452,1980-06-01,unemploy,8098.0,0.427330859714218\\n2453,1980-07-01,unemploy,8363.0,0.44825136180626823\\n2454,1980-08-01,unemploy,8281.0,0.4417778479513697\\n2455,1980-09-01,unemploy,8021.0,0.42125207231388645\\n2456,1980-10-01,unemploy,8088.0,0.42654140680508407\\n2457,1980-11-01,unemploy,8023.0,0.42140996289571325\\n2458,1980-12-01,unemploy,7718.0,0.39733164916712715\\n2459,1981-01-01,unemploy,8071.0,0.42519933685955635\\n2460,1981-02-01,unemploy,8051.0,0.4236204310412884\\n2461,1981-03-01,unemploy,7982.0,0.418173205968264\\n2462,1981-04-01,unemploy,7869.0,0.40925238809505016\\n2463,1981-05-01,unemploy,8174.0,0.4333307018236362\\n2464,1981-06-01,unemploy,8098.0,0.427330859714218\\n2465,1981-07-01,unemploy,7863.0,0.40877871634956975\\n2466,1981-08-01,unemploy,8036.0,0.4224362516775874\\n2467,1981-09-01,unemploy,8230.0,0.43775163811478646\\n2468,1981-10-01,unemploy,8646.0,0.4705928791347596\\n2469,1981-11-01,unemploy,9029.0,0.5008289255545907\\n2470,1981-12-01,unemploy,9267.0,0.5196179047919791\\n2471,1982-01-01,unemploy,9397.0,0.5298807926107207\\n2472,1982-02-01,unemploy,9705.0,0.554195942212047\\n2473,1982-03-01,unemploy,9895.0,0.5691955474855925\\n2474,1982-04-01,unemploy,10244.0,0.596747454014368\\n2475,1982-05-01,unemploy,10335.0,0.6039314754874872\\n2476,1982-06-01,unemploy,10538.0,0.6199573695429068\\n2477,1982-07-01,unemploy,10849.0,0.6445093550169733\\n2478,1982-08-01,unemploy,10881.0,0.647035604326202\\n2479,1982-09-01,unemploy,11217.0,0.6735612220731033\\n2480,1982-10-01,unemploy,11529.0,0.6981921528380832\\n2481,1982-11-01,unemploy,11938.0,0.7304807768216626\\n2482,1982-12-01,unemploy,12051.0,0.7394015946948764\\n2483,1983-01-01,unemploy,11534.0,0.6985868792926502\\n2484,1983-02-01,unemploy,11545.0,0.6994552774926975\\n2485,1983-03-01,unemploy,11408.0,0.6886397726375622\\n2486,1983-04-01,unemploy,11268.0,0.6775874319096866\\n2487,1983-05-01,unemploy,11154.0,0.6685876687455593\\n2488,1983-06-01,unemploy,11246.0,0.6758506355095919\\n2489,1983-07-01,unemploy,10548.0,0.6207468224520407\\n2490,1983-08-01,unemploy,10623.0,0.6266677192705455\\n2491,1983-09-01,unemploy,10282.0,0.5997473750690772\\n2492,1983-10-01,unemploy,9887.0,0.5685639851582853\\n2493,1983-11-01,unemploy,9499.0,0.5379332122838872\\n2494,1983-12-01,unemploy,9331.0,0.5246704034104366\\n2495,1984-01-01,unemploy,9008.0,0.4991710744454093\\n2496,1984-02-01,unemploy,8791.0,0.4820399463172022\\n2497,1984-03-01,unemploy,8746.0,0.4784874082260993\\n2498,1984-04-01,unemploy,8762.0,0.4797505328807137\\n2499,1984-05-01,unemploy,8456.0,0.4555932738612142\\n2500,1984-06-01,unemploy,8226.0,0.43743585695113285\\n2501,1984-07-01,unemploy,8537.0,0.46198784242519936\\n2502,1984-08-01,unemploy,8519.0,0.4605668271887582\\n2503,1984-09-01,unemploy,8367.0,0.44856714296992184\\n2504,1984-10-01,unemploy,8381.0,0.4496723770427094\\n2505,1984-11-01,unemploy,8198.0,0.4352253888055577\\n2506,1984-12-01,unemploy,8358.0,0.4478566353517013\\n2507,1985-01-01,unemploy,8423.0,0.4529880792610721\\n2508,1985-02-01,unemploy,8321.0,0.4449356595879056\\n2509,1985-03-01,unemploy,8339.0,0.4463566748243467\\n2510,1985-04-01,unemploy,8395.0,0.45077761111549697\\n2511,1985-05-01,unemploy,8302.0,0.443435699060551\\n2512,1985-06-01,unemploy,8460.0,0.4559090550248678\\n2513,1985-07-01,unemploy,8513.0,0.46009315544327783\\n2514,1985-08-01,unemploy,8196.0,0.435067498223731\\n2515,1985-09-01,unemploy,8248.0,0.4391726533512276\\n2516,1985-10-01,unemploy,8298.0,0.4431199178968975\\n2517,1985-11-01,unemploy,8128.0,0.42969921844161996\\n2518,1985-12-01,unemploy,8138.0,0.4304886713507539\\n2519,1986-01-01,unemploy,7795.0,0.40341043656745873\\n2520,1986-02-01,unemploy,8402.0,0.4513302281518907\\n2521,1986-03-01,unemploy,8383.0,0.4498302676245362\\n2522,1986-04-01,unemploy,8364.0,0.44833030709718164\\n2523,1986-05-01,unemploy,8439.0,0.4542512039156864\\n2524,1986-06-01,unemploy,8508.0,0.4596984289887108\\n2525,1986-07-01,unemploy,8319.0,0.4447777690060788\\n2526,1986-08-01,unemploy,8135.0,0.4302518354780137\\n2527,1986-09-01,unemploy,8310.0,0.44406726138785824\\n2528,1986-10-01,unemploy,8243.0,0.4387779268966606\\n2529,1986-11-01,unemploy,8159.0,0.4321465224599353\\n2530,1986-12-01,unemploy,7883.0,0.41035762216783767\\n2531,1987-01-01,unemploy,7892.0,0.4110681297860583\\n2532,1987-02-01,unemploy,7865.0,0.40893660693139655\\n2533,1987-03-01,unemploy,7862.0,0.40869977105865635\\n2534,1987-04-01,unemploy,7542.0,0.3834372779663693\\n2535,1987-05-01,unemploy,7574.0,0.385963527275598\\n2536,1987-06-01,unemploy,7398.0,0.37206915607484015\\n2537,1987-07-01,unemploy,7268.0,0.3618062682560985\\n2538,1987-08-01,unemploy,7261.0,0.36125365121970476\\n2539,1987-09-01,unemploy,7102.0,0.3487013499644746\\n2540,1987-10-01,unemploy,7227.0,0.3585695113286492\\n2541,1987-11-01,unemploy,7035.0,0.34341201547327704\\n2542,1987-12-01,unemploy,6936.0,0.3355964316728507\\n2543,1988-01-01,unemploy,6953.0,0.33693850161837846\\n2544,1988-02-01,unemploy,6929.0,0.33504381463645694\\n2545,1988-03-01,unemploy,6876.0,0.3308597142180469\\n2546,1988-04-01,unemploy,6601.0,0.3091497592168627\\n2547,1988-05-01,unemploy,6779.0,0.3232020209994474\\n2548,1988-06-01,unemploy,6546.0,0.30480776821662586\\n2549,1988-07-01,unemploy,6605.0,0.3094655403805163\\n2550,1988-08-01,unemploy,6843.0,0.3282545196179048\\n2551,1988-09-01,unemploy,6604.0,0.3093865950896029\\n2552,1988-10-01,unemploy,6568.0,0.30654456461672064\\n2553,1988-11-01,unemploy,6537.0,0.3040972605984053\\n2554,1988-12-01,unemploy,6518.0,0.30259730007105073\\n2555,1989-01-01,unemploy,6682.0,0.3155443277808479\\n2556,1989-02-01,unemploy,6359.0,0.29004499881582063\\n2557,1989-03-01,unemploy,6205.0,0.2778874240151575\\n2558,1989-04-01,unemploy,6468.0,0.2986500355253809\\n2559,1989-05-01,unemploy,6375.0,0.291308123470435\\n2560,1989-06-01,unemploy,6577.0,0.3072550722349412\\n2561,1989-07-01,unemploy,6495.0,0.3007815583800426\\n2562,1989-08-01,unemploy,6511.0,0.302044683034657\\n2563,1989-09-01,unemploy,6590.0,0.30828136101681536\\n2564,1989-10-01,unemploy,6630.0,0.31143917265335125\\n2565,1989-11-01,unemploy,6725.0,0.31893897529012394\\n2566,1989-12-01,unemploy,6667.0,0.31436014841714693\\n2567,1990-01-01,unemploy,6752.0,0.32107049814478567\\n2568,1990-02-01,unemploy,6651.0,0.31309702376253257\\n2569,1990-03-01,unemploy,6598.0,0.3089129233441225\\n2570,1990-04-01,unemploy,6797.0,0.3246230362358885\\n2571,1990-05-01,unemploy,6742.0,0.3202810452356517\\n2572,1990-06-01,unemploy,6590.0,0.30828136101681536\\n2573,1990-07-01,unemploy,6922.0,0.3344911976000632\\n2574,1990-08-01,unemploy,7188.0,0.35549064498302674\\n2575,1990-09-01,unemploy,7368.0,0.3697007973474382\\n2576,1990-10-01,unemploy,7459.0,0.37688481882055735\\n2577,1990-11-01,unemploy,7764.0,0.40096313254914345\\n2578,1990-12-01,unemploy,7901.0,0.41177863740427884\\n2579,1991-01-01,unemploy,8015.0,0.4207784005684061\\n2580,1991-02-01,unemploy,8265.0,0.44051472329675534\\n2581,1991-03-01,unemploy,8586.0,0.4658561616799558\\n2582,1991-04-01,unemploy,8439.0,0.4542512039156864\\n2583,1991-05-01,unemploy,8736.0,0.47769795531696535\\n2584,1991-06-01,unemploy,8692.0,0.47422436251677585\\n2585,1991-07-01,unemploy,8586.0,0.4658561616799558\\n2586,1991-08-01,unemploy,8666.0,0.47217178495302753\\n2587,1991-09-01,unemploy,8722.0,0.4765927212441778\\n2588,1991-10-01,unemploy,8842.0,0.4860661561537854\\n2589,1991-11-01,unemploy,8931.0,0.49309228704507774\\n2590,1991-12-01,unemploy,9198.0,0.5141706797189548\\n2591,1992-01-01,unemploy,9283.0,0.5208810294465935\\n2592,1992-02-01,unemploy,9454.0,0.5343806741927845\\n2593,1992-03-01,unemploy,9460.0,0.5348543459382648\\n2594,1992-04-01,unemploy,9415.0,0.531301807847162\\n2595,1992-05-01,unemploy,9744.0,0.5572748085576695\\n2596,1992-06-01,unemploy,10040.0,0.580642614668035\\n2597,1992-07-01,unemploy,9850.0,0.5656430093944896\\n2598,1992-08-01,unemploy,9787.0,0.5606694560669456\\n2599,1992-09-01,unemploy,9781.0,0.5601957843214652\\n2600,1992-10-01,unemploy,9398.0,0.5299597379016342\\n2601,1992-11-01,unemploy,9565.0,0.5431436014841715\\n2602,1992-12-01,unemploy,9557.0,0.5425120391568643\\n2603,1993-01-01,unemploy,9325.0,0.5241967316649562\\n2604,1993-02-01,unemploy,9183.0,0.5129865003552538\\n2605,1993-03-01,unemploy,9056.0,0.5029604484092524\\n2606,1993-04-01,unemploy,9110.0,0.5072234941185758\\n2607,1993-05-01,unemploy,9149.0,0.5103023604641983\\n2608,1993-06-01,unemploy,9121.0,0.5080918923186232\\n2609,1993-07-01,unemploy,8930.0,0.4930133417541644\\n2610,1993-08-01,unemploy,8763.0,0.4798294781716271\\n2611,1993-09-01,unemploy,8714.0,0.47596115891687063\\n2612,1993-10-01,unemploy,8750.0,0.4788031893897529\\n2613,1993-11-01,unemploy,8542.0,0.4623825688797663\\n2614,1993-12-01,unemploy,8477.0,0.4572511249703955\\n2615,1994-01-01,unemploy,8630.0,0.46932975448014524\\n2616,1994-02-01,unemploy,8583.0,0.4656193258072156\\n2617,1994-03-01,unemploy,8470.0,0.45669850793400174\\n2618,1994-04-01,unemploy,8331.0,0.44572511249703956\\n2619,1994-05-01,unemploy,7915.0,0.4128838714770664\\n2620,1994-06-01,unemploy,7927.0,0.41383121496802716\\n2621,1994-07-01,unemploy,7946.0,0.4153311754953817\\n2622,1994-08-01,unemploy,7933.0,0.4143048867135075\\n2623,1994-09-01,unemploy,7734.0,0.3985947738217415\\n2624,1994-10-01,unemploy,7632.0,0.390542354148575\\n2625,1994-11-01,unemploy,7375.0,0.370253414383832\\n2626,1994-12-01,unemploy,7230.0,0.35880634720138943\\n2627,1995-01-01,unemploy,7375.0,0.370253414383832\\n2628,1995-02-01,unemploy,7187.0,0.3554116996921134\\n2629,1995-03-01,unemploy,7153.0,0.35272755980105786\\n2630,1995-04-01,unemploy,7645.0,0.3915686429304492\\n2631,1995-05-01,unemploy,7430.0,0.3745954053840688\\n2632,1995-06-01,unemploy,7427.0,0.3743585695113287\\n2633,1995-07-01,unemploy,7527.0,0.3822530986026684\\n2634,1995-08-01,unemploy,7484.0,0.3788584510933923\\n2635,1995-09-01,unemploy,7478.0,0.37838477934791187\\n2636,1995-10-01,unemploy,7328.0,0.3665429857109023\\n2637,1995-11-01,unemploy,7426.0,0.3742796242204153\\n2638,1995-12-01,unemploy,7423.0,0.37404278834767507\\n2639,1996-01-01,unemploy,7491.0,0.37941106812978603\\n2640,1996-02-01,unemploy,7313.0,0.3653588063472014\\n2641,1996-03-01,unemploy,7318.0,0.36575353280176837\\n2642,1996-04-01,unemploy,7415.0,0.37341122602036786\\n2643,1996-05-01,unemploy,7423.0,0.37404278834767507\\n2644,1996-06-01,unemploy,7095.0,0.34814873292808085\\n2645,1996-07-01,unemploy,7337.0,0.36725349332912294\\n2646,1996-08-01,unemploy,6882.0,0.3313333859635273\\n2647,1996-09-01,unemploy,6979.0,0.3389910791821268\\n2648,1996-10-01,unemploy,7031.0,0.34309623430962344\\n2649,1996-11-01,unemploy,7236.0,0.35928001894686984\\n2650,1996-12-01,unemploy,7253.0,0.36062208889239755\\n2651,1997-01-01,unemploy,7158.0,0.35312228625562486\\n2652,1997-02-01,unemploy,7102.0,0.3487013499644746\\n2653,1997-03-01,unemploy,7000.0,0.3406489302913081\\n2654,1997-04-01,unemploy,6873.0,0.3306228783453067\\n2655,1997-05-01,unemploy,6655.0,0.3134128049261862\\n2656,1997-06-01,unemploy,6799.0,0.3247809268177153\\n2657,1997-07-01,unemploy,6655.0,0.3134128049261862\\n2658,1997-08-01,unemploy,6608.0,0.3097023762532565\\n2659,1997-09-01,unemploy,6656.0,0.3134917502170996\\n2660,1997-10-01,unemploy,6454.0,0.2975448014525934\\n2661,1997-11-01,unemploy,6308.0,0.2860187889792374\\n2662,1997-12-01,unemploy,6476.0,0.2992815978526881\\n2663,1998-01-01,unemploy,6368.0,0.2907555064340412\\n2664,1998-02-01,unemploy,6306.0,0.2858608983974106\\n2665,1998-03-01,unemploy,6422.0,0.29501855214336464\\n2666,1998-04-01,unemploy,5941.0,0.2570458672140207\\n2667,1998-05-01,unemploy,6047.0,0.2654140680508408\\n2668,1998-06-01,unemploy,6212.0,0.2784400410515513\\n2669,1998-07-01,unemploy,6259.0,0.28215046972448093\\n2670,1998-08-01,unemploy,6179.0,0.27583484645140915\\n2671,1998-09-01,unemploy,6300.0,0.2853872266519302\\n2672,1998-10-01,unemploy,6280.0,0.28380832083366225\\n2673,1998-11-01,unemploy,6100.0,0.26959816846925083\\n2674,1998-12-01,unemploy,6032.0,0.2642298886871398\\n2675,1999-01-01,unemploy,5976.0,0.25980895239598956\\n2676,1999-02-01,unemploy,6111.0,0.2704665666692982\\n2677,1999-03-01,unemploy,5783.0,0.24457251124970394\\n2678,1999-04-01,unemploy,6004.0,0.2620194205415647\\n2679,1999-05-01,unemploy,5796.0,0.2455988000315781\\n2680,1999-06-01,unemploy,5951.0,0.25783532012315463\\n2681,1999-07-01,unemploy,6025.0,0.26367727165074606\\n2682,1999-08-01,unemploy,5838.0,0.2489145022499408\\n2683,1999-09-01,unemploy,5915.0,0.25499328965027235\\n2684,1999-10-01,unemploy,5778.0,0.24417778479513697\\n2685,1999-11-01,unemploy,5716.0,0.23928317675850636\\n2686,1999-12-01,unemploy,5653.0,0.23430962343096234\\n2687,2000-01-01,unemploy,5708.0,0.23865161443119917\\n2688,2000-02-01,unemploy,5858.0,0.25049340806820874\\n2689,2000-03-01,unemploy,5733.0,0.2406252467040341\\n2690,2000-04-01,unemploy,5481.0,0.22073103339385805\\n2691,2000-05-01,unemploy,5758.0,0.24259887897686902\\n2692,2000-06-01,unemploy,5651.0,0.23415173284913554\\n2693,2000-07-01,unemploy,5747.0,0.24173048077682166\\n2694,2000-08-01,unemploy,5853.0,0.25009868161364174\\n2695,2000-09-01,unemploy,5625.0,0.23209915528538722\\n2696,2000-10-01,unemploy,5534.0,0.2249151338122681\\n2697,2000-11-01,unemploy,5639.0,0.23320438935817478\\n2698,2000-12-01,unemploy,5634.0,0.2328096629036078\\n2699,2001-01-01,unemploy,6023.0,0.26351938106891926\\n2700,2001-02-01,unemploy,6089.0,0.2687297702692034\\n2701,2001-03-01,unemploy,6141.0,0.27283492539670007\\n2702,2001-04-01,unemploy,6271.0,0.2830978132154417\\n2703,2001-05-01,unemploy,6226.0,0.27954527512433885\\n2704,2001-06-01,unemploy,6484.0,0.29991316017999525\\n2705,2001-07-01,unemploy,6583.0,0.30772874398042155\\n2706,2001-08-01,unemploy,7042.0,0.3439646325096708\\n2707,2001-09-01,unemploy,7142.0,0.3518591616010105\\n2708,2001-10-01,unemploy,7694.0,0.39543696218520563\\n2709,2001-11-01,unemploy,8003.0,0.41983105707744534\\n2710,2001-12-01,unemploy,8258.0,0.4399621062603616\\n2711,2002-01-01,unemploy,8182.0,0.4339622641509434\\n2712,2002-02-01,unemploy,8215.0,0.4365674587510855\\n2713,2002-03-01,unemploy,8304.0,0.44359358964237783\\n2714,2002-04-01,unemploy,8599.0,0.46688245046182997\\n2715,2002-05-01,unemploy,8399.0,0.4510933922791506\\n2716,2002-06-01,unemploy,8393.0,0.45061972053367016\\n2717,2002-07-01,unemploy,8390.0,0.45038288466092996\\n2718,2002-08-01,unemploy,8304.0,0.44359358964237783\\n2719,2002-09-01,unemploy,8251.0,0.4394094892239678\\n2720,2002-10-01,unemploy,8307.0,0.44383042551511803\\n2721,2002-11-01,unemploy,8520.0,0.4606457724796716\\n2722,2002-12-01,unemploy,8640.0,0.4701192073892792\\n2723,2003-01-01,unemploy,8520.0,0.4606457724796716\\n2724,2003-02-01,unemploy,8618.0,0.4683824109891845\\n2725,2003-03-01,unemploy,8588.0,0.4660140522617826\\n2726,2003-04-01,unemploy,8842.0,0.4860661561537854\\n2727,2003-05-01,unemploy,8957.0,0.49514486460882606\\n2728,2003-06-01,unemploy,9266.0,0.5195389595010658\\n2729,2003-07-01,unemploy,9011.0,0.4994079103181495\\n2730,2003-08-01,unemploy,8896.0,0.49032920186310885\\n2731,2003-09-01,unemploy,8921.0,0.4923028341359438\\n2732,2003-10-01,unemploy,8732.0,0.47738217415331174\\n2733,2003-11-01,unemploy,8576.0,0.46506670877082185\\n2734,2003-12-01,unemploy,8317.0,0.444619878424252\\n2735,2004-01-01,unemploy,8370.0,0.44880397884266204\\n2736,2004-02-01,unemploy,8167.0,0.43277808478724245\\n2737,2004-03-01,unemploy,8491.0,0.45835635904318306\\n2738,2004-04-01,unemploy,8170.0,0.43301492065998265\\n2739,2004-05-01,unemploy,8212.0,0.4363306228783453\\n2740,2004-06-01,unemploy,8286.0,0.4421725744059367\\n2741,2004-07-01,unemploy,8136.0,0.4303307807689271\\n2742,2004-08-01,unemploy,7990.0,0.4188047682955712\\n2743,2004-09-01,unemploy,7927.0,0.41383121496802716\\n2744,2004-10-01,unemploy,8061.0,0.42440988395042234\\n2745,2004-11-01,unemploy,7932.0,0.41422594142259417\\n2746,2004-12-01,unemploy,7934.0,0.4143838320044209\\n2747,2005-01-01,unemploy,7784.0,0.40254203836741137\\n2748,2005-02-01,unemploy,7980.0,0.4180153153864372\\n2749,2005-03-01,unemploy,7737.0,0.3988316096944817\\n2750,2005-04-01,unemploy,7672.0,0.3937001657851109\\n2751,2005-05-01,unemploy,7651.0,0.3920423146759296\\n2752,2005-06-01,unemploy,7524.0,0.38201626272992817\\n2753,2005-07-01,unemploy,7406.0,0.3727007184021473\\n2754,2005-08-01,unemploy,7345.0,0.3678850556564301\\n2755,2005-09-01,unemploy,7553.0,0.3843056761664167\\n2756,2005-10-01,unemploy,7453.0,0.37641114707507695\\n2757,2005-11-01,unemploy,7566.0,0.38533196494829086\\n2758,2005-12-01,unemploy,7279.0,0.3626746664561459\\n2759,2006-01-01,unemploy,7064.0,0.3457014289097655\\n2760,2006-02-01,unemploy,7184.0,0.3551748638193732\\n2761,2006-03-01,unemploy,7072.0,0.34633299123707273\\n2762,2006-04-01,unemploy,7120.0,0.3501223652009158\\n2763,2006-05-01,unemploy,6980.0,0.3390700244730402\\n2764,2006-06-01,unemploy,7001.0,0.3407278755822215\\n2765,2006-07-01,unemploy,7175.0,0.3544643562011526\\n2766,2006-08-01,unemploy,7091.0,0.34783295176442725\\n2767,2006-09-01,unemploy,6847.0,0.32857030078155836\\n2768,2006-10-01,unemploy,6727.0,0.31909686587195074\\n2769,2006-11-01,unemploy,6872.0,0.3305439330543933\\n2770,2006-12-01,unemploy,6762.0,0.3218599510539196\\n2771,2007-01-01,unemploy,7116.0,0.34980658403726217\\n2772,2007-02-01,unemploy,6927.0,0.33488592405463014\\n2773,2007-03-01,unemploy,6731.0,0.31941264703560435\\n2774,2007-04-01,unemploy,6850.0,0.32880713665429856\\n2775,2007-05-01,unemploy,6766.0,0.32217573221757323\\n2776,2007-06-01,unemploy,6979.0,0.3389910791821268\\n2777,2007-07-01,unemploy,7149.0,0.3524117786374043\\n2778,2007-08-01,unemploy,7067.0,0.3459382647825057\\n2779,2007-09-01,unemploy,7170.0,0.3540696297465856\\n2780,2007-10-01,unemploy,7237.0,0.35935896423778324\\n2781,2007-11-01,unemploy,7240.0,0.3595958001105234\\n2782,2007-12-01,unemploy,7645.0,0.3915686429304492\\n2783,2008-01-01,unemploy,7685.0,0.3947264545669851\\n2784,2008-02-01,unemploy,7497.0,0.37988473987526644\\n2785,2008-03-01,unemploy,7822.0,0.40554195942212046\\n2786,2008-04-01,unemploy,7637.0,0.39093708060314203\\n2787,2008-05-01,unemploy,8395.0,0.45077761111549697\\n2788,2008-06-01,unemploy,8575.0,0.46498776347990844\\n2789,2008-07-01,unemploy,8937.0,0.49356595879055815\\n2790,2008-08-01,unemploy,9438.0,0.53311754953817\\n2791,2008-09-01,unemploy,9494.0,0.5375384858293203\\n2792,2008-10-01,unemploy,10074.0,0.5833267545590906\\n2793,2008-11-01,unemploy,10538.0,0.6199573695429068\\n2794,2008-12-01,unemploy,11286.0,0.6790084471461277\\n2795,2009-01-01,unemploy,12058.0,0.7399542117312702\\n2796,2009-02-01,unemploy,12898.0,0.8062682560985237\\n2797,2009-03-01,unemploy,13426.0,0.8479513697007973\\n2798,2009-04-01,unemploy,13853.0,0.8816610089208179\\n2799,2009-05-01,unemploy,14499.0,0.9326596668508723\\n2800,2009-06-01,unemploy,14707.0,0.9490802873608589\\n2801,2009-07-01,unemploy,14601.0,0.9407120865240388\\n2802,2009-08-01,unemploy,14814.0,0.9575274334885924\\n2803,2009-09-01,unemploy,15009.0,0.9729217652167048\\n2804,2009-10-01,unemploy,15352.0,1.0\\n2805,2009-11-01,unemploy,15219.0,0.9895002763085182\\n2806,2009-12-01,unemploy,15098.0,0.9799478961079972\\n2807,2010-01-01,unemploy,15046.0,0.9758427409805005\\n2808,2010-02-01,unemploy,15113.0,0.9811320754716981\\n2809,2010-03-01,unemploy,15202.0,0.9881582063629905\\n2810,2010-04-01,unemploy,15325.0,0.9978684771453383\\n2811,2010-05-01,unemploy,14849.0,0.9602905186705613\\n2812,2010-06-01,unemploy,14474.0,0.9306860345780374\\n2813,2010-07-01,unemploy,14512.0,0.9336859556327465\\n2814,2010-08-01,unemploy,14648.0,0.9444225151969685\\n2815,2010-09-01,unemploy,14579.0,0.9389752901239441\\n2816,2010-10-01,unemploy,14516.0,0.9340017367964001\\n2817,2010-11-01,unemploy,15081.0,0.9786058261624694\\n2818,2010-12-01,unemploy,14348.0,0.9207389279229494\\n2819,2011-01-01,unemploy,14013.0,0.8942922554669614\\n2820,2011-02-01,unemploy,13820.0,0.8790558143206758\\n2821,2011-03-01,unemploy,13737.0,0.8725033551748638\\n2822,2011-04-01,unemploy,13957.0,0.8898713191758112\\n2823,2011-05-01,unemploy,13855.0,0.8818188995026447\\n2824,2011-06-01,unemploy,13962.0,0.8902660456303781\\n2825,2011-07-01,unemploy,13763.0,0.8745559327386121\\n2826,2011-08-01,unemploy,13818.0,0.878897923738849\\n2827,2011-09-01,unemploy,13948.0,0.8891608115575906\\n2828,2011-10-01,unemploy,13594.0,0.8612141785742481\\n2829,2011-11-01,unemploy,13302.0,0.8381621536275361\\n2830,2011-12-01,unemploy,13093.0,0.8216625878266361\\n2831,2012-01-01,unemploy,12797.0,0.7982947817162707\\n2832,2012-02-01,unemploy,12813.0,0.799557906370885\\n2833,2012-03-01,unemploy,12713.0,0.7916633772795453\\n2834,2012-04-01,unemploy,12646.0,0.7863740427883477\\n2835,2012-05-01,unemploy,12660.0,0.7874792768611353\\n2836,2012-06-01,unemploy,12692.0,0.7900055261703639\\n2837,2012-07-01,unemploy,12656.0,0.7871634956974817\\n2838,2012-08-01,unemploy,12471.0,0.7725586168785032\\n2839,2012-09-01,unemploy,12115.0,0.7444540933133339\\n2840,2012-10-01,unemploy,12124.0,0.7451646009315545\\n2841,2012-11-01,unemploy,12005.0,0.7357701113128602\\n2842,2012-12-01,unemploy,12298.0,0.7589010815504855\\n2843,2013-01-01,unemploy,12471.0,0.7725586168785032\\n2844,2013-02-01,unemploy,11950.0,0.7314281203126234\\n2845,2013-03-01,unemploy,11689.0,0.7108233993842268\\n2846,2013-04-01,unemploy,11760.0,0.7164285150390779\\n2847,2013-05-01,unemploy,11654.0,0.7080603142022578\\n2848,2013-06-01,unemploy,11751.0,0.7157180074208573\\n2849,2013-07-01,unemploy,11335.0,0.6828767664008842\\n2850,2013-08-01,unemploy,11279.0,0.678455830109734\\n2851,2013-09-01,unemploy,11270.0,0.6777453224915134\\n2852,2013-10-01,unemploy,11136.0,0.6671666535091182\\n2853,2013-11-01,unemploy,10787.0,0.6396147469803426\\n2854,2013-12-01,unemploy,10404.0,0.6093787005605116\\n2855,2014-01-01,unemploy,10202.0,0.5934317517960054\\n2856,2014-02-01,unemploy,10349.0,0.6050367095602748\\n2857,2014-03-01,unemploy,10380.0,0.60748401357859\\n2858,2014-04-01,unemploy,9702.0,0.5539591063393069\\n2859,2014-05-01,unemploy,9859.0,0.5663535170127102\\n2860,2014-06-01,unemploy,9460.0,0.5348543459382648\\n2861,2014-07-01,unemploy,9608.0,0.5465382489934475\\n2862,2014-08-01,unemploy,9599.0,0.5458277413752269\\n2863,2014-09-01,unemploy,9262.0,0.5192231783374122\\n2864,2014-10-01,unemploy,8990.0,0.4977500592089682\\n2865,2014-11-01,unemploy,9090.0,0.5056445883003079\\n2866,2014-12-01,unemploy,8717.0,0.4761979947896108\\n2867,2015-01-01,unemploy,8903.0,0.49088181889950266\\n2868,2015-02-01,unemploy,8610.0,0.4677508486618773\\n2869,2015-03-01,unemploy,8504.0,0.4593826478250572\\n2870,2015-04-01,unemploy,8526.0,0.46111944422515194\\n\",\n :format {:type \"csv\"}}}\n {:mark {:type \"circle\", :color \"green\", :size 200, :tooltip true},\n :encoding\n {:x {:field :date, :type :temporal},\n :y {:field :value, :type :quantitative}},\n :data\n {:values\n \"rownames,date,variable,value,value01\\n2851,2013-09-01,unemploy,11270.0,0.6777453224915134\\n2833,2012-03-01,unemploy,12713.0,0.7916633772795453\\n2636,1995-10-01,unemploy,7328.0,0.3665429857109023\\n2419,1977-09-01,unemploy,6751.0,0.32099155285387226\\n2574,1990-08-01,unemploy,7188.0,0.35549064498302674\\n\",\n :format {:type \"csv\"}}}],\n :height 300,\n :data\n {:values\n \"rownames,date,variable,value,value01\\n2297,1967-07-01,unemploy,2944.0,0.020446830346569828\\n2298,1967-08-01,unemploy,2945.0,0.020525775637483226\\n2299,1967-09-01,unemploy,2958.0,0.021552064419357385\\n2300,1967-10-01,unemploy,3143.0,0.036156943238335834\\n2301,1967-11-01,unemploy,3066.0,0.030078155838004262\\n2302,1967-12-01,unemploy,3018.0,0.026288781874161206\\n2303,1968-01-01,unemploy,2878.0,0.015236441146285624\\n2304,1968-02-01,unemploy,3001.0,0.024946711928633458\\n2305,1968-03-01,unemploy,2877.0,0.015157495855372228\\n2306,1968-04-01,unemploy,2709.0,0.0018946869819215285\\n2307,1968-05-01,unemploy,2740.0,0.004341991000236836\\n2308,1968-06-01,unemploy,2938.0,0.019973158601089443\\n2309,1968-07-01,unemploy,2883.0,0.01563116760085261\\n2310,1968-08-01,unemploy,2768.0,0.006552459145811952\\n2311,1968-09-01,unemploy,2686.0,7.894529091339702E-5\\n2312,1968-10-01,unemploy,2689.0,3.157811636535881E-4\\n2313,1968-11-01,unemploy,2715.0,0.0023683587274019105\\n2314,1968-12-01,unemploy,2685.0,0.0\\n2315,1969-01-01,unemploy,2718.0,0.0026051946001421017\\n2316,1969-02-01,unemploy,2692.0,5.526170363937791E-4\\n2317,1969-03-01,unemploy,2712.0,0.0021315228546617193\\n2318,1969-04-01,unemploy,2758.0,0.005763006236677982\\n2319,1969-05-01,unemploy,2713.0,0.0022104681455751164\\n2320,1969-06-01,unemploy,2816.0,0.010341833109655009\\n2321,1969-07-01,unemploy,2868.0,0.014446988237151653\\n2322,1969-08-01,unemploy,2856.0,0.01349964474619089\\n2323,1969-09-01,unemploy,3040.0,0.02802557827425594\\n2324,1969-10-01,unemploy,3049.0,0.028736085892476514\\n2325,1969-11-01,unemploy,2856.0,0.01349964474619089\\n2326,1969-12-01,unemploy,2884.0,0.015710112891766007\\n2327,1970-01-01,unemploy,3201.0,0.04073577011131286\\n2328,1970-02-01,unemploy,3453.0,0.06062998342148891\\n2329,1970-03-01,unemploy,3635.0,0.07499802636772716\\n2330,1970-04-01,unemploy,3797.0,0.08778716349569748\\n2331,1970-05-01,unemploy,3919.0,0.09741848898713192\\n2332,1970-06-01,unemploy,4071.0,0.10941817320596826\\n2333,1970-07-01,unemploy,4175.0,0.11762848346096155\\n2334,1970-08-01,unemploy,4256.0,0.1240230520249467\\n2335,1970-09-01,unemploy,4456.0,0.13981211020762613\\n2336,1970-10-01,unemploy,4591.0,0.1504697244809347\\n2337,1970-11-01,unemploy,4898.0,0.1747059287913476\\n2338,1970-12-01,unemploy,5076.0,0.18875819057393226\\n2339,1971-01-01,unemploy,4986.0,0.18165311439172654\\n2340,1971-02-01,unemploy,4903.0,0.1751006552459146\\n2341,1971-03-01,unemploy,4987.0,0.18173205968263992\\n2342,1971-04-01,unemploy,4959.0,0.17952159153706482\\n2343,1971-05-01,unemploy,4996.0,0.1824425673008605\\n2344,1971-06-01,unemploy,4949.0,0.17873213862793083\\n2345,1971-07-01,unemploy,5035.0,0.185521433646483\\n2346,1971-08-01,unemploy,5134.0,0.1933370174469093\\n2347,1971-09-01,unemploy,5042.0,0.18607405068287677\\n2348,1971-10-01,unemploy,4954.0,0.17912686508249784\\n2349,1971-11-01,unemploy,5161.0,0.19546854030157101\\n2350,1971-12-01,unemploy,5154.0,0.19491592326517723\\n2351,1972-01-01,unemploy,5019.0,0.18425830899186862\\n2352,1972-02-01,unemploy,4928.0,0.1770742875187495\\n2353,1972-03-01,unemploy,5038.0,0.18575826951922317\\n2354,1972-04-01,unemploy,4959.0,0.17952159153706482\\n2355,1972-05-01,unemploy,4922.0,0.17660061577326913\\n2356,1972-06-01,unemploy,4923.0,0.17667956106418253\\n2357,1972-07-01,unemploy,4913.0,0.17589010815504855\\n2358,1972-08-01,unemploy,4939.0,0.17794268571879687\\n2359,1972-09-01,unemploy,4849.0,0.17083760953659113\\n2360,1972-10-01,unemploy,4875.0,0.17289018710033946\\n2361,1972-11-01,unemploy,4602.0,0.15133812268098207\\n2362,1972-12-01,unemploy,4543.0,0.14668035051709166\\n2363,1973-01-01,unemploy,4326.0,0.1295492223888845\\n2364,1973-02-01,unemploy,4452.0,0.13949632904397252\\n2365,1973-03-01,unemploy,4394.0,0.1349175021709955\\n2366,1973-04-01,unemploy,4459.0,0.1400489460803663\\n2367,1973-05-01,unemploy,4329.0,0.1297860582616247\\n2368,1973-06-01,unemploy,4363.0,0.13247019815268019\\n2369,1973-07-01,unemploy,4305.0,0.12789137127970315\\n2370,1973-08-01,unemploy,4305.0,0.12789137127970315\\n2371,1973-09-01,unemploy,4350.0,0.13144390937080602\\n2372,1973-10-01,unemploy,4144.0,0.11518117944264625\\n2373,1973-11-01,unemploy,4396.0,0.1350753927528223\\n2374,1973-12-01,unemploy,4489.0,0.1424173048077682\\n2375,1974-01-01,unemploy,4644.0,0.15465382489934476\\n2376,1974-02-01,unemploy,4731.0,0.1615220652088103\\n2377,1974-03-01,unemploy,4634.0,0.15386437199021077\\n2378,1974-04-01,unemploy,4618.0,0.15260124733559643\\n2379,1974-05-01,unemploy,4705.0,0.15946948764506197\\n2380,1974-06-01,unemploy,4927.0,0.1769953422278361\\n2381,1974-07-01,unemploy,5063.0,0.1877319017920581\\n2382,1974-08-01,unemploy,5022.0,0.18449514486460883\\n2383,1974-09-01,unemploy,5437.0,0.21725744059366858\\n2384,1974-10-01,unemploy,5523.0,0.22404673561222074\\n2385,1974-11-01,unemploy,6140.0,0.27275598010578667\\n2386,1974-12-01,unemploy,6636.0,0.3119128443988316\\n2387,1975-01-01,unemploy,7501.0,0.38020052103892005\\n2388,1975-02-01,unemploy,7520.0,0.38170048156627456\\n2389,1975-03-01,unemploy,7978.0,0.4178574248046104\\n2390,1975-04-01,unemploy,8210.0,0.43617273229651854\\n2391,1975-05-01,unemploy,8433.0,0.45377753217020605\\n2392,1975-06-01,unemploy,8220.0,0.4369621852056525\\n2393,1975-07-01,unemploy,8127.0,0.42962027315070656\\n2394,1975-08-01,unemploy,7928.0,0.41391016025894056\\n2395,1975-09-01,unemploy,7923.0,0.41351543380437356\\n2396,1975-10-01,unemploy,7897.0,0.41146285624062523\\n2397,1975-11-01,unemploy,7794.0,0.40333149127654533\\n2398,1975-12-01,unemploy,7744.0,0.3993842267308755\\n2399,1976-01-01,unemploy,7534.0,0.3828057156390621\\n2400,1976-02-01,unemploy,7326.0,0.3663850951290756\\n2401,1976-03-01,unemploy,7230.0,0.35880634720138943\\n2402,1976-04-01,unemploy,7330.0,0.3667008762927291\\n2403,1976-05-01,unemploy,7053.0,0.34483303070971816\\n2404,1976-06-01,unemploy,7322.0,0.36606931396542197\\n2405,1976-07-01,unemploy,7490.0,0.3793321228388727\\n2406,1976-08-01,unemploy,7518.0,0.38154259098444776\\n2407,1976-09-01,unemploy,7380.0,0.370648140838399\\n2408,1976-10-01,unemploy,7430.0,0.3745954053840688\\n2409,1976-11-01,unemploy,7620.0,0.38959501065761426\\n2410,1976-12-01,unemploy,7545.0,0.3836741138391095\\n2411,1977-01-01,unemploy,7280.0,0.3627536117470593\\n2412,1977-02-01,unemploy,7443.0,0.375621694165943\\n2413,1977-03-01,unemploy,7307.0,0.364885134601721\\n2414,1977-04-01,unemploy,7059.0,0.34530670245519857\\n2415,1977-05-01,unemploy,6911.0,0.33362279940001577\\n2416,1977-06-01,unemploy,7134.0,0.35122759927370334\\n2417,1977-07-01,unemploy,6829.0,0.32714928554511724\\n2418,1977-08-01,unemploy,6925.0,0.33472803347280333\\n2419,1977-09-01,unemploy,6751.0,0.32099155285387226\\n2420,1977-10-01,unemploy,6763.0,0.321938896344833\\n2421,1977-11-01,unemploy,6815.0,0.3260440514723297\\n2422,1977-12-01,unemploy,6386.0,0.29217652167048236\\n2423,1978-01-01,unemploy,6489.0,0.30030788663456226\\n2424,1978-02-01,unemploy,6318.0,0.28680824188837134\\n2425,1978-03-01,unemploy,6337.0,0.2883082024157259\\n2426,1978-04-01,unemploy,6180.0,0.27591379174232256\\n2427,1978-05-01,unemploy,6127.0,0.2717296913239125\\n2428,1978-06-01,unemploy,6028.0,0.2639141075234862\\n2429,1978-07-01,unemploy,6309.0,0.2860977342701508\\n2430,1978-08-01,unemploy,6080.0,0.26801926265098286\\n2431,1978-09-01,unemploy,6125.0,0.27157180074208576\\n2432,1978-10-01,unemploy,5947.0,0.2575195389595011\\n2433,1978-11-01,unemploy,6077.0,0.26778242677824265\\n2434,1978-12-01,unemploy,6228.0,0.2797031657061656\\n2435,1979-01-01,unemploy,6109.0,0.2703086760874714\\n2436,1979-02-01,unemploy,6173.0,0.2753611747059288\\n2437,1979-03-01,unemploy,6109.0,0.2703086760874714\\n2438,1979-04-01,unemploy,6069.0,0.2671508644509355\\n2439,1979-05-01,unemploy,5840.0,0.24907239283176758\\n2440,1979-06-01,unemploy,5959.0,0.25846688245046184\\n2441,1979-07-01,unemploy,5996.0,0.26138785821425753\\n2442,1979-08-01,unemploy,6320.0,0.28696613247019814\\n2443,1979-09-01,unemploy,6190.0,0.2767032446514565\\n2444,1979-10-01,unemploy,6296.0,0.2850714454882766\\n2445,1979-11-01,unemploy,6238.0,0.2804926186152996\\n2446,1979-12-01,unemploy,6325.0,0.28736085892476515\\n2447,1980-01-01,unemploy,6683.0,0.31562327307176125\\n2448,1980-02-01,unemploy,6702.0,0.3171232335991158\\n2449,1980-03-01,unemploy,6729.0,0.31925475645377754\\n2450,1980-04-01,unemploy,7358.0,0.36891134443830426\\n2451,1980-05-01,unemploy,7984.0,0.41833109655009076\\n2452,1980-06-01,unemploy,8098.0,0.427330859714218\\n2453,1980-07-01,unemploy,8363.0,0.44825136180626823\\n2454,1980-08-01,unemploy,8281.0,0.4417778479513697\\n2455,1980-09-01,unemploy,8021.0,0.42125207231388645\\n2456,1980-10-01,unemploy,8088.0,0.42654140680508407\\n2457,1980-11-01,unemploy,8023.0,0.42140996289571325\\n2458,1980-12-01,unemploy,7718.0,0.39733164916712715\\n2459,1981-01-01,unemploy,8071.0,0.42519933685955635\\n2460,1981-02-01,unemploy,8051.0,0.4236204310412884\\n2461,1981-03-01,unemploy,7982.0,0.418173205968264\\n2462,1981-04-01,unemploy,7869.0,0.40925238809505016\\n2463,1981-05-01,unemploy,8174.0,0.4333307018236362\\n2464,1981-06-01,unemploy,8098.0,0.427330859714218\\n2465,1981-07-01,unemploy,7863.0,0.40877871634956975\\n2466,1981-08-01,unemploy,8036.0,0.4224362516775874\\n2467,1981-09-01,unemploy,8230.0,0.43775163811478646\\n2468,1981-10-01,unemploy,8646.0,0.4705928791347596\\n2469,1981-11-01,unemploy,9029.0,0.5008289255545907\\n2470,1981-12-01,unemploy,9267.0,0.5196179047919791\\n2471,1982-01-01,unemploy,9397.0,0.5298807926107207\\n2472,1982-02-01,unemploy,9705.0,0.554195942212047\\n2473,1982-03-01,unemploy,9895.0,0.5691955474855925\\n2474,1982-04-01,unemploy,10244.0,0.596747454014368\\n2475,1982-05-01,unemploy,10335.0,0.6039314754874872\\n2476,1982-06-01,unemploy,10538.0,0.6199573695429068\\n2477,1982-07-01,unemploy,10849.0,0.6445093550169733\\n2478,1982-08-01,unemploy,10881.0,0.647035604326202\\n2479,1982-09-01,unemploy,11217.0,0.6735612220731033\\n2480,1982-10-01,unemploy,11529.0,0.6981921528380832\\n2481,1982-11-01,unemploy,11938.0,0.7304807768216626\\n2482,1982-12-01,unemploy,12051.0,0.7394015946948764\\n2483,1983-01-01,unemploy,11534.0,0.6985868792926502\\n2484,1983-02-01,unemploy,11545.0,0.6994552774926975\\n2485,1983-03-01,unemploy,11408.0,0.6886397726375622\\n2486,1983-04-01,unemploy,11268.0,0.6775874319096866\\n2487,1983-05-01,unemploy,11154.0,0.6685876687455593\\n2488,1983-06-01,unemploy,11246.0,0.6758506355095919\\n2489,1983-07-01,unemploy,10548.0,0.6207468224520407\\n2490,1983-08-01,unemploy,10623.0,0.6266677192705455\\n2491,1983-09-01,unemploy,10282.0,0.5997473750690772\\n2492,1983-10-01,unemploy,9887.0,0.5685639851582853\\n2493,1983-11-01,unemploy,9499.0,0.5379332122838872\\n2494,1983-12-01,unemploy,9331.0,0.5246704034104366\\n2495,1984-01-01,unemploy,9008.0,0.4991710744454093\\n2496,1984-02-01,unemploy,8791.0,0.4820399463172022\\n2497,1984-03-01,unemploy,8746.0,0.4784874082260993\\n2498,1984-04-01,unemploy,8762.0,0.4797505328807137\\n2499,1984-05-01,unemploy,8456.0,0.4555932738612142\\n2500,1984-06-01,unemploy,8226.0,0.43743585695113285\\n2501,1984-07-01,unemploy,8537.0,0.46198784242519936\\n2502,1984-08-01,unemploy,8519.0,0.4605668271887582\\n2503,1984-09-01,unemploy,8367.0,0.44856714296992184\\n2504,1984-10-01,unemploy,8381.0,0.4496723770427094\\n2505,1984-11-01,unemploy,8198.0,0.4352253888055577\\n2506,1984-12-01,unemploy,8358.0,0.4478566353517013\\n2507,1985-01-01,unemploy,8423.0,0.4529880792610721\\n2508,1985-02-01,unemploy,8321.0,0.4449356595879056\\n2509,1985-03-01,unemploy,8339.0,0.4463566748243467\\n2510,1985-04-01,unemploy,8395.0,0.45077761111549697\\n2511,1985-05-01,unemploy,8302.0,0.443435699060551\\n2512,1985-06-01,unemploy,8460.0,0.4559090550248678\\n2513,1985-07-01,unemploy,8513.0,0.46009315544327783\\n2514,1985-08-01,unemploy,8196.0,0.435067498223731\\n2515,1985-09-01,unemploy,8248.0,0.4391726533512276\\n2516,1985-10-01,unemploy,8298.0,0.4431199178968975\\n2517,1985-11-01,unemploy,8128.0,0.42969921844161996\\n2518,1985-12-01,unemploy,8138.0,0.4304886713507539\\n2519,1986-01-01,unemploy,7795.0,0.40341043656745873\\n2520,1986-02-01,unemploy,8402.0,0.4513302281518907\\n2521,1986-03-01,unemploy,8383.0,0.4498302676245362\\n2522,1986-04-01,unemploy,8364.0,0.44833030709718164\\n2523,1986-05-01,unemploy,8439.0,0.4542512039156864\\n2524,1986-06-01,unemploy,8508.0,0.4596984289887108\\n2525,1986-07-01,unemploy,8319.0,0.4447777690060788\\n2526,1986-08-01,unemploy,8135.0,0.4302518354780137\\n2527,1986-09-01,unemploy,8310.0,0.44406726138785824\\n2528,1986-10-01,unemploy,8243.0,0.4387779268966606\\n2529,1986-11-01,unemploy,8159.0,0.4321465224599353\\n2530,1986-12-01,unemploy,7883.0,0.41035762216783767\\n2531,1987-01-01,unemploy,7892.0,0.4110681297860583\\n2532,1987-02-01,unemploy,7865.0,0.40893660693139655\\n2533,1987-03-01,unemploy,7862.0,0.40869977105865635\\n2534,1987-04-01,unemploy,7542.0,0.3834372779663693\\n2535,1987-05-01,unemploy,7574.0,0.385963527275598\\n2536,1987-06-01,unemploy,7398.0,0.37206915607484015\\n2537,1987-07-01,unemploy,7268.0,0.3618062682560985\\n2538,1987-08-01,unemploy,7261.0,0.36125365121970476\\n2539,1987-09-01,unemploy,7102.0,0.3487013499644746\\n2540,1987-10-01,unemploy,7227.0,0.3585695113286492\\n2541,1987-11-01,unemploy,7035.0,0.34341201547327704\\n2542,1987-12-01,unemploy,6936.0,0.3355964316728507\\n2543,1988-01-01,unemploy,6953.0,0.33693850161837846\\n2544,1988-02-01,unemploy,6929.0,0.33504381463645694\\n2545,1988-03-01,unemploy,6876.0,0.3308597142180469\\n2546,1988-04-01,unemploy,6601.0,0.3091497592168627\\n2547,1988-05-01,unemploy,6779.0,0.3232020209994474\\n2548,1988-06-01,unemploy,6546.0,0.30480776821662586\\n2549,1988-07-01,unemploy,6605.0,0.3094655403805163\\n2550,1988-08-01,unemploy,6843.0,0.3282545196179048\\n2551,1988-09-01,unemploy,6604.0,0.3093865950896029\\n2552,1988-10-01,unemploy,6568.0,0.30654456461672064\\n2553,1988-11-01,unemploy,6537.0,0.3040972605984053\\n2554,1988-12-01,unemploy,6518.0,0.30259730007105073\\n2555,1989-01-01,unemploy,6682.0,0.3155443277808479\\n2556,1989-02-01,unemploy,6359.0,0.29004499881582063\\n2557,1989-03-01,unemploy,6205.0,0.2778874240151575\\n2558,1989-04-01,unemploy,6468.0,0.2986500355253809\\n2559,1989-05-01,unemploy,6375.0,0.291308123470435\\n2560,1989-06-01,unemploy,6577.0,0.3072550722349412\\n2561,1989-07-01,unemploy,6495.0,0.3007815583800426\\n2562,1989-08-01,unemploy,6511.0,0.302044683034657\\n2563,1989-09-01,unemploy,6590.0,0.30828136101681536\\n2564,1989-10-01,unemploy,6630.0,0.31143917265335125\\n2565,1989-11-01,unemploy,6725.0,0.31893897529012394\\n2566,1989-12-01,unemploy,6667.0,0.31436014841714693\\n2567,1990-01-01,unemploy,6752.0,0.32107049814478567\\n2568,1990-02-01,unemploy,6651.0,0.31309702376253257\\n2569,1990-03-01,unemploy,6598.0,0.3089129233441225\\n2570,1990-04-01,unemploy,6797.0,0.3246230362358885\\n2571,1990-05-01,unemploy,6742.0,0.3202810452356517\\n2572,1990-06-01,unemploy,6590.0,0.30828136101681536\\n2573,1990-07-01,unemploy,6922.0,0.3344911976000632\\n2574,1990-08-01,unemploy,7188.0,0.35549064498302674\\n2575,1990-09-01,unemploy,7368.0,0.3697007973474382\\n2576,1990-10-01,unemploy,7459.0,0.37688481882055735\\n2577,1990-11-01,unemploy,7764.0,0.40096313254914345\\n2578,1990-12-01,unemploy,7901.0,0.41177863740427884\\n2579,1991-01-01,unemploy,8015.0,0.4207784005684061\\n2580,1991-02-01,unemploy,8265.0,0.44051472329675534\\n2581,1991-03-01,unemploy,8586.0,0.4658561616799558\\n2582,1991-04-01,unemploy,8439.0,0.4542512039156864\\n2583,1991-05-01,unemploy,8736.0,0.47769795531696535\\n2584,1991-06-01,unemploy,8692.0,0.47422436251677585\\n2585,1991-07-01,unemploy,8586.0,0.4658561616799558\\n2586,1991-08-01,unemploy,8666.0,0.47217178495302753\\n2587,1991-09-01,unemploy,8722.0,0.4765927212441778\\n2588,1991-10-01,unemploy,8842.0,0.4860661561537854\\n2589,1991-11-01,unemploy,8931.0,0.49309228704507774\\n2590,1991-12-01,unemploy,9198.0,0.5141706797189548\\n2591,1992-01-01,unemploy,9283.0,0.5208810294465935\\n2592,1992-02-01,unemploy,9454.0,0.5343806741927845\\n2593,1992-03-01,unemploy,9460.0,0.5348543459382648\\n2594,1992-04-01,unemploy,9415.0,0.531301807847162\\n2595,1992-05-01,unemploy,9744.0,0.5572748085576695\\n2596,1992-06-01,unemploy,10040.0,0.580642614668035\\n2597,1992-07-01,unemploy,9850.0,0.5656430093944896\\n2598,1992-08-01,unemploy,9787.0,0.5606694560669456\\n2599,1992-09-01,unemploy,9781.0,0.5601957843214652\\n2600,1992-10-01,unemploy,9398.0,0.5299597379016342\\n2601,1992-11-01,unemploy,9565.0,0.5431436014841715\\n2602,1992-12-01,unemploy,9557.0,0.5425120391568643\\n2603,1993-01-01,unemploy,9325.0,0.5241967316649562\\n2604,1993-02-01,unemploy,9183.0,0.5129865003552538\\n2605,1993-03-01,unemploy,9056.0,0.5029604484092524\\n2606,1993-04-01,unemploy,9110.0,0.5072234941185758\\n2607,1993-05-01,unemploy,9149.0,0.5103023604641983\\n2608,1993-06-01,unemploy,9121.0,0.5080918923186232\\n2609,1993-07-01,unemploy,8930.0,0.4930133417541644\\n2610,1993-08-01,unemploy,8763.0,0.4798294781716271\\n2611,1993-09-01,unemploy,8714.0,0.47596115891687063\\n2612,1993-10-01,unemploy,8750.0,0.4788031893897529\\n2613,1993-11-01,unemploy,8542.0,0.4623825688797663\\n2614,1993-12-01,unemploy,8477.0,0.4572511249703955\\n2615,1994-01-01,unemploy,8630.0,0.46932975448014524\\n2616,1994-02-01,unemploy,8583.0,0.4656193258072156\\n2617,1994-03-01,unemploy,8470.0,0.45669850793400174\\n2618,1994-04-01,unemploy,8331.0,0.44572511249703956\\n2619,1994-05-01,unemploy,7915.0,0.4128838714770664\\n2620,1994-06-01,unemploy,7927.0,0.41383121496802716\\n2621,1994-07-01,unemploy,7946.0,0.4153311754953817\\n2622,1994-08-01,unemploy,7933.0,0.4143048867135075\\n2623,1994-09-01,unemploy,7734.0,0.3985947738217415\\n2624,1994-10-01,unemploy,7632.0,0.390542354148575\\n2625,1994-11-01,unemploy,7375.0,0.370253414383832\\n2626,1994-12-01,unemploy,7230.0,0.35880634720138943\\n2627,1995-01-01,unemploy,7375.0,0.370253414383832\\n2628,1995-02-01,unemploy,7187.0,0.3554116996921134\\n2629,1995-03-01,unemploy,7153.0,0.35272755980105786\\n2630,1995-04-01,unemploy,7645.0,0.3915686429304492\\n2631,1995-05-01,unemploy,7430.0,0.3745954053840688\\n2632,1995-06-01,unemploy,7427.0,0.3743585695113287\\n2633,1995-07-01,unemploy,7527.0,0.3822530986026684\\n2634,1995-08-01,unemploy,7484.0,0.3788584510933923\\n2635,1995-09-01,unemploy,7478.0,0.37838477934791187\\n2636,1995-10-01,unemploy,7328.0,0.3665429857109023\\n2637,1995-11-01,unemploy,7426.0,0.3742796242204153\\n2638,1995-12-01,unemploy,7423.0,0.37404278834767507\\n2639,1996-01-01,unemploy,7491.0,0.37941106812978603\\n2640,1996-02-01,unemploy,7313.0,0.3653588063472014\\n2641,1996-03-01,unemploy,7318.0,0.36575353280176837\\n2642,1996-04-01,unemploy,7415.0,0.37341122602036786\\n2643,1996-05-01,unemploy,7423.0,0.37404278834767507\\n2644,1996-06-01,unemploy,7095.0,0.34814873292808085\\n2645,1996-07-01,unemploy,7337.0,0.36725349332912294\\n2646,1996-08-01,unemploy,6882.0,0.3313333859635273\\n2647,1996-09-01,unemploy,6979.0,0.3389910791821268\\n2648,1996-10-01,unemploy,7031.0,0.34309623430962344\\n2649,1996-11-01,unemploy,7236.0,0.35928001894686984\\n2650,1996-12-01,unemploy,7253.0,0.36062208889239755\\n2651,1997-01-01,unemploy,7158.0,0.35312228625562486\\n2652,1997-02-01,unemploy,7102.0,0.3487013499644746\\n2653,1997-03-01,unemploy,7000.0,0.3406489302913081\\n2654,1997-04-01,unemploy,6873.0,0.3306228783453067\\n2655,1997-05-01,unemploy,6655.0,0.3134128049261862\\n2656,1997-06-01,unemploy,6799.0,0.3247809268177153\\n2657,1997-07-01,unemploy,6655.0,0.3134128049261862\\n2658,1997-08-01,unemploy,6608.0,0.3097023762532565\\n2659,1997-09-01,unemploy,6656.0,0.3134917502170996\\n2660,1997-10-01,unemploy,6454.0,0.2975448014525934\\n2661,1997-11-01,unemploy,6308.0,0.2860187889792374\\n2662,1997-12-01,unemploy,6476.0,0.2992815978526881\\n2663,1998-01-01,unemploy,6368.0,0.2907555064340412\\n2664,1998-02-01,unemploy,6306.0,0.2858608983974106\\n2665,1998-03-01,unemploy,6422.0,0.29501855214336464\\n2666,1998-04-01,unemploy,5941.0,0.2570458672140207\\n2667,1998-05-01,unemploy,6047.0,0.2654140680508408\\n2668,1998-06-01,unemploy,6212.0,0.2784400410515513\\n2669,1998-07-01,unemploy,6259.0,0.28215046972448093\\n2670,1998-08-01,unemploy,6179.0,0.27583484645140915\\n2671,1998-09-01,unemploy,6300.0,0.2853872266519302\\n2672,1998-10-01,unemploy,6280.0,0.28380832083366225\\n2673,1998-11-01,unemploy,6100.0,0.26959816846925083\\n2674,1998-12-01,unemploy,6032.0,0.2642298886871398\\n2675,1999-01-01,unemploy,5976.0,0.25980895239598956\\n2676,1999-02-01,unemploy,6111.0,0.2704665666692982\\n2677,1999-03-01,unemploy,5783.0,0.24457251124970394\\n2678,1999-04-01,unemploy,6004.0,0.2620194205415647\\n2679,1999-05-01,unemploy,5796.0,0.2455988000315781\\n2680,1999-06-01,unemploy,5951.0,0.25783532012315463\\n2681,1999-07-01,unemploy,6025.0,0.26367727165074606\\n2682,1999-08-01,unemploy,5838.0,0.2489145022499408\\n2683,1999-09-01,unemploy,5915.0,0.25499328965027235\\n2684,1999-10-01,unemploy,5778.0,0.24417778479513697\\n2685,1999-11-01,unemploy,5716.0,0.23928317675850636\\n2686,1999-12-01,unemploy,5653.0,0.23430962343096234\\n2687,2000-01-01,unemploy,5708.0,0.23865161443119917\\n2688,2000-02-01,unemploy,5858.0,0.25049340806820874\\n2689,2000-03-01,unemploy,5733.0,0.2406252467040341\\n2690,2000-04-01,unemploy,5481.0,0.22073103339385805\\n2691,2000-05-01,unemploy,5758.0,0.24259887897686902\\n2692,2000-06-01,unemploy,5651.0,0.23415173284913554\\n2693,2000-07-01,unemploy,5747.0,0.24173048077682166\\n2694,2000-08-01,unemploy,5853.0,0.25009868161364174\\n2695,2000-09-01,unemploy,5625.0,0.23209915528538722\\n2696,2000-10-01,unemploy,5534.0,0.2249151338122681\\n2697,2000-11-01,unemploy,5639.0,0.23320438935817478\\n2698,2000-12-01,unemploy,5634.0,0.2328096629036078\\n2699,2001-01-01,unemploy,6023.0,0.26351938106891926\\n2700,2001-02-01,unemploy,6089.0,0.2687297702692034\\n2701,2001-03-01,unemploy,6141.0,0.27283492539670007\\n2702,2001-04-01,unemploy,6271.0,0.2830978132154417\\n2703,2001-05-01,unemploy,6226.0,0.27954527512433885\\n2704,2001-06-01,unemploy,6484.0,0.29991316017999525\\n2705,2001-07-01,unemploy,6583.0,0.30772874398042155\\n2706,2001-08-01,unemploy,7042.0,0.3439646325096708\\n2707,2001-09-01,unemploy,7142.0,0.3518591616010105\\n2708,2001-10-01,unemploy,7694.0,0.39543696218520563\\n2709,2001-11-01,unemploy,8003.0,0.41983105707744534\\n2710,2001-12-01,unemploy,8258.0,0.4399621062603616\\n2711,2002-01-01,unemploy,8182.0,0.4339622641509434\\n2712,2002-02-01,unemploy,8215.0,0.4365674587510855\\n2713,2002-03-01,unemploy,8304.0,0.44359358964237783\\n2714,2002-04-01,unemploy,8599.0,0.46688245046182997\\n2715,2002-05-01,unemploy,8399.0,0.4510933922791506\\n2716,2002-06-01,unemploy,8393.0,0.45061972053367016\\n2717,2002-07-01,unemploy,8390.0,0.45038288466092996\\n2718,2002-08-01,unemploy,8304.0,0.44359358964237783\\n2719,2002-09-01,unemploy,8251.0,0.4394094892239678\\n2720,2002-10-01,unemploy,8307.0,0.44383042551511803\\n2721,2002-11-01,unemploy,8520.0,0.4606457724796716\\n2722,2002-12-01,unemploy,8640.0,0.4701192073892792\\n2723,2003-01-01,unemploy,8520.0,0.4606457724796716\\n2724,2003-02-01,unemploy,8618.0,0.4683824109891845\\n2725,2003-03-01,unemploy,8588.0,0.4660140522617826\\n2726,2003-04-01,unemploy,8842.0,0.4860661561537854\\n2727,2003-05-01,unemploy,8957.0,0.49514486460882606\\n2728,2003-06-01,unemploy,9266.0,0.5195389595010658\\n2729,2003-07-01,unemploy,9011.0,0.4994079103181495\\n2730,2003-08-01,unemploy,8896.0,0.49032920186310885\\n2731,2003-09-01,unemploy,8921.0,0.4923028341359438\\n2732,2003-10-01,unemploy,8732.0,0.47738217415331174\\n2733,2003-11-01,unemploy,8576.0,0.46506670877082185\\n2734,2003-12-01,unemploy,8317.0,0.444619878424252\\n2735,2004-01-01,unemploy,8370.0,0.44880397884266204\\n2736,2004-02-01,unemploy,8167.0,0.43277808478724245\\n2737,2004-03-01,unemploy,8491.0,0.45835635904318306\\n2738,2004-04-01,unemploy,8170.0,0.43301492065998265\\n2739,2004-05-01,unemploy,8212.0,0.4363306228783453\\n2740,2004-06-01,unemploy,8286.0,0.4421725744059367\\n2741,2004-07-01,unemploy,8136.0,0.4303307807689271\\n2742,2004-08-01,unemploy,7990.0,0.4188047682955712\\n2743,2004-09-01,unemploy,7927.0,0.41383121496802716\\n2744,2004-10-01,unemploy,8061.0,0.42440988395042234\\n2745,2004-11-01,unemploy,7932.0,0.41422594142259417\\n2746,2004-12-01,unemploy,7934.0,0.4143838320044209\\n2747,2005-01-01,unemploy,7784.0,0.40254203836741137\\n2748,2005-02-01,unemploy,7980.0,0.4180153153864372\\n2749,2005-03-01,unemploy,7737.0,0.3988316096944817\\n2750,2005-04-01,unemploy,7672.0,0.3937001657851109\\n2751,2005-05-01,unemploy,7651.0,0.3920423146759296\\n2752,2005-06-01,unemploy,7524.0,0.38201626272992817\\n2753,2005-07-01,unemploy,7406.0,0.3727007184021473\\n2754,2005-08-01,unemploy,7345.0,0.3678850556564301\\n2755,2005-09-01,unemploy,7553.0,0.3843056761664167\\n2756,2005-10-01,unemploy,7453.0,0.37641114707507695\\n2757,2005-11-01,unemploy,7566.0,0.38533196494829086\\n2758,2005-12-01,unemploy,7279.0,0.3626746664561459\\n2759,2006-01-01,unemploy,7064.0,0.3457014289097655\\n2760,2006-02-01,unemploy,7184.0,0.3551748638193732\\n2761,2006-03-01,unemploy,7072.0,0.34633299123707273\\n2762,2006-04-01,unemploy,7120.0,0.3501223652009158\\n2763,2006-05-01,unemploy,6980.0,0.3390700244730402\\n2764,2006-06-01,unemploy,7001.0,0.3407278755822215\\n2765,2006-07-01,unemploy,7175.0,0.3544643562011526\\n2766,2006-08-01,unemploy,7091.0,0.34783295176442725\\n2767,2006-09-01,unemploy,6847.0,0.32857030078155836\\n2768,2006-10-01,unemploy,6727.0,0.31909686587195074\\n2769,2006-11-01,unemploy,6872.0,0.3305439330543933\\n2770,2006-12-01,unemploy,6762.0,0.3218599510539196\\n2771,2007-01-01,unemploy,7116.0,0.34980658403726217\\n2772,2007-02-01,unemploy,6927.0,0.33488592405463014\\n2773,2007-03-01,unemploy,6731.0,0.31941264703560435\\n2774,2007-04-01,unemploy,6850.0,0.32880713665429856\\n2775,2007-05-01,unemploy,6766.0,0.32217573221757323\\n2776,2007-06-01,unemploy,6979.0,0.3389910791821268\\n2777,2007-07-01,unemploy,7149.0,0.3524117786374043\\n2778,2007-08-01,unemploy,7067.0,0.3459382647825057\\n2779,2007-09-01,unemploy,7170.0,0.3540696297465856\\n2780,2007-10-01,unemploy,7237.0,0.35935896423778324\\n2781,2007-11-01,unemploy,7240.0,0.3595958001105234\\n2782,2007-12-01,unemploy,7645.0,0.3915686429304492\\n2783,2008-01-01,unemploy,7685.0,0.3947264545669851\\n2784,2008-02-01,unemploy,7497.0,0.37988473987526644\\n2785,2008-03-01,unemploy,7822.0,0.40554195942212046\\n2786,2008-04-01,unemploy,7637.0,0.39093708060314203\\n2787,2008-05-01,unemploy,8395.0,0.45077761111549697\\n2788,2008-06-01,unemploy,8575.0,0.46498776347990844\\n2789,2008-07-01,unemploy,8937.0,0.49356595879055815\\n2790,2008-08-01,unemploy,9438.0,0.53311754953817\\n2791,2008-09-01,unemploy,9494.0,0.5375384858293203\\n2792,2008-10-01,unemploy,10074.0,0.5833267545590906\\n2793,2008-11-01,unemploy,10538.0,0.6199573695429068\\n2794,2008-12-01,unemploy,11286.0,0.6790084471461277\\n2795,2009-01-01,unemploy,12058.0,0.7399542117312702\\n2796,2009-02-01,unemploy,12898.0,0.8062682560985237\\n2797,2009-03-01,unemploy,13426.0,0.8479513697007973\\n2798,2009-04-01,unemploy,13853.0,0.8816610089208179\\n2799,2009-05-01,unemploy,14499.0,0.9326596668508723\\n2800,2009-06-01,unemploy,14707.0,0.9490802873608589\\n2801,2009-07-01,unemploy,14601.0,0.9407120865240388\\n2802,2009-08-01,unemploy,14814.0,0.9575274334885924\\n2803,2009-09-01,unemploy,15009.0,0.9729217652167048\\n2804,2009-10-01,unemploy,15352.0,1.0\\n2805,2009-11-01,unemploy,15219.0,0.9895002763085182\\n2806,2009-12-01,unemploy,15098.0,0.9799478961079972\\n2807,2010-01-01,unemploy,15046.0,0.9758427409805005\\n2808,2010-02-01,unemploy,15113.0,0.9811320754716981\\n2809,2010-03-01,unemploy,15202.0,0.9881582063629905\\n2810,2010-04-01,unemploy,15325.0,0.9978684771453383\\n2811,2010-05-01,unemploy,14849.0,0.9602905186705613\\n2812,2010-06-01,unemploy,14474.0,0.9306860345780374\\n2813,2010-07-01,unemploy,14512.0,0.9336859556327465\\n2814,2010-08-01,unemploy,14648.0,0.9444225151969685\\n2815,2010-09-01,unemploy,14579.0,0.9389752901239441\\n2816,2010-10-01,unemploy,14516.0,0.9340017367964001\\n2817,2010-11-01,unemploy,15081.0,0.9786058261624694\\n2818,2010-12-01,unemploy,14348.0,0.9207389279229494\\n2819,2011-01-01,unemploy,14013.0,0.8942922554669614\\n2820,2011-02-01,unemploy,13820.0,0.8790558143206758\\n2821,2011-03-01,unemploy,13737.0,0.8725033551748638\\n2822,2011-04-01,unemploy,13957.0,0.8898713191758112\\n2823,2011-05-01,unemploy,13855.0,0.8818188995026447\\n2824,2011-06-01,unemploy,13962.0,0.8902660456303781\\n2825,2011-07-01,unemploy,13763.0,0.8745559327386121\\n2826,2011-08-01,unemploy,13818.0,0.878897923738849\\n2827,2011-09-01,unemploy,13948.0,0.8891608115575906\\n2828,2011-10-01,unemploy,13594.0,0.8612141785742481\\n2829,2011-11-01,unemploy,13302.0,0.8381621536275361\\n2830,2011-12-01,unemploy,13093.0,0.8216625878266361\\n2831,2012-01-01,unemploy,12797.0,0.7982947817162707\\n2832,2012-02-01,unemploy,12813.0,0.799557906370885\\n2833,2012-03-01,unemploy,12713.0,0.7916633772795453\\n2834,2012-04-01,unemploy,12646.0,0.7863740427883477\\n2835,2012-05-01,unemploy,12660.0,0.7874792768611353\\n2836,2012-06-01,unemploy,12692.0,0.7900055261703639\\n2837,2012-07-01,unemploy,12656.0,0.7871634956974817\\n2838,2012-08-01,unemploy,12471.0,0.7725586168785032\\n2839,2012-09-01,unemploy,12115.0,0.7444540933133339\\n2840,2012-10-01,unemploy,12124.0,0.7451646009315545\\n2841,2012-11-01,unemploy,12005.0,0.7357701113128602\\n2842,2012-12-01,unemploy,12298.0,0.7589010815504855\\n2843,2013-01-01,unemploy,12471.0,0.7725586168785032\\n2844,2013-02-01,unemploy,11950.0,0.7314281203126234\\n2845,2013-03-01,unemploy,11689.0,0.7108233993842268\\n2846,2013-04-01,unemploy,11760.0,0.7164285150390779\\n2847,2013-05-01,unemploy,11654.0,0.7080603142022578\\n2848,2013-06-01,unemploy,11751.0,0.7157180074208573\\n2849,2013-07-01,unemploy,11335.0,0.6828767664008842\\n2850,2013-08-01,unemploy,11279.0,0.678455830109734\\n2851,2013-09-01,unemploy,11270.0,0.6777453224915134\\n2852,2013-10-01,unemploy,11136.0,0.6671666535091182\\n2853,2013-11-01,unemploy,10787.0,0.6396147469803426\\n2854,2013-12-01,unemploy,10404.0,0.6093787005605116\\n2855,2014-01-01,unemploy,10202.0,0.5934317517960054\\n2856,2014-02-01,unemploy,10349.0,0.6050367095602748\\n2857,2014-03-01,unemploy,10380.0,0.60748401357859\\n2858,2014-04-01,unemploy,9702.0,0.5539591063393069\\n2859,2014-05-01,unemploy,9859.0,0.5663535170127102\\n2860,2014-06-01,unemploy,9460.0,0.5348543459382648\\n2861,2014-07-01,unemploy,9608.0,0.5465382489934475\\n2862,2014-08-01,unemploy,9599.0,0.5458277413752269\\n2863,2014-09-01,unemploy,9262.0,0.5192231783374122\\n2864,2014-10-01,unemploy,8990.0,0.4977500592089682\\n2865,2014-11-01,unemploy,9090.0,0.5056445883003079\\n2866,2014-12-01,unemploy,8717.0,0.4761979947896108\\n2867,2015-01-01,unemploy,8903.0,0.49088181889950266\\n2868,2015-02-01,unemploy,8610.0,0.4677508486618773\\n2869,2015-03-01,unemploy,8504.0,0.4593826478250572\\n2870,2015-04-01,unemploy,8526.0,0.46111944422515194\\n\",\n :format {:type \"csv\"}}}\n\nWhile this in itself does not affect the display of the plot, it allows us to keep editing it as a Vega-Lite spec. For example, let us change the backgound colour this way:\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (haclo/base {:=x :date\n :=y :value})\n (haclo/layer-line {:=mark-color \"purple\"})\n (haclo/update-data tc/random 5)\n (haclo/layer-point {:=mark-color \"green\"\n :=mark-size 200})\n haclo/plot\n (assoc :background \"lightgrey\"))", "crumbs": [ "3  Walkthrough" ] @@ -248,5 +248,155 @@ "crumbs": [ "3  Walkthrough" ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html", + "href": "hanamicloth_book.plotlycloth_walkthrough.html", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "", + "text": "4.1 Setup\nFor this tutorial, we require:", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#setup", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#setup", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "", + "text": "The plotlycloth API namepace\nTablecloth for dataset processing\nthe datetime namespace of dtype-next\nthe print namespace of tech.ml.dataset for customized dataset printing\nKindly (to specify how certaiun values should be visualized)\nthe datasets defined in the Datasets chapter\n\n\n(ns hanamicloth-book.plotlycloth-walkthrough\n (:require [scicloj.hanamicloth.v1.plotlycloth :as ploclo]\n [tablecloth.api :as tc]\n [tech.v3.datatype.datetime :as datetime]\n [tech.v3.dataset.print :as print]\n [scicloj.kindly.v4.kind :as kind]\n [clojure.string :as str]\n [scicloj.kindly.v4.api :as kindly]\n [hanamicloth-book.datasets :as datasets]))", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#basic-usage", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#basic-usage", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.2 Basic usage", + "text": "4.2 Basic usage\nPlotlycloth plots are created by passing datasets to a pipeline of layer functions.\nAdditional parameters to the functions are passed as maps. By convention, the map keys begin with = (e.g., :=color).\nFor example, let us plot a scatterplot (a layer of points) of 10 random items from the Iris dataset.\n\n(-> datasets/iris\n (tc/random 10 {:seed 1})\n (ploclo/layer-point\n {:=x :sepal-width\n :=y :sepal-length\n :=color :species\n :=mark-size 20\n :=mark-opacity 0.6}))", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#templates-and-parameters", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#templates-and-parameters", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.3 Templates and parameters", + "text": "4.3 Templates and parameters\n(💡 You do neet need to understand these details for basic usage.)\nTechnically, the parameter maps contain Hanami substitution keys, which means they are processed by a simple set of rules, but you do not need to understand what this means yet.\nThe layer functions return a Hanami template. Let us print the resulting structure of the previous plot.\n\n(def example1\n (-> datasets/iris\n (tc/random 10 {:seed 1})\n (ploclo/layer-point\n {:=x :sepal-width\n :=y :sepal-length\n :=color :species\n :=mark-size 20\n :=mark-opacity 0.6})))\n\n\n(kind/pprint example1)\n\n\n{:data :=traces,\n :layout :=layout,\n :aerial.hanami.templates/defaults\n {:=x0 :com.rpl.specter.impl/NONE,\n :=y-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=x0-after-stat :=x0,\n :=layers\n [{:y :=y-after-stat,\n :trace-base {:mode :=mode, :type :=type, :opacity :=mark-opacity},\n :color-type :=color-type,\n :group :=group,\n :color :=color,\n :mark :=mark,\n :x-title :=x-title,\n :name :=name,\n :y1 :=y1-after-stat,\n :size :=size,\n :size-type :=size-type,\n :aerial.hanami.templates/defaults\n {:=x0 :com.rpl.specter.impl/NONE,\n :=y-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=x0-after-stat :=x0,\n :=layers [],\n :=x1 :com.rpl.specter.impl/NONE,\n :=title :com.rpl.specter.impl/NONE,\n :=y1 :com.rpl.specter.impl/NONE,\n :=y-type-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=height :com.rpl.specter.impl/NONE,\n :=name :com.rpl.specter.impl/NONE,\n :=mark-opacity 0.6,\n :=inferred-group\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=mode\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=y-title :com.rpl.specter.impl/NONE,\n :=size :com.rpl.specter.impl/NONE,\n :=group :=inferred-group,\n :=y0 :com.rpl.specter.impl/NONE,\n :=mark-size 20,\n :=size-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=color :species,\n :=mark-color :com.rpl.specter.impl/NONE,\n :=y1-after-stat :=y1,\n :=x :sepal-width,\n :=x-after-stat :=x,\n :=yaxis-gridcolor \"rgb(255,255,255)\",\n :=type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=x-type-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=traces\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=x-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=histogram-nbins 10,\n :=stat :com.rpl.specter.impl/NONE,\n :=width :com.rpl.specter.impl/NONE,\n :=color-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=xaxis-gridcolor \"rgb(255,255,255)\",\n :=mark :point,\n :=dataset-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=x-title :com.rpl.specter.impl/NONE,\n :=layout\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=y :sepal-length,\n :=x1-after-stat :=x1,\n :=dataset #<WrappedValue@28277720: datasets/iris [10 6]:\n\n| :rownames | :sepal-length | :sepal-width | :petal-length | :petal-width | :species |\n|----------:|--------------:|-------------:|--------------:|-------------:|------------|\n| 27 | 5.0 | 3.4 | 1.6 | 0.4 | setosa |\n| 97 | 5.7 | 2.9 | 4.2 | 1.3 | versicolor |\n| 127 | 6.2 | 2.8 | 4.8 | 1.8 | virginica |\n| 92 | 6.1 | 3.0 | 4.6 | 1.4 | versicolor |\n| 7 | 4.6 | 3.4 | 1.4 | 0.3 | setosa |\n| 95 | 5.6 | 2.7 | 4.2 | 1.3 | versicolor |\n| 125 | 6.7 | 3.3 | 5.7 | 2.1 | virginica |\n| 61 | 5.0 | 2.0 | 3.5 | 1.0 | versicolor |\n| 73 | 6.3 | 2.5 | 4.9 | 1.5 | versicolor |\n| 42 | 4.5 | 2.3 | 1.3 | 0.3 | setosa |\n>,\n :=background \"rgb(229,229,229)\",\n :=y0-after-stat :=y0,\n :=y-after-stat :=y,\n :=predictors [:=x],\n :=marker-size-key\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211]},\n :y0 :=y0-after-stat,\n :inferred-group :=inferred-group,\n :marker-override\n {:color :=mark-color, :=marker-size-key :=mark-size},\n :x :=x-after-stat,\n :x1 :=x1-after-stat,\n :x0 :=x0-after-stat,\n :y-title :=y-title,\n :dataset :=dataset-after-stat}],\n :=x1 :com.rpl.specter.impl/NONE,\n :=title :com.rpl.specter.impl/NONE,\n :=y1 :com.rpl.specter.impl/NONE,\n :=y-type-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=height :com.rpl.specter.impl/NONE,\n :=name :com.rpl.specter.impl/NONE,\n :=mark-opacity :com.rpl.specter.impl/NONE,\n :=inferred-group\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=mode\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=y-title :com.rpl.specter.impl/NONE,\n :=size :com.rpl.specter.impl/NONE,\n :=group :=inferred-group,\n :=y0 :com.rpl.specter.impl/NONE,\n :=mark-size :com.rpl.specter.impl/NONE,\n :=size-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=color :com.rpl.specter.impl/NONE,\n :=mark-color :com.rpl.specter.impl/NONE,\n :=y1-after-stat :=y1,\n :=x :x,\n :=x-after-stat :=x,\n :=yaxis-gridcolor \"rgb(255,255,255)\",\n :=type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=x-type-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=traces\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=x-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=histogram-nbins 10,\n :=stat :com.rpl.specter.impl/NONE,\n :=width :com.rpl.specter.impl/NONE,\n :=color-type\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=xaxis-gridcolor \"rgb(255,255,255)\",\n :=mark :point,\n :=dataset-after-stat\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=x-title :com.rpl.specter.impl/NONE,\n :=layout\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211],\n :=y :y,\n :=x1-after-stat :=x1,\n :=dataset #<WrappedValue@28277720: datasets/iris [10 6]:\n\n| :rownames | :sepal-length | :sepal-width | :petal-length | :petal-width | :species |\n|----------:|--------------:|-------------:|--------------:|-------------:|------------|\n| 27 | 5.0 | 3.4 | 1.6 | 0.4 | setosa |\n| 97 | 5.7 | 2.9 | 4.2 | 1.3 | versicolor |\n| 127 | 6.2 | 2.8 | 4.8 | 1.8 | virginica |\n| 92 | 6.1 | 3.0 | 4.6 | 1.4 | versicolor |\n| 7 | 4.6 | 3.4 | 1.4 | 0.3 | setosa |\n| 95 | 5.6 | 2.7 | 4.2 | 1.3 | versicolor |\n| 125 | 6.7 | 3.3 | 5.7 | 2.1 | virginica |\n| 61 | 5.0 | 2.0 | 3.5 | 1.0 | versicolor |\n| 73 | 6.3 | 2.5 | 4.9 | 1.5 | versicolor |\n| 42 | 4.5 | 2.3 | 1.3 | 0.3 | setosa |\n>,\n :=background \"rgb(229,229,229)\",\n :=y0-after-stat :=y0,\n :=y-after-stat :=y,\n :=predictors [:=x],\n :=marker-size-key\n #function[scicloj.hanamicloth.v1.dag/fn-with-deps-keys/fn--48211]},\n :kindly/f #'scicloj.hanamicloth.v1.plotlycloth/plotly-xform}\n\nThis template has all the necessary knowledge, including the substitution keys, to turn into a plot. This happens when your visual tool (e.g., Clay) displays the plot. The tool knows what to do thanks to the Kindly metadata and a special function attached to the plot.\n\n(meta example1)\n\n\n#:kindly{:kind :kind/fn}\n\n\n(:kindly/f example1)\n\n\n#'scicloj.hanamicloth.v1.plotlycloth/plotly-xform", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#realizing-the-plot", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#realizing-the-plot", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.4 Realizing the plot", + "text": "4.4 Realizing the plot\nIf you wish to see the resulting plot specification before displaying it as a plot, you can use the plot function. In this case, it generates a Plotly.js plot:\n\n(-> example1\n ploclo/plot\n kind/pprint)\n\n\n{:data\n [{:mode :markers,\n :type :scatter,\n :opacity 0.6,\n :name \"setosa\",\n :x [3.4 3.4 2.3],\n :y [5.0 4.6 4.5],\n :marker {:color \"#1B9E77\", :size 20}}\n {:mode :markers,\n :type :scatter,\n :opacity 0.6,\n :name \"versicolor\",\n :x [2.9 3.0 2.7 2.0 2.5],\n :y [5.7 6.1 5.6 5.0 6.3],\n :marker {:color \"#D95F02\", :size 20}}\n {:mode :markers,\n :type :scatter,\n :opacity 0.6,\n :name \"virginica\",\n :x [2.8 3.3],\n :y [6.2 6.7],\n :marker {:color \"#7570B3\", :size 20}}],\n :layout\n {:width nil,\n :height nil,\n :plot_bgcolor \"rgb(229,229,229)\",\n :xaxis {:gridcolor \"rgb(255,255,255)\", :title :sepal-width},\n :yaxis {:gridcolor \"rgb(255,255,255)\", :title :sepal-length},\n :title nil}}\n\nIt is annotated as kind/plotly, so that visual tools know how to render it.\n\n(-> example1\n ploclo/plot\n meta)\n\n\n#:kindly{:kind :kind/plotly}\n\nThis can be useful if you wish to process the actual Plotly.js spec rather than use Plotlycloth’s API. Let us change the background colour, for example:\n\n(-> example1\n ploclo/plot\n (assoc-in [:layout :plot_bgcolor] \"#eeeedd\"))", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#field-type-inference", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#field-type-inference", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.5 Field type inference", + "text": "4.5 Field type inference\nPlotlycloth infers the type of relevant fields from the data.\nThe example above was colored as it were since :species column was nominal, so it was assigned distinct colours.\nIn the following example, the coloring is by a quantitative column, so a color gradient is used:\n\n(-> datasets/mtcars\n (ploclo/layer-point\n {:=x :mpg\n :=y :disp\n :=color :cyl\n :=mark-size 20}))\n\n\nWe can override the inferred types and thus affect the generated plot:\n\n(-> datasets/mtcars\n (ploclo/layer-point\n {:=x :mpg\n :=y :disp\n :=color :cyl\n :=color-type :nominal\n :=mark-size 20}))", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#more-examples", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#more-examples", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.6 More examples", + "text": "4.6 More examples\n\n4.6.1 Boxplot\n\n(-> datasets/mtcars\n (ploclo/layer-boxplot\n {:=x :cyl\n :=y :disp}))\n\n\n\n\n4.6.2 Segment plot\n\n(-> datasets/iris\n (ploclo/layer-segment\n {:=x0 :sepal-width\n :=y0 :sepal-length\n :=x1 :petal-width\n :=y1 :petal-length\n :=mark-opacity 0.4\n :=mark-size 3\n :=color :species}))", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#varying-color-and-size", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#varying-color-and-size", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.7 Varying color and size", + "text": "4.7 Varying color and size\n\n(-> {:ABCD (range 1 11)\n :EFGH [5 2.5 5 7.5 5 2.5 7.5 4.5 5.5 5]\n :IJKL [:A :A :A :A :A :B :B :B :B :B]\n :MNOP [:C :D :C :D :C :D :C :D :C :D]}\n tc/dataset\n (ploclo/base {:=title \"IJKLMNOP\"})\n (ploclo/layer-point {:=x :ABCD\n :=y :EFGH\n :=color :IJKL\n :=size :MNOP\n :=name \"QRST1\"})\n (ploclo/layer-line\n {:=title \"IJKL MNOP\"\n :=x :ABCD\n :=y :ABCD\n :=name \"QRST2\"\n :=mark-color \"magenta\"\n :=mark-size 20\n :=mark-opacity 0.2})\n ploclo/plot)", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#time-series", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#time-series", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.8 Time series", + "text": "4.8 Time series\nDate and time fields are handle appropriately. Let us, for example, draw the time series of unemployment counts.\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (ploclo/layer-line\n {:=x :date\n :=y :value\n :=mark-color \"purple\"}))", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#multiple-layers", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#multiple-layers", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.9 Multiple layers", + "text": "4.9 Multiple layers\nWe can draw more than one layer:\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (ploclo/layer-point {:=x :date\n :=y :value\n :=mark-color \"green\"\n :=mark-size 20\n :=mark-opacity 0.5})\n (ploclo/layer-line {:=x :date\n :=y :value\n :=mark-color \"purple\"}))\n\n\nWe can also use the base function for the common parameters across layers:\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (ploclo/base {:=x :date\n :=y :value})\n (ploclo/layer-point {:=mark-color \"green\"\n :=mark-size 20\n :=mark-opacity 0.5})\n (ploclo/layer-line {:=mark-color \"purple\"}))", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#updating-data", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#updating-data", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.10 Updating data", + "text": "4.10 Updating data\nWe can use the update-data function to vary the dataset along a plotting pipeline, affecting the layers that follow.\nThis functionality is inspired by ggbuilder and metamorph.\nHere, for example, we draw a line, then sample 5 data rows, and draw them as points:\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (ploclo/base {:=x :date\n :=y :value})\n (ploclo/layer-line {:=mark-color \"purple\"})\n (ploclo/update-data tc/random 5)\n (ploclo/layer-point {:=mark-color \"green\"\n :=mark-size 15\n :=mark-opacity 0.5}))", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#smoothing", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#smoothing", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.11 Smoothing", + "text": "4.11 Smoothing\nlayer-smooth is a layer that applies some statistical processing to the dataset to model it as a smooth shape. It is inspired by ggplot’s geom_smooth.\nAt the moment, it can only be used to model :=y by linear regression. Soon we will add more ways of modelling the data.\n\n(-> datasets/iris\n (ploclo/base {:=title \"dummy\"\n :=mark-color \"green\"\n :=x :sepal-width\n :=y :sepal-length})\n ploclo/layer-point\n (ploclo/layer-smooth {:=mark-color \"orange\"})\n ploclo/plot)\n\n\nBy default, the regression is computed with only one predictor variable, which is :=x. But this can be overriden using the :predictors key. We may compute a regression with more than one predictor.\n\n(-> datasets/iris\n (ploclo/base {:=x :sepal-width\n :=y :sepal-length})\n ploclo/layer-point\n (ploclo/layer-smooth {:=predictors [:petal-width\n :petal-length]\n :=mark-opacity 0.5})\n ploclo/plot)", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#grouping", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#grouping", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.12 Grouping", + "text": "4.12 Grouping\nThe regression computed by haclo/layer-smooth is affected by the inferred grouping of the data.\nFor example, here we recieve three regression lines, each for every species.\n\n(-> datasets/iris\n (ploclo/base {:=title \"dummy\"\n :=color :species\n :=x :sepal-width\n :=y :sepal-length})\n ploclo/layer-point\n ploclo/layer-smooth)\n\n\nThis happened because the :color field was :species, which is of :nominal type.\nBut we may override this using the :group key. For example, let us avoid grouping:\n\n(-> datasets/iris\n (ploclo/base {:=title \"dummy\"\n :=color :species\n :=group []\n :=x :sepal-width\n :=y :sepal-length})\n ploclo/layer-point\n ploclo/layer-smooth)", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#example-out-of-sample-predictions", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#example-out-of-sample-predictions", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.13 Example: out-of-sample predictions", + "text": "4.13 Example: out-of-sample predictions\nHere is a slighly more elaborate example inpired by the London Clojurians talk mentioned in the preface.\nAssume we wish to predict the unemployment rate for 96 months. Let us add those months to our dataset, and mark them as Future (considering the original data as Past):\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (tc/add-column :relative-time \"Past\")\n (tc/concat (tc/dataset {:date (-> datasets/economics-long\n :date\n last\n (datetime/plus-temporal-amount (range 96) :days))\n :relative-time \"Future\"}))\n (print/print-range 6))\n\n\nggplot2/economics_long [670 6]:\n\n\n\n\n\n\n\n\n\n\n\n:rownames\n:date\n:variable\n:value\n:value01\n:relative-time\n\n\n\n\n2297\n1967-07-01\nunemploy\n2944.0\n0.02044683\nPast\n\n\n2298\n1967-08-01\nunemploy\n2945.0\n0.02052578\nPast\n\n\n2299\n1967-09-01\nunemploy\n2958.0\n0.02155206\nPast\n\n\n…\n…\n…\n…\n…\n…\n\n\n\n2015-07-02\n\n\n\nFuture\n\n\n\n2015-07-03\n\n\n\nFuture\n\n\n\n2015-07-04\n\n\n\nFuture\n\n\n\n2015-07-05\n\n\n\nFuture\n\n\n\n\nLet us represent our dates as numbers, so that we can use them in linear regression:\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (tc/add-column :relative-time \"Past\")\n (tc/concat (tc/dataset {:date (-> datasets/economics-long\n :date\n last\n (datetime/plus-temporal-amount (range 96) :months))\n :relative-time \"Future\"}))\n (tc/add-column :year #(datetime/long-temporal-field :years (:date %)))\n (tc/add-column :month #(datetime/long-temporal-field :months (:date %)))\n (tc/map-columns :yearmonth [:year :month] (fn [y m] (+ m (* 12 y))))\n (print/print-range 6))\n\n\nggplot2/economics_long [670 9]:\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n:rownames\n:date\n:variable\n:value\n:value01\n:relative-time\n:year\n:month\n:yearmonth\n\n\n\n\n2297\n1967-07-01\nunemploy\n2944.0\n0.02044683\nPast\n1967\n7\n23611\n\n\n2298\n1967-08-01\nunemploy\n2945.0\n0.02052578\nPast\n1967\n8\n23612\n\n\n2299\n1967-09-01\nunemploy\n2958.0\n0.02155206\nPast\n1967\n9\n23613\n\n\n…\n…\n…\n…\n…\n…\n…\n…\n…\n\n\n\n2022-12-01\n\n\n\nFuture\n2022\n12\n24276\n\n\n\n2023-01-01\n\n\n\nFuture\n2023\n1\n24277\n\n\n\n2023-02-01\n\n\n\nFuture\n2023\n2\n24278\n\n\n\n2023-03-01\n\n\n\nFuture\n2023\n3\n24279\n\n\n\n\nLet us use the same regression line for the Past and Future groups. To do this, we avoid grouping by assigning [] to :=group. The line is affected only by the past, since in the Future, :=y is missing. We use the numerical field :yearmonth as the regression predictor, but for plotting, we still use the :temporal field :date.\n\n(-> datasets/economics-long\n (tc/select-rows #(-> % :variable (= \"unemploy\")))\n (tc/add-column :relative-time \"Past\")\n (tc/concat (tc/dataset {:date (-> datasets/economics-long\n :date\n last\n (datetime/plus-temporal-amount (range 96) :months))\n :relative-time \"Future\"}))\n (tc/add-column :year #(datetime/long-temporal-field :years (:date %)))\n (tc/add-column :month #(datetime/long-temporal-field :months (:date %)))\n (tc/map-columns :yearmonth [:year :month] (fn [y m] (+ m (* 12 y))))\n (ploclo/base {:=x :date\n :=y :value})\n (ploclo/layer-smooth {:=color :relative-time\n :=mark-size 20\n :=group []\n :=predictors [:yearmonth]})\n ;; Keep only the past for the following layer:\n (ploclo/update-data (fn [dataset]\n (-> dataset\n (tc/select-rows (fn [row]\n (-> row :relative-time (= \"Past\")))))))\n (ploclo/layer-line {:=mark-color \"purple\"\n :=mark-size 3}))", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] + }, + { + "objectID": "hanamicloth_book.plotlycloth_walkthrough.html#histograms", + "href": "hanamicloth_book.plotlycloth_walkthrough.html#histograms", + "title": "4  Plotlycloth Walkthrough (experimental 🛠)", + "section": "4.14 Histograms", + "text": "4.14 Histograms\nHistograms can also be represented as layers with statistical processing:\n\n(-> datasets/iris\n (ploclo/layer-histogram {:=x :sepal-width}))\n\n\n\n(-> datasets/iris\n (ploclo/layer-histogram {:=x :sepal-width\n :=histogram-nbins 30}))\n\n\n\nsource: notebooks/hanamicloth_book/plotlycloth_walkthrough.clj", + "crumbs": [ + "4  Plotlycloth Walkthrough (experimental 🛠)" + ] } ] \ No newline at end of file