Skip to content

Commit 6563edb

Browse files
committed
sync with master
2 parents d0500ff + 414b84b commit 6563edb

File tree

7,339 files changed

+712576
-51165
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

7,339 files changed

+712576
-51165
lines changed

Diff for: .circleci/config.yml

+464
Large diffs are not rendered by default.

Diff for: .circleci/create_conda_optional_env.sh

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#!/usr/bin/env bash
2+
3+
if [ ! -d $HOME/miniconda/envs/circle_optional ]; then
4+
# Download miniconda
5+
if [ "$PYTHON_VERSION" = "2.7" ]; then
6+
wget http://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh -O miniconda.sh
7+
else
8+
wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh
9+
fi
10+
11+
chmod +x miniconda.sh
12+
13+
# Install miniconda
14+
./miniconda.sh -b -p $HOME/miniconda
15+
16+
# Create environment
17+
# PYTHON_VERSION=3.6
18+
$HOME/miniconda/bin/conda create -n circle_optional --yes python=$PYTHON_VERSION \
19+
requests six pytz retrying psutil pandas decorator pytest mock nose poppler
20+
21+
# Install orca into environment
22+
$HOME/miniconda/bin/conda install --yes -n circle_optional -c plotly plotly-orca
23+
fi

Diff for: .circleci/create_conda_packages.sh

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Install conda dependencies
2+
conda install -y conda-build conda-verify zip
3+
4+
# Perform build
5+
conda build --python $PYTHON_VERSION recipe/
6+
7+
# Convert to other architectures
8+
mkdir -p ./conda_packages_${PYTHON_VERSION}/linux-64/
9+
cp /opt/conda/conda-bld/linux-64/plotly-*.tar.bz2 ./conda_packages_${PYTHON_VERSION}/linux-64/
10+
conda convert -p linux-32 ./conda_packages_${PYTHON_VERSION}/linux-64/plotly-*.tar.bz2 -o ./conda_packages_${PYTHON_VERSION}/
11+
conda convert -p osx-64 ./conda_packages_${PYTHON_VERSION}/linux-64/plotly-*.tar.bz2 -o ./conda_packages_${PYTHON_VERSION}/
12+
conda convert -p win-64 ./conda_packages_${PYTHON_VERSION}/linux-64/plotly-*.tar.bz2 -o ./conda_packages_${PYTHON_VERSION}/
13+
conda convert -p win-32 ./conda_packages_${PYTHON_VERSION}/linux-64/plotly-*.tar.bz2 -o ./conda_packages_${PYTHON_VERSION}/
14+
15+
# zip up packages into artifacts directory
16+
mkdir artifacts
17+
zip -r artifacts/conda_packages_${PYTHON_VERSION}.zip ./conda_packages_${PYTHON_VERSION}/

Diff for: .circleci/install_miniconda_and_build_.sh

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!/usr/bin/env bash
2+
3+
if [ ! -d $HOME/miniconda/ ]; then
4+
# Download miniconda
5+
wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh
6+
7+
chmod +x miniconda.sh
8+
9+
# Install miniconda
10+
./miniconda.sh -b -p $HOME/miniconda
11+
12+
# Create environment
13+
# PYTHON_VERSION=3.6
14+
$HOME/miniconda/bin/conda install conda-build conda-verify
15+
fi

Diff for: .gitignore

+19-5
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,28 @@
1010

1111
*.tox
1212

13-
build
14-
15-
dist
16-
1713
debug_script.py
1814

1915
test_output.txt
2016

2117
plotly/api/v2/spectacle_presentations.py
2218

23-
plotly/presentation_objs/
19+
plotly/presentation_objs/
20+
21+
.idea
22+
23+
js/node_modules/
24+
25+
.pytest_cache
26+
27+
# virtual envs
28+
vv
29+
venv
30+
31+
# dist files
32+
build
33+
dist
34+
plotly.egg-info/
35+
36+
plotly/tests/test_orca/images/*/failed
37+
plotly/tests/test_orca/images/*/tmp

Diff for: CHANGELOG.md

+288-2
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,295 @@
22
All notable changes to this project will be documented in this file.
33
This project adheres to [Semantic Versioning](http://semver.org/).
44

5-
## [2.7.1] - [UNRELEASED]
5+
## [3.3.0] - 2018-09-28
6+
7+
### Updated
8+
- Updated Plotly.js to version 1.41.3. Select highlights included below, see
9+
[the plotly.js CHANGELOG](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md#1413----2018-09-25)
10+
for more information.
11+
- Do not create or check permissions on the `~/.plotly` configuration
12+
directory until a configuration write operation is performed
13+
([#1195](https://github.com/plotly/plotly.py/pull/1195)). This change
14+
avoids some concurrency problems associated with running many instances of
15+
plotly.py simultaneously
16+
([#1068](https://github.com/plotly/plotly.py/issues/1068)).
17+
18+
### Added
19+
- Enable selection by clicking on points via new layout attribute `clickmode` and flag `'select'`
20+
([#2944](https://github.com/plotly/plotly.js/pull/2944))
21+
- Added stacked area charts via new attributes `stackgroup` and `stackgaps` in scatter traces
22+
([#2960](https://github.com/plotly/plotly.js/pull/2960))
23+
- Added `barpolar` trace type - which replace and augment area traces
24+
([#2954](https://github.com/plotly/plotly.js/pull/2954))
25+
- Added `polar.hole` layout parameter to punch hole at the middle of polar
26+
subplot offsetting the start of the radial range
27+
([#2977](https://github.com/plotly/plotly.js/pull/2977), [#2996](https://github.com/plotly/plotly.js/pull/2996))
28+
- Figures may now be easily converted to and from JSON using the new
29+
`to_json`, `from_json`, `read_json`, and `write_json` functions in the
30+
`plotly.io` package
31+
([#1188](https://github.com/plotly/plotly.py/pull/1188))
32+
- Figures and graph objects now support `deepcopy` and `pickle` operations
33+
([#1191](https://github.com/plotly/plotly.py/pull/1191))
34+
- The location of the `"~/.plotly"` settings directory may now be customized
35+
using the `PLOTLY_DIR` environment variable
36+
([#1195](https://github.com/plotly/plotly.py/pull/1195))
37+
- Added optional `scaleratio` argument to the `create_quiver` figure factory.
38+
When specified, the axes are restricted to this ratio and the quiver arrows
39+
are computed to have consistent lengths across angles.
40+
([#1197](https://github.com/plotly/plotly.py/pull/1197))
41+
42+
### Fixed
43+
- Replace use of `pkg_resources.resource_string` with `pkgutil.get_data` to
44+
improve compatibility with `cx_Freeze`
45+
([#1201](https://github.com/plotly/plotly.py/pull/1201))
46+
- An exception is no longer raised when an optional dependency raises an
47+
exception on import. The exception is logged and plotly.py continues as if
48+
the dependency were not installed
49+
([#1192](https://github.com/plotly/plotly.py/pull/1192))
50+
- Fixed invalid dendrogram axis labels when the points being clustered contain
51+
duplicate values
52+
([#1186](https://github.com/plotly/plotly.py/pull/1186))
53+
- Added missing LICENSE.txt file to PyPI source distribution
54+
([#765](https://github.com/plotly/plotly.py/issues/765))
55+
56+
### JupyterLab Versions
57+
For use with JupyterLab, the following versions of the following packages
58+
must be installed:
59+
60+
- Python Packages
61+
- plotly==3.3.0
62+
- ipywidgets>=7.2
63+
- notebook>=5.3
64+
- jupyterlab==0.34
65+
66+
- JupyterLab Extensions
67+
68+
- @jupyter-widgets/jupyterlab-manager@0.37
69+
- @jupyterlab/plotly-extension@0.17
70+
71+
## [3.2.1] - 2018-09-14
72+
This is a patch release that fixes a few bugs and reintroduces a few
73+
version 2 features that were not supported in version 3.
74+
75+
The bundled version of plotly.js remains at 1.40.1
76+
77+
### JupyterLab Versions
78+
For use with JupyterLab, the following versions of the following packages
79+
must be installed:
80+
81+
- Python Packages
82+
- plotly==3.2.1
83+
- ipywidgets>=7.2
84+
- notebook>=5.3
85+
- jupyterlab==0.34
86+
87+
- JupyterLab Extensions
88+
89+
- @jupyter-widgets/jupyterlab-manager@0.37
90+
- @jupyterlab/plotly-extension@0.17
91+
92+
### Added
93+
- An optional `skip_invalid` argument has been added to the `Figure` and
94+
`FigureWidget` constructors. By default, `skip_invalid` is `False` and invalid
95+
figure properties will result in an exception (this is identical to the
96+
previous behavior). When `skip_invalid` is set to `True`, invalid properties
97+
will instead be silently ignored. This argument replaces the `_raise`
98+
argument that was available in version 2, and makes it possible to import
99+
figure definitions from different plotly versions, where incompatible
100+
properties are ignored rather than causing an exception.
101+
- A `to_ordered_dict` method has been added to the `Figure` and `FigureWidget`
102+
classes. This method returns a representation of the figure as a nested
103+
structure of `OrdererdDict` and `list` instances where the keys in each
104+
`OrderedDict` are sorted alphabetically. This method replaces the
105+
`get_ordered` method that was available in version 2, and makes it possible
106+
to traverse the nested structure of a figure in a deterministic order.
107+
108+
### Fixed
109+
- Pandas `Series` and `Index` objects storing `datetime` values were
110+
incorrectly cast to numeric arrays
111+
([plotly/plotly.py#1160](https://github.com/plotly/plotly.py/issues/1160),
112+
[plotly/plotly.py#1163](https://github.com/plotly/plotly.py/pull/1163))
113+
- Numpy arrays with `uint64` datatype caused a `FigureWidget` error,
114+
and no figure was displayed
115+
([plotly/plotly.py#1155](https://github.com/plotly/plotly.py/issues/1155),
116+
[plotly/plotly.py#1163](https://github.com/plotly/plotly.py/pull/1163))
117+
118+
## [3.2.0] - 2018-09-05
119+
This release introduces the long-anticipated ability to programmatically
120+
export figures as high quality static images in both raster and vector
121+
formats.
122+
123+
### JupyterLab Versions (Python 3.5+)
124+
For use with JupyterLab, the following versions of the following packages
125+
must be installed:
126+
127+
- Python Packages
128+
- plotly==3.2.0
129+
- ipywidgets>=7.2
130+
- notebook>=5.3
131+
- jupyterlab==0.34
132+
133+
- JupyterLab Extensions
134+
135+
- @jupyter-widgets/jupyterlab-manager@0.37
136+
- @jupyterlab/plotly-extension@0.17
137+
138+
### Added
139+
- plotly.js version 1.40.1, which introduces the following features:
140+
- Allow `contour`, `contourcarpet` and `histogram2dcontour` to have corresponding legend items using `showlegend`
141+
([plotly/plotly.js#2891](https://github.com/plotly/plotly.js/pull/2891),
142+
[plotly/plotly.js#2914](https://github.com/plotly/plotly.js/pull/2914))
143+
- Add scatterpolar and scatterpolargl attributes `r0`, `dr`, `theta0` and `dtheta`
144+
([plotly/plotly.js#2895](https://github.com/plotly/plotly.js/pull/2895))
145+
- Add layout attributes `piecolorway` and `extendpiecolors` for more control over pie colors
146+
([plotly/plotly.js#2870](https://github.com/plotly/plotly.js/pull/2870))
147+
- Add `splom` attribute `dimensions[i].axis.type` to easily override axis type in splom-generated axes
148+
([plotly/plotly.js#2899](https://github.com/plotly/plotly.js/pull/2870))
149+
- Add support for on-graph text in `scatterpolargl` traces
150+
([plotly/plotly.js#2895](https://github.com/plotly/plotly.js/pull/2895))
151+
- See [the plotly.js CHANGELOG](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md#1400----2018-08-16)
152+
for bug fixes and more information.
153+
- Support for offline static image export with the `to_image` and `write_image`
154+
functions in the new `plotly.io` package ([#1120](https://github.com/plotly/plotly.py/pull/1120)).
155+
- Note: Image export requires the plotly [orca](https://github.com/plotly/orca)
156+
command line utility and the [`psutil`](https://github.com/giampaolo/psutil) Python package.
157+
- New documentation sections covering [Static Image Export](https://plot.ly/python/static-image-export/)
158+
and [Orca Management](https://plot.ly/python/orca-management/)
159+
- Support for displaying `FigureWidget` instances in static contexts
160+
(e.g. [nbviewer](http://nbviewer.jupyter.org/)) just like the built-in ipywidgets
161+
([#1117](https://github.com/plotly/plotly.py/pull/1117))
162+
- Full integration of the Cividis colorscale ([#883](https://github.com/plotly/plotly.py/pull/883))
163+
- conda packaging
164+
- From here forward, new versions of plotly.py will be published to the [plotly anaconda channel](https://anaconda.org/plotly/)
165+
on the same day they are published to PyPI.
166+
([72ad0e4](https://github.com/plotly/plotly.py/commit/72ad0e4bf54bb8a06445d2ca55488ffc11c836a7))
167+
- The [`README`](README.md) now includes conda installation instructions alongside the pip instructions.
168+
- In addition to the existing installation approaches, orca is now also available as a
169+
[conda package](https://anaconda.org/plotly/plotly-orca) from the plotly anaconda channel.
170+
6171
### Updated
7-
- error message for `plotly.figure_factory.create_choropleth` is now helpful to Anaconda users who do not have the correct modules installed for the County Choropleth figure factory.
172+
- Show traces at the top of the Gantt chart's colorbar ([#1110](https://github.com/plotly/plotly.py/pull/1110))
173+
- Significantly improved validation performance for numeric pandas `Series` objects ([#1149](https://github.com/plotly/plotly.py/pull/1149))
174+
- Specialize auto-generated docstrings for Python syntax
175+
- More robust and specific logic for retrying requests to the plot.ly cloud service ([#1146](https://github.com/plotly/plotly.py/pull/1146))
176+
- Support basic authentication when using the streaming API behind a proxy server ([#1133](https://github.com/plotly/plotly.py/pull/1133))
177+
178+
### Fixed
179+
- Validators for `dash` properties (e.g. `scatter.line.dash`) incorrectly rejected dash length lists ([#1136](https://github.com/plotly/plotly.py/pull/1136))
180+
- Annotated heatmap error when custom colorscale was specified ([#1151](https://github.com/plotly/plotly.py/pull/1151))
181+
- Incorrect deprecation warning for deprecated `plotly.graph_objs.Annotations` class ([#1138](https://github.com/plotly/plotly.py/pull/1138))
182+
- Harmless JavaScript console error when opening an html file produced by `plotly.offline.plot` ([#1152](https://github.com/plotly/plotly.py/pull/1152))
183+
- Incorrect validation errors when writing data to the streaming API ([#1145](https://github.com/plotly/plotly.py/pull/1145))
184+
185+
186+
## [3.1.1] - 2018-08-10
187+
This release is a minor bug-fix update to version 3.1.0
188+
189+
### JupyterLab Versions
190+
For use with JupyterLab, the following versions of the following packages
191+
must be installed:
192+
193+
- Python Packages
194+
- plotly==3.1.1
195+
- ipywidgets>=7.2
196+
- notebook>=5.3
197+
- jupyterlab==0.33
198+
199+
- JupyterLab Extensions
200+
201+
- @jupyter-widgets/jupyterlab-manager@0.36
202+
- @jupyterlab/plotly-extension@0.16
203+
204+
### Updated
205+
- Updated plotly.js to version 1.39.4.
206+
- This is a bug-fix release of plotly.js
207+
- See [the plotly.js CHANGELOG](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md#1394----2018-08-02) for more information
208+
209+
### Fixed
210+
- Fixed error in validation of configkeys
211+
[plotly/plotly.js#1065](https://github.com/plotly/plotly.py/pull/1065)
212+
- Fixed error in presentation of named colorscales
213+
[plotly/plotly.js#1089](https://github.com/plotly/plotly.py/pull/1089)
214+
- Fixed numerical precision error when using `plotly.tools.make_subplots`
215+
to create figures with a large number of subplots
216+
[plotly/plotly.js#1091](https://github.com/plotly/plotly.py/pull/1091)
217+
- Fixed problem that prevented the use of the `.update` method to initialize
218+
an array property (e.g. `layout.shapes`)
219+
[plotly/plotly.js#1091](https://github.com/plotly/plotly.py/pull/1092)
220+
- Fixed `FigureWidget` problem causing scroll zoom on 3D plots to stutter
221+
[plotly/plotly.js#1094](https://github.com/plotly/plotly.py/pull/1094)
222+
- Fixed invalid `tickmode` property in `matplotlylib`
223+
[plotly/plotly.js#1101](https://github.com/plotly/plotly.py/pull/1101)
224+
225+
## [3.1.0] - 2018-07-20
226+
227+
### JupyterLab Versions
228+
For use with JupyterLab, the following versions of the following packages
229+
must be installed. See [README.md](README.md) for instructions.
230+
231+
- Python Packages
232+
- plotly==3.1.0
233+
- ipywidgets>=7.2
234+
- notebook>=5.3
235+
- jupyterlab==0.32.1
236+
237+
- JupyterLab Extensions
238+
239+
- @jupyter-widgets/jupyterlab-manager@0.35
240+
- @jupyterlab/plotly-extension@0.16
241+
242+
### Updated
243+
- Updated Plotly.js to version 1.39.2
244+
- See highlights below
245+
- See [the plotly.js CHANGELOG](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md#1392----2018-07-16) for more information.
246+
247+
### Added
248+
- Added 3D streamtube traces
249+
[plotly/plotly.js#2658](https://github.com/plotly/plotly.js/pull/2658)
250+
- Added support for on-graph text in scattergl traces
251+
- Added gridshape attribute to polar subplots with values 'circular' (the default) and 'linear' (to draw polygon grids)
252+
[plotly/plotly.js#2739](https://github.com/plotly/plotly.js/pull/2739)
253+
254+
## [3.0.2] - 2018-07-17
255+
This is a minor bug-fix release to 3.0.0
256+
257+
### JupyterLab plotlywidget version: 0.1.1
258+
259+
### Plotly.js version: 1.38.3
260+
261+
### Fixed
262+
- Several errors related to numbered subplot labels (e.g. xaxis2, polar3, etc.)
263+
[GH1057](https://github.com/plotly/plotly.py/pull/1057)
264+
- Error where the `v` property was ignored in `cone` traces
265+
[GH1060](https://github.com/plotly/plotly.py/pull/1060)
266+
- Assorted performance improvements when constructing graph objects
267+
[GH1061](https://github.com/plotly/plotly.py/pull/1061)
268+
269+
## [3.0.1] - 2018-07-17 [YANKED]
270+
Note: This release's installation was broken. It has been removed from PyPI
271+
272+
## [3.0.0] - 2018-07-05
273+
274+
This is a major version with many exciting updates. See the [Introducing plotly.py 3.0.0](https://medium.com/@plotlygraphs/introducing-plotly-py-3-0-0-7bb1333f69c6) post for more information.
275+
276+
### JupyterLab plotlywidget version: 0.1.1
277+
278+
### Plotly.js version: 1.38.3
279+
280+
### Added
281+
- Full Jupyter ipywidgets integration with the new `graph_objs.FigureWidget` class
282+
- `FigureWidget` figures can be updated interactively using property assignment syntax
283+
- The full trace and layout API is generated from the plotly schema to provide a great experience for interactive use in the notebook
284+
- Support for setting array properties as numpy arrays. When numpy arrays are used, ipywidgets binary serialization protocol is used to avoid converting these to JSON strings.
285+
- Context manager API for animation. Run `help(go.Figure().batch_animate)` for the full doc string.
286+
- Perform automatic retries when communicating with plot.ly services. This introduces a new required dependency on the [retrying](https://pypi.org/project/retrying/) library.
287+
- Improved data validation covering the full API with clear, informative error messages. This means that incorrect properties and/or values now always raise a `ValueError` with a description of the error, the invalid property, and the available properties on the level that it was placed in the graph object. Eg. `go.Scatter(foo=123)` raises a validation error. See https://plot.ly/python/reference/ for a reference to all valid properties and values in the Python API.
288+
- Error message for `plotly.figure_factory.create_choropleth` is now helpful to Anaconda users who do not have the correct modules installed for the County Choropleth figure factory.
289+
290+
### Changed / Deprecated
291+
Please see the [migration guid](migration-guide.md) for a full list of the changes and deprecations in version 3.0.0
292+
293+
8294

9295
## [2.7.0] - 2018-05-23
10296
### Updated

Diff for: LICENSE.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The MIT License (MIT)
22

3-
Copyright (c) 2016-2017 Plotly, Inc
3+
Copyright (c) 2016-2018 Plotly, Inc
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

0 commit comments

Comments
 (0)