Altair changelog

Declarative visualization library for Python

All Versions
20
Latest Version
Avg Release Cycle
72 days
Latest Release
2121 days ago

Changelog History
Page 1

  • v4.1.0 Changes

    April 01, 2020
    • Minimum Python version is now 3.6
    • πŸš€ Update Vega-Lite to version 4.8.1; many new features and bug fixes from Vega-Lite versions 4.1 through 4.8; see Vega-Lite Release Notes.

    ✨ Enhancements

    • strokeDash encoding can now be used to control line styles (Example: Multi Series Line Chart
    • πŸ’Ύ chart.save() now relies on altair_saver for more flexibility (#1943).
    • New chart.show() method replaces chart.serve(), and relies on altair_viewer to allow offline viewing of charts (#1988).

    πŸ› Bug Fixes

    • πŸ‘Œ Support Python 3.8 (#1958)
    • πŸ‘Œ Support multiple views in JupyterLab (#1986)
    • πŸ‘Œ Support numpy types within specifications (#1914)
    • πŸ‘Œ Support pandas nullable ints and string types (#1924)

    🚧 ##Maintenance

    • Altair now uses black and flake8 for maintaining code quality & consistency.
  • v4.0.1

    January 14, 2020
  • v4.0.0 Changes

    December 11, 2019

    πŸš€ Altair Version 4.0.0 release

    πŸ”– Version 4.0.0 is based on Vega-Lite version 4.0, which you can read about at
    πŸš€ https://github.com/vega/vega-lite/releases/tag/v4.0.0.

    βœ… It is the first version of Altair to drop Python 2 compatibility, and is tested
    on Python 3.5 and newer.

    ✨ Enhancements

    πŸ‘Œ Support for interactive legends: (Example)
    interactive legend

    πŸ“± Responsive chart width and height: (Example)
    dynamic width

    πŸ“± Bins responsive to selections: (Example)
    πŸ“± responsive bin

    πŸ†• New pivot transform: (Example)
    pivot

    πŸ†• New Regression transform: (Example)
    regression

    πŸ†• New LOESS transform: (Example)
    loess

    πŸ†• New density transform: (Example)
    density

    Image mark (Example)
    image

    πŸ†• New default html renderer, directly compatible with Jupyter Notebook and
    JupyterLab without the need for frontend extensions, as well as tools like
    nbviewer and nbconvert, and related notebook environments such as Zeppelin,
    0️⃣ Colab, Kaggle Kernels, and DataBricks. To enable the old default renderer, use:

    alt.renderers.enable('mimetype')
    

    πŸ‘Œ Support per-corner radius for bar marks: (Example)
    round-bar

    Grammar Changes

    Sort-by-field can now use the encoding name directly. So instead of

    alt.Y('y:Q', sort=alt.EncodingSortField('x_field', order='descending'))
    

    you can now use::

    alt.Y('y:Q', sort="-x")
    

    πŸ”§ The rangeStep argument to :class:Scale and :meth:Chart.configure_scale is deprecated.
    instead, use chart.properties(width={"step": rangeStep}) or
    πŸ”§ chart.configure_view(step=rangeStep).

    align, center, spacing, and columns are no longer valid chart properties, but
    🚚 are moved to the encoding classes to which they refer.

  • v3.3.0 Changes

    November 27, 2019

    πŸ”– Version 3.3.0

    πŸš€ released Nov 27, 2019

    πŸš€ Last release to support Python 2

    ✨ Enhancements

    • βž• Add inheritance structure to low-level schema classes (#1803)
    • βž• Add html renderer which works across frontends (#1793)
    • πŸ‘Œ Support Python 3.8 (#1740, #1781)
    • βž• Add :G shorthand for geojson type (#1714)
    • βž• Add data generator interface: alt.sequence, alt.graticule,
      alt.sphere() (#1667, #1687)
    • Support geographic data sources via __geo_interface__ (#1664)

    πŸ› Bug Fixes

    • πŸ‘Œ Support pickle and copy.deepcopy for chart objects (#1805)
    • πŸ›  Fix bug when specifying count() within transform_joinaggregate() (#1751)
    • πŸ›  Fix LayerChart.add_selection (#1794)
    • πŸ›  Fix arguments to project() method (#1717)
    • πŸ›  Fix composition of multiple selections (#1707)
  • v3.2.0 Changes

    August 05, 2019

    πŸ”– Version 3.2.0 (released August 5, 2019)

    πŸš€ Upgraded to Vega-Lite version 3.4 (See Vega-Lite 3.4 Release Notes).

    Following are changes to Altair in addition to those that came with VL 3.4:

    ✨ Enhancements

    • Selector values can be used directly in expressions (#1599)
    • Top-level chart repr is now truncated to improve readability of error
      messages (#1572)

    πŸ› Bug Fixes

    • top-level add_selection methods now delegate to sub-charts. Previously
      they produced invalid charts (#1607)
    • 🚚 Unsupported mark_*() methods removed from LayerChart (#1607)
    • πŸ†• New encoding channels are properly parsed (#1597)
    • Data context is propagated when encodings are specified as lists (#1587)

    Backward-Incompatible Changes

    • alt.LayerChart no longer has mark_*() methods, because they never
      produced valid chart specifications) (#1607)
  • v3.1.0 Changes

    June 06, 2019

    ⚑️ Update includes full compatibility with version 3.3 of Vega-Lite.

    ✨ Enhancements

    • βž• Added support for vega themes via alt.themes.enable(theme_name) (#1539)

    • Added an alt.renderers.disable_max_rows() method for disabling the maximum rows check (#1538)

    • πŸ‘Œ Improved user-facing warnings/errors around layering and faceting (#1535).

    • data argument is now properly handled by Chart.properties (#1525)

    • 🚚 Compound charts (layer, concat, hconcat, vconcat) now move data to the top level by default. In particular, this means that the facet() method can now be called directly on a layered chart without having to change how data is specified. (#1521)

    • πŸ‘ alt.LayerChart now supports mark_*() methods. If a layer specifies a mark at the top level, all child charts will inherit it (unless they override it explicitly).

    • alt.Chart.facet() now handles wrapped facets; for example:

      chart.facet('column_name', columns=5)
      

      See altair/examples/us_population_over_time_facet.py for a more complete example.

    πŸ› Bug fixes

    • πŸ‘‰ Make chart.serve() and chart.save() respect the data transformer setting (#1538)

    • πŸ›  Fixed a deserialization bug for certain chart specs in schemapi (#1543)

    Backward-Incompatible Changes

    • alt.Chart.facet() now accepts a wrapped facet encoding as a first positional argument, rather than a row encoding. The following are examples of old invocations, and the equivalent new invocations:

      • chart.facet(row='col1', column='col2'): unchanged
      • chart.facet('col1', 'col2'): change to chart.facet(row='col1', column='col2')
      • chart.facet('col1'): change to chart.facet(row='col1')

    In each case, the new invocations are compatible back to Altair 2.X.

    • Several of the encoding channels added in 3.0 have had their capitalization corrected to better match the names used in the schema:

      • alt.Fillopacity -> alt.FillOpacity
      • alt.Strokeopacity -> alt.StrokeOpacity
      • alt.Strokewidth -> alt.StrokeWidth
      • alt.Xerror -> alt.XError
      • alt.Xerror2 -> alt.XError2
      • alt.Yerror -> alt.YError
      • alt.Yerror2 -> alt.YError2
  • v3.0.1 Changes

    May 01, 2019

    πŸ›  Fix version info bug for HTML output and Colab & Kaggle renderers.

  • v3.0.0 Changes

    April 26, 2019

    ⚑️ Update to Vega-Lite 3.2 and Vega 5.3 & support all new features. See πŸš€ https://github.com/vega/vega-lite/releases/tag/v3.0.0 for Vega-Lite πŸ”‹ feature lists.

    Highlights:

    • new compound marks: mark_boxplot(), mark_errorband(), mark_errorbar()
    • new transforms: transform_impute(), transform_joinaggregate(), transform_flatten() transform_fold(), transform_sample(), transform_stack()
    • πŸ†• new facet encoding that is similar to the row and column encoding, but allows for wrapped facets
    • πŸ†• new alt.concat() function that is similar to alt.hconcat and alt.vconcat, but allows for more general wrapped concatenation
    • πŸ†• new columns keyword that allows wrapped faceting, repeating, and concatenation.
    • πŸ›  many, many bug fixes
    • πŸ”§ tooltips can now be automatically populated using the tooltip mark configuration.
    • ability to specify initial condisions for selections
  • v3.0.0.rc1

    March 27, 2019
  • v2.4.1 Changes

    February 21, 2019

    ✨ Enhancements

    • πŸ“š Several documentation cleanups & new examples

    πŸ› Bug Fixes

    • πŸ›  Fix incompatibility with pandas version 0.24 (#1315)
Awesome Python is part of the LibHunt network. Terms. Privacy Policy.

(CC)
BY-SA
We recommend Spin The Wheel Of Names for a cryptographically secure random name picker.

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /