Releases: vega/vega-lite
3.0.0 Release Candidate 1
New Features and Enhancements
-
Add filter for valid fields. (#4109)
-
Add interpolate as one of the errorband properties. (#4065) -- Thanks @chanwutk
Bug fixes
- Make
fill
/stroke
respectnull
(#4086) - Make config.timeFormat affect only text, header, and labels but not axis
- Fix broken
vl2vg
command due to new dependencies
Internal Improvements
- Merge identical transforms at forks and make dataflow more efficient. (#4029) -- Thanks @invokesus
- Calculate dependent fields for expressions. (#4099)
- Use new schema generator with better support for tuples.
- Typescript 3 (#4093)
Examples / Docs
- Extend docs about UTC (#4094)
3.0.0 Release Candidate 0
Enhancement
-
New Composite Marks
"boxplot"
(by @mattwchun)"errorbar"
and"errorband"
(by @chanwutk)"callout"
(by @starry97)
-
New Transforms (by @invokesus)
- Flatten
- Fold
- Impute
- Sample
- Stack
-
Add support adding tooltips based on all fields in the encoding or in the data.
- Make tooltip include all fields in encoding by default.
-
Better support for pre-binned data (by @sirahd)
- Add
bin: "binned"
support forx
andy
channel - Add Axis
tickStep
- Add
-
Improve scales
-
Improve guides (axis/legend/header)
- Improve default axis format
- New Axis and Legend Properties from Vega 4 (added by @melissatdiamond)
- Changes:
maxTitleLength
is nowtitleLimit
- Add header
titlePadding
andlabelPadding
(#4028)
-
Misc. Bug fixes.
New Examples
- New Emoji IsoType Bar Chart (by @chanwutk)
Schema Changes
- Correctly Support
null
for ValueDef
Removed Feature
- Removed deprecated latitude/longitude types
2.6.0
This will be the last release in Vega-Lite 2. After this release, we will start pre-release versions of Vega-Lite 3, which will require Vega 4.
Note that there won't be many breaking changes in Vega-Lite 3. The main exceptions are that (1) Vega-Lite 3 will require Vega 4 and (2) we will remove a few config properties that are removed from Vega 4.
Enhancement
-
Improve customization support for composition operators
- Add
spacing
,align
,bound
, andcenter
properties to all composition operators (facet
,hconcat
,vconcat
, andrepeat
). - Add label and title properties to facet header -- Thanks @melissatdiamond
- Add
-
Improve sorting support
- Make sort array support
boolean
andnumber
in addition tostring
- Make
facet
'srow
andcolumn
channels support sorting by another field and specifying custom sort order using as array
- Make sort array support
-
Improve date support for
sort
, scaledomain
andvalues
of axis and legend.- Day or month names (and its 3-letter initials, e.g.,
"Mon"
) can be used with a field withtimeUnit
=day
ormonth
- For instance, see the Github Punchcard example. - Date string as supported by Javascript Date() can be used with a field with
timeUnit
or withtype
="temporal"
- Day or month names (and its 3-letter initials, e.g.,
-
Add
anchor
to bin transform -- Thanks @invokesus -
When
href
is specified, cursor is automatically set to"pointer"
- Thanks @melissatdiamond
Bug Fixes
- Set facet row header baseline default to "middle"
New Examples
2.5.2
2.5.0
New Features
- Add support for DSV data format
- Allow disabling format parsing
- Adding support for value =
"width"
or"height"
forx
/x2
/y
/y2
channels. (See an example usage). - Support naming all data sources. (#3807)
- Add lt, lte, gt, gte predicates (#3809)
Bug Fixes
- Add missing
thickness
(fortick
mark) to the mark definition block - Make sort support nested field (Fix #3727)
- Make Field Definition's
title
work with composite marks without crashing - For temporal field without timeUnit, the previous default format was
"%b %d, %Y"
, which does not work well for data within a day. Thus, we now use Vega's default axis format instead. (Fix #3698) - Fix bug for bar with ranged quantities as dimension (e.g., prebinned bar)
- Make size for bar with band scale correctly working
- Do not ignore x2's title if both x and x2 title are specified (#3766)
- Fix inconsistent rules for default alignment and position of text
- Make grid generation respect config (#3826)
- Fix window
as
logic (#3810) - Make
config.view.size
work with projections (#3803)
APIs
- Add new helper method
vl.scale.getSupportedScaleType
-- Thanks to @ssharif6
Examples Gallery
- The teaser gallery and the example gallery are now improved.
2.4.2
Bug Fixes
- Resolve conflict between scale.domain and bin.extent (#3675) - Fix #3575 - Thanks @yhoonkim
- Better support for nested fields in the data sources
- Allow making
line
uses original order in the data by settingorder
encoding to{"value": null}
Example Gallery
Now reorganized with new subcategories for better access
2.4.1
2.4.0
New Features
- Custom sort order can be specified by setting encoding's
sort
property to an array (#3423) -- Thanks @sirahd - Add the new
window
transform, which can be useful for many purposes including calculating Top-K, moving average, percentage, residuals, and ranks. -- Thanks to @AkshatSh - Add
trail
mark support - Allow setting
binSpacing
in mark definition object forbar
marks. - Add new
point
property for the line mark definition and config for overlaying point markers on top of lines. (Same forpoint
andline
properties for the area mark definition and config). - Support
fieldDef.title
– Fix #3548 - Support arrays for tooltips. (#3634)
JSON Schema Changes
- Rename
Condition<XXX>
toConditionXXX
(to make sure that the documentation shows up correctly on the website.)
Improvements
- Throw warning for bar/area with log/time scale, with zero = false, or with custom domain that doesn't include zero (as these are misleading encodings)
- Automatically change mark type to
rule
whenline
is used withx2
or ``y2`
Bug Fixes
- Make bar starting point correct when a custom domain that includes zero is specified -- Fix #3557
- Fix behavior for
fill
andstroke
channels -- color would be ignored whenfill
orstroke
is applied to prevent ambiguous specification that uses color withfill
orstroke
. - Make
zindex
foraxis
work correctly - Fix #3537 - Correct legend fill/stroke rules - Fix #3463
- Misc fixes for interaction/selection (#3586)
- Make
size
property work for rule mark definition - Correctly move data source to the beginning. Fixes #3595
- Make
aggregate
transform do not require field
Build System
- We use Rollup to Vega-Lite
- We use Webpack for the website
- We use Jest for tests
2.3.0
Syntax Change
-
From @jwoLondon's feedback, we introduce the new
longitude
,latitude
,longitude2
,latitude2
channels for mapping geographic coordinates to projection. This will produce a more accurate specification of the output. Basically, with projection, x-value is function of both longitude and latitude (not just longitude).- Here is an example change:
- "x": {
+ "longitude": {
"field": "longitude",
- "type": "longitude"
+ "type": "quantitative"
},
- "y": {
+ "latitude": {
"field": "latitude",
- "type": "latitude"
+ "type": "quantitative"
}
-
See https://vega.github.io/vega-lite/examples/#geographical-maps for updated examples.
-
The
longitude
,latitude
data field type are now deprecated. (We will continue to supportlongitude
,latitude
as fieldtype
for2.x
, but will remove them if we bump our major version in the future).
JSON Schema Change
- Rename
Spec
=>NormalizedSpec
- Rename
TopLevel<XXXSpec>
toTopLevelXXXSpec
. Also makeTopLevelUnitSpec
andTopLevelFacetSpec
requiredata
. (#3491)
New Features
- Support scale disabling by setting
scale
tonull
- Introduce shared
encoding
andprojection
for layered plots - Add
fill
andstroke
channels for fine-grained control over colors of the marks
Bug Fixes
2.2.0
New Feature
- Add top-level
datasets
Bug Fixes & Improvement
- Correctly make
midPoint
uses default value ref for condition-only def (#3318) - Improve header and axis's alignment and baseline (#3276) –– Thanks to @neelmohapatra
- Consistently use font weight. (#3381)
- Make Aggregate transform work with undefined
groupby
(#3418) - Make
size
in mark definition block works correctly - Make
title=false
means title is hidden - Add Invalid Encoding Channel Warning (#3426) - Thanks to @invokesus
New Examples
- Carbon Dioxide in the Atmosphere by @chanwutk
- Multi-series line chart with Tooltip by @ydlamba and @jakevdp
- and a few more community examples