- Upgrade pyarrow dependency
- Fix wrong optional-dependencies in pyproject.toml
- Installing the package with
pip install pyobsplotnow does not install thetypstdependency anymore. To install typst and allow to use all the renderers, you have to install withpip install pyobsplot[typst]. This change has been made so thatpyobsplot(with the widget renderer) could be used in pyodide-based environments like JupyterLite and Marimo.
- Update Observable Plot to 0.6.17
Plot.plot()performance should now be equivalent to the one of a generator object- New shortcut syntax
Plot.line(...).plot()is now available (#18, thanks @harrylojames) - Bugfix: typst error with certain decimal padding values.
- The plot generator API has been changed. Generators are no more defined with a
rendererargument, aformatis specified instead. This format can either bewidget,html,svgorpng. Sorenderer="widget"is replaced byformat="widget"(which is the default), whereasrenderer="jsdom"is replaced byformat="html"or one of the newformat="svg"andformat="png". - The "kwargs" alternative syntax is now deprecated and will generate errors. Plots must be defined either by passing a specification dictionary, or a call to a
Plot.xxxmethod.
- Plots can now be generated in "svg" and "png", and saved as "svg", "png" or "pdf". This is done by converting figures using typst. Many thanks to @wirhabenzeit and @harrylojames for the idea, the underlying code and the feedback.
- Update Observable Plot to 0.6.16
- Migrate project management from hatch to uv
- Fix
jsdomrenderer file saving encoding (#22, @harrylojames) - Update Observable Plot to 0.6.13
- Migrate build system from poetry to hatch
- Update pyarrow and apache-arrow to 15.0.0 and remove data frame conversion to 32bits data types before serialization
- Plots generated by the
widgetrenderer can now be saved to HTML files - Move required Python version to 3.9
- Update pyarrow to 13.0.0
- Plots generated by the
jsdomrenderer can now be saved to HTML or SVG files - Update Observable Plot to 0.6.11
- Update anywidget to 0.6.5
- Update Observable Plot to 0.6.10
- Add styling for titles, subtitles and captions
- Update anywidget to 0.6.3
- Update Observable Plot to 0.6.9
- Update anywidget to 0.6.1
- Fix UnicodeDecodeError with widget renderer on Windows (#17, thanks @harrylojames)
- Timestamp and datetime dataframe columns are now converted to JavaScript Date (#19, thanks @harrylojames)
- Update anywidget to 0.4.3
- Update Observable Plot to 0.6.8 (tooltips and interactions in widget renderer)
- Add light/dark/current modes
- Update apache-arrow to 12.0.0
- Update anywidget to 0.4.2
- Add small padding around figure outputs for jsdom renderer to improve presentation over non-white backgrounds.
- Update Observable Plot to 0.6.6.
jsdomrenderer now uses a local http server instead of calling a script at each invocation, greatly improving rendering speed.- Autocompletion of Plot methods should now be working in IDEs.
- Ensure that the needed version of the npm package is run if jsdom renderer is used.
- Debug mode also works with
jsdomrenderer. - Plot generator objects now have correct
__repr__methods. - Update anywidget to 0.2.3.
- Fix: "Exception not rethrown" errors in pytest.
- Add ability to specify some default spec values to plot generator objects.
rangeobjects are correctly serialized as lists forjsdomrenderer.- Fix: don't add styles to svg or html output if these styles are already present.
- Fix: jsdom renderer not working on Windows.
- It is now possible to use
Plot.plot()directly when creating a plot with default settings.Thanks to @fil for the idea. - GeoJson data passed as
stringinstead ofdictis serialized correctly. - Add debug mode to output.
- Breaking change: new API, plots are now generated with a plot generator object created by calling
Obsplot(). Thanks to @fil for the idea. - Fix: wrong
__version__value.
- Fix: plot not recreated correctly on widget value change.
- Fix: add watchfiles to dependencies to prevent error in Colab.
- Fix: mixing renderers in Jupyter lab moves all outputs to widgets.
- Compatibility with Python 3.8.
- New
jsdomrenderer which allows to generate plots as SVG or HTML instead of widgets. - Update Observable Plot to 0.6.5.
- First released version.