196 lines
8.2 KiB
Markdown
196 lines
8.2 KiB
Markdown
|
|
# Plots.jl NEWS
|
|
|
|
#### notes on release changes, ongoing development, and future planned work
|
|
|
|
- All new development should target 0.7!
|
|
|
|
---
|
|
|
|
## 0.7 (current master/dev)
|
|
|
|
#### 0.7.1
|
|
|
|
- inset (floating) subplots
|
|
- change: when setting subplot/axis args from user recipes, they should apply only to their own subplot
|
|
- trim for violin/boxplot
|
|
- scatter3d recipe
|
|
- removed plotly.js in favor of build.jl download
|
|
- improvements/fixes to pgfplots backend
|
|
- improvements/fixes to plotly/plotlyjs backends
|
|
- titles are annotations and properly placed with title_position
|
|
- hover attribute
|
|
- shapes (almost)
|
|
- scattergl
|
|
- minimum perimeter logic in layout calc... fixed misaligned subplots
|
|
- new clims attribute
|
|
- more options for test_examples
|
|
- GR refactor
|
|
- added transparency
|
|
- moved axis/grid logic out of series loop
|
|
- generalized 3d and polar projections
|
|
- renamed get_mod to Base.cycle
|
|
- pyplot log scale fixes
|
|
- PLOTS_DEFAULTS environment var processing
|
|
- rename :ellipse to :circle, :ellipse is now an alias
|
|
- supported args/types cleanup
|
|
- seriestype dependency methods and `@deps` macro
|
|
- bbox `h_anchor`/`v_anchor`
|
|
- new axis arg: `:link` is a list of subplots to link axes with
|
|
- cleanup/simplification of glvisualize backend
|
|
|
|
|
|
#### 0.7.0
|
|
|
|
- Check out [the summary](http://plots.readthedocs.io/en/latest/plots_v0.7/)
|
|
- Revamped and simplified internals
|
|
- [Recipes, recipes, recipes](https://github.com/JuliaPlots/RecipesBase.jl/issues/6)
|
|
- [Layouts and Subplots](https://github.com/tbreloff/Plots.jl/issues/60)
|
|
- DataFrames is loaded automatically when installed
|
|
- Overhaul to GroupBy mechanic (now offloads to a recipe)
|
|
- Replaced much of the argument processing with recipes
|
|
- Added series recipes, and began to strip down un-needed backend code. Some recipes:
|
|
- line, step, sticks, bar, histogram, histogram2d, boxplot, violin, quiver, errorbars, density, ohlc
|
|
- Added `@shorthands` and `@userplot` macros for recipe convenience
|
|
- Better handling of errorbars and ribbons
|
|
- New Axis type
|
|
- Tracks extrema and discrete values
|
|
- New `link_axes` functionality
|
|
- `linetype` has been renamed `seriestype` (the alias is reversed)
|
|
- Many fixes and huge cleanup in GR
|
|
- Brand new subplot layout mechanics:
|
|
- `@layout` macro
|
|
- AbstractLayout, Subplot, GridLayout, and everything related
|
|
- Added dependency on Measures.jl
|
|
- Computations of axis/guide sizes and precise positioning
|
|
- Refactored and compartmentalized default dictionaries for attributes
|
|
- Deprecated Gadfly and Immerse backends
|
|
- Added `series_annotations` attribute (previously that functionality was merged with `annotations`, which are not series-specific)
|
|
- Removed `axis` attribute... currently not supporting twin (right) y axes
|
|
- Check for `ENV["PLOTS_USE_ATOM_PLOTPANE"]` and default to false
|
|
- Improved backend interface to reduce redundant code. Template updated.
|
|
- Added `html_output_format`, primarily for choosing between png and svg output in IJulia.
|
|
- Partial support of Julia v0.5
|
|
- Switched testing to dump reference images to JuliaPlots/PlotReferenceImages.jl
|
|
- Moved docs-specific code to new JuliaPlots/PlotDocs.jl
|
|
- Moved example list from ExamplePlots into Plots.
|
|
- Added several examples and improved others.
|
|
- Many other smaller changes and bug fixes.
|
|
|
|
|
|
---
|
|
|
|
## Version 0.6
|
|
|
|
#### 0.6.2
|
|
|
|
- `linewidth` fixes
|
|
- `markershape` fix
|
|
- converted center calc to centroid for shapes
|
|
- new dependency on [RecipesBase](https://github.com/JuliaPlots/RecipesBase.jl)
|
|
- REQUIRE upper limit for RecipesBase: 0.0.1
|
|
- GR fixes/improvements (@jheinen)
|
|
- support `zlims`, `bins`
|
|
- allow Plots colormaps
|
|
- other bug fixes
|
|
- native image support
|
|
- PGFPlots fixes/improvements (@pkofod)
|
|
- DataFrames are handled by recipes
|
|
- Plotly: zaxis, tick rotation, 3d axis fix
|
|
- Improvements in handling discrete data
|
|
- Support for image display
|
|
- `arrow` keyword and support for adding arrows to paths
|
|
- changed quiver recipe to use arrows
|
|
- Bug fixes for boxplots, heatmaps, and more
|
|
|
|
#### 0.6.1
|
|
|
|
- `rotation` keyword
|
|
- improved supported graphs
|
|
- subplot bug fix
|
|
|
|
#### 0.6.0
|
|
|
|
- `apply_series_recipe` framework for built-in recipes
|
|
- [boxplot/violin recipes](https://github.com/tbreloff/ExamplePlots.jl/blob/master/notebooks/boxplot.ipynb)
|
|
- [errorbar/ribbon recipes](https://github.com/tbreloff/ExamplePlots.jl/blob/master/notebooks/errorbars.ipynb)
|
|
- [quiver recipe](https://github.com/tbreloff/ExamplePlots.jl/blob/master/notebooks/quiver.ipynb)
|
|
- `polar` coordinates
|
|
- better support for shapes and custom polygons (see [batman](https://github.com/tbreloff/ExamplePlots.jl/blob/master/notebooks/batman.ipynb))
|
|
- z-axis keywords
|
|
- 3D indexing overhaul: `push!`, `append!` support
|
|
- matplotlib colormap constants (`:inferno` is the new default colormap for Plots)
|
|
- `typealias KW Dict{Symbol,Any}` used in place of splatting in many places
|
|
- png generation for plotly backend using wkhtmltoimage
|
|
- `normalize` and `weights` keywords
|
|
- background/foreground subcategories for fine-tuning of looks
|
|
- `add_theme`/`set_theme` and ggplot2 theme (see [this issue](https://github.com/tbreloff/Plots.jl/issues/201))
|
|
- `PLOTS_DEFAULT_BACKEND` environment variable
|
|
- `barh` linetype
|
|
- support for non-gridded surfaces with pyplot's trisurface
|
|
- pyplot surface zcolor
|
|
- internal refactor of supported.jl
|
|
- `wrap` method to bypass input processing
|
|
- `translate`, `scale` and `rotate` methods for coordinates and shapes
|
|
- and many more minor fixes and improvements
|
|
|
|
---
|
|
|
|
## Version 0.5
|
|
|
|
#### 0.5.4
|
|
|
|
- old heatmaps have been renamed to hist2d, and true heatmaps implemented (see https://github.com/tbreloff/Plots.jl/issues/147)
|
|
- lots of reorganization and redesign of the internals
|
|
- lots of renaming to keep to conventions: AbstractPlot, AbstractBackend, etc
|
|
- initial redesign of layouts
|
|
- integration with Atom PlotPane
|
|
- arc diagram and chord diagram (thanks to @diegozea: see https://github.com/tbreloff/Plots.jl/issues/163)
|
|
- work on GR, GLVisualize, and PGFPlots backends (thanks @jheinen @dlfivefifty @pkofod)
|
|
- improvements to Plotly setup (thanks @spencerlyon2)
|
|
- overhaul to series creation logic and groupby mechanic
|
|
- replace Dict with `typealias KW Dict{Symbol,Any}` in many places, also replacing keyword arg splatting
|
|
- new `shape` linetype for plotting polygons in plot-coordinates (see https://github.com/tbreloff/ExamplePlots.jl/blob/master/notebooks/batman.ipynb)
|
|
- many other fixes
|
|
|
|
#### 0.5.3
|
|
|
|
- `@gif` macro with `every`/`when` syntax
|
|
- bezier curves and other graph drawing helpers
|
|
- added FixedSizeArrays dependency with relevant functionality
|
|
- merged lots of improvements to GR (thanks @jheinen)
|
|
- `overwrite_figure`/`reuse` arg for reusing the same figure window
|
|
- deprecated Qwt, Winston, and Bokeh backends
|
|
- improved handling of 3D inputs (call `z=rand(10,10); surface(z)` for example)
|
|
- fix IJulia display issue
|
|
- lots of progress on PlotlyJS backend
|
|
- and many other changes and fixes...
|
|
|
|
#### 0.5.2
|
|
|
|
- Added [GR.jl](https://github.com/jheinen/GR.jl) as a backend (unfinished but functional) All credit to @jheinen
|
|
- Set defaults within backend calls (i.e. `gadfly(legend=false)`)
|
|
- `abline!`; also extrema allows plotting functions without giving x (i.e. `plot(cos, 0, 10); plot!(sin)`) @pkofod @joshday
|
|
- Integration with [PlotlyJS.jl](https://github.com/spencerlyon2/PlotlyJS.jl) for using Plotly inside a Blink window @spencerlyon2
|
|
- The Plotly backend has been split into my built-in version (`plotly()`) and @spencerlyon2's backend (`plotlyjs()`)
|
|
- Revamped backend setup code for easily adding new backends
|
|
- New docs (WIP) at http://plots.readthedocs.org/
|
|
- Overhaul to `:legend` keyword (see https://github.com/tbreloff/Plots.jl/issues/135)
|
|
- New dependency on Requires, allows auto-loading of DataFrames support
|
|
- Support for plotting lists of Tuples and FixedSizeArrays
|
|
- new `@animate` macro for super simple animations (see https://github.com/tbreloff/Plots.jl/issues/111#issuecomment-181515616)
|
|
- allow Function for `:fillrange` and `zcolor` arguments (for example: `scatter(sin, 0:10, marker=15, fill=(cos,0.4), zcolor=sin)`)
|
|
- allow vectors of PlotText without x/y coords (for example: `scatter(rand(10), m=20, ann=map(text, 1:10))`)
|
|
- Lots and lots of fixes
|
|
|
|
#### 0.5.1
|
|
|
|
#### 0.5.0
|
|
|
|
- `with` function for temporary defaults
|
|
- contours
|
|
- basic 3D plotting
|
|
- preliminary support for Bokeh
|
|
- `stroke` and `brush` for more fine-tuned control over visuals
|
|
- smarter "magic" arguments: `line`, `marker`
|