# \[ANN\] VegaLite.jl v2.1 released

**URL:** <https://discourse.julialang.org/t/ann-vegalite-jl-v2-1-released/37138>\
**Category:** Package Announcements\
**Tags:** announcement\
**Created:** [April 7, 2020, 3:27am UTC](https://discourse.julialang.org/t/ann-vegalite-jl-v2-1-released/37138 "2020-04-07T03:27:32Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![davidanthoff](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/davidanthoff/32/223493_2.png) [@davidanthoff](https://discourse.julialang.org/u/davidanthoff)\
**Post date:** [April 7, 2020, 3:27am UTC](https://discourse.julialang.org/t/ann-vegalite-jl-v2-1-released/37138/1 "2020-04-07T03:27:32Z")

</div>

I just released [VegaLite.jl](https://github.com/queryverse/VegaLite.jl) v2.1. While this release just tracks what is happening upstream in the Vega-Lite project, there are some really nice feature additions.

For all the details you can read through the release notes of Vega-Lite:

- [Vega-Lite 4.7](https://github.com/vega/vega-lite/releases/tag/v4.7.0)
- [Vega-Lite 4.8](https://github.com/vega/vega-lite/releases/tag/v4.8.0)
- [Vega-Lite 4.9](https://github.com/vega/vega-lite/releases/tag/v4.9.0)
- [Vega-Lite 4.10](https://github.com/vega/vega-lite/releases/tag/v4.10.0)

I’ll use the rest of this post to highlight a few key new features.

## Arc marks

Vega-Lite now supports a new arc mark that makes it easy to create pie, donut and radial charts:

 ![arc mark](https://global.discourse-cdn.com/julialang/original/3X/5/5/55ab706fb9b1b3203f301bc6ac718b221511bb72.png)

For more information, you can read the original Vega-Lite [documentation](https://vega.github.io/vega-lite/docs/arc.html) and you can look at a number of [Julia examples](https://www.queryverse.org/VegaLite.jl/v2.1/examples/examples_circular_plots/).

## Datum in encoding

The new support for [datum in encodings](https://vega.github.io/vega-lite/docs/datum.html) makes it easy to add for example a rule at a given point to a figure.

An example that adds a horizontal rule to a figure is this:

```julia

using VegaLite, VegaDatasets

dataset("stocks") |>

@vlplot() +

@vlplot(:line, "date:t", :price, color=:symbol) +

@vlplot(mark={:rule, strokeDash=[2,2], size=2}, y={datum=300})

```

![figure](https://www.queryverse.org/assets/blog/images/datum_horizontal.svg)

Note how the `y` channel here is given a `datum`, that is a value from the underlying price domain.

For temporal values this has especially nice syntax:

```julia

using VegaLite, VegaDatasets

dataset("stocks") |>

@vlplot() +

@vlplot(:line, "date:t", :price, color=:symbol) +

@vlplot(mark={:rule, strokeDash=[2,2], size=2}, x={datum={year=2006}})

```

![figure](https://www.queryverse.org/assets/blog/images/datum_vertical.svg)

Note how we can set a value for a specific year here.

## Angle channel for point and text marks

A new angle channel makes it easy to create for example the following wind vector map:

 ![figure](https://global.discourse-cdn.com/julialang/original/3X/5/3/538d3479a1a66f3277732ff7247fadd81833d69c.png)

You can find the Julia code for this example in the [documentation](https://www.queryverse.org/VegaLite.jl/v2.1/examples/examples_table_based_plots/#Wind-Vector-Map-1).

## Conclusion

This release was literally zero work on the Julia side of things, all the thanks for these new features should go to the awesome Vega-Lite team that keeps adding new functionality at an amazing speed!

Cross posted from the [queryverse blog](https://www.queryverse.org/2020/04/06/vegalite-v2.1/).
