figpack 0.2.4__py3-none-any.whl → 0.2.6__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of figpack might be problematic. Click here for more details.

Files changed (31) hide show
  1. figpack/__init__.py +5 -1
  2. figpack/cli.py +2 -118
  3. figpack/core/_bundle_utils.py +5 -6
  4. figpack/core/_save_figure.py +31 -0
  5. figpack/core/_server_manager.py +0 -2
  6. figpack/core/_show_view.py +22 -22
  7. figpack/core/_upload_bundle.py +61 -22
  8. figpack/core/_view_figure.py +138 -0
  9. figpack/core/figpack_view.py +74 -25
  10. figpack/{figpack-gui-dist/assets/index-CuFseOGX.js → figpack-figure-dist/assets/index-HXdk2TtM.js} +58 -58
  11. figpack/{figpack-gui-dist → figpack-figure-dist}/index.html +1 -1
  12. figpack/spike_sorting/views/Autocorrelograms.py +29 -19
  13. figpack/spike_sorting/views/CrossCorrelograms.py +29 -19
  14. figpack/spike_sorting/views/UnitsTable.py +27 -8
  15. figpack/views/Gallery.py +88 -0
  16. figpack/views/GalleryItem.py +47 -0
  17. figpack/views/Image.py +37 -0
  18. figpack/views/Markdown.py +12 -2
  19. figpack/views/MatplotlibFigure.py +26 -3
  20. figpack/views/PlotlyFigure.py +18 -2
  21. figpack/views/__init__.py +2 -0
  22. figpack-0.2.6.dist-info/METADATA +96 -0
  23. figpack-0.2.6.dist-info/RECORD +53 -0
  24. figpack-0.2.4.dist-info/METADATA +0 -168
  25. figpack-0.2.4.dist-info/RECORD +0 -49
  26. /figpack/{figpack-gui-dist → figpack-figure-dist}/assets/index-Cmae55E4.css +0 -0
  27. /figpack/{figpack-gui-dist → figpack-figure-dist}/assets/neurosift-logo-CLsuwLMO.png +0 -0
  28. {figpack-0.2.4.dist-info → figpack-0.2.6.dist-info}/WHEEL +0 -0
  29. {figpack-0.2.4.dist-info → figpack-0.2.6.dist-info}/entry_points.txt +0 -0
  30. {figpack-0.2.4.dist-info → figpack-0.2.6.dist-info}/licenses/LICENSE +0 -0
  31. {figpack-0.2.4.dist-info → figpack-0.2.6.dist-info}/top_level.txt +0 -0
@@ -1,168 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: figpack
3
- Version: 0.2.4
4
- Summary: A Python package for creating shareable, interactive visualizations in the browser
5
- Author-email: Jeremy Magland <jmagland@flatironinstitute.org>
6
- License: Apache-2.0
7
- Project-URL: Homepage, https://github.com/magland/figpack
8
- Project-URL: Repository, https://github.com/magland/figpack
9
- Project-URL: Documentation, https://github.com/magland/figpack#readme
10
- Project-URL: Bug Tracker, https://github.com/magland/figpack/issues
11
- Keywords: visualization,plotting,timeseries,interactive
12
- Classifier: Development Status :: 3 - Alpha
13
- Classifier: Intended Audience :: Developers
14
- Classifier: Intended Audience :: Science/Research
15
- Classifier: License :: OSI Approved :: Apache Software License
16
- Classifier: Operating System :: OS Independent
17
- Classifier: Programming Language :: Python :: 3
18
- Classifier: Programming Language :: Python :: 3.8
19
- Classifier: Programming Language :: Python :: 3.9
20
- Classifier: Programming Language :: Python :: 3.10
21
- Classifier: Programming Language :: Python :: 3.11
22
- Classifier: Programming Language :: Python :: 3.12
23
- Classifier: Topic :: Scientific/Engineering :: Visualization
24
- Requires-Python: >=3.8
25
- Description-Content-Type: text/markdown
26
- License-File: LICENSE
27
- Requires-Dist: numpy
28
- Requires-Dist: zarr<3
29
- Requires-Dist: requests
30
- Requires-Dist: psutil
31
- Provides-Extra: test
32
- Requires-Dist: pytest>=7.0; extra == "test"
33
- Requires-Dist: pytest-cov>=4.0; extra == "test"
34
- Requires-Dist: pytest-mock>=3.10; extra == "test"
35
- Requires-Dist: spikeinterface; extra == "test"
36
- Requires-Dist: matplotlib; extra == "test"
37
- Requires-Dist: plotly; extra == "test"
38
- Provides-Extra: dev
39
- Requires-Dist: pytest>=7.0; extra == "dev"
40
- Requires-Dist: pytest-cov>=4.0; extra == "dev"
41
- Requires-Dist: pytest-mock>=3.10; extra == "dev"
42
- Requires-Dist: black>=24.0; extra == "dev"
43
- Requires-Dist: pre-commit>=3.0; extra == "dev"
44
- Dynamic: license-file
45
-
46
- # figpack
47
-
48
- A Python package for creating shareable, interactive visualizations in the browser.
49
-
50
- ## Overview
51
-
52
- figpack enables you to create interactive data visualizations that can be displayed in a web browser and optionally shared online. The package focuses on timeseries data visualization with support for complex, nested layouts.
53
-
54
- ### Key Features
55
-
56
- - **Interactive timeseries graphs** with line series, markers, and interval plots
57
- - **Flexible layout system** with boxes, splitters, and tab layouts
58
- - **Web-based rendering** that works in any modern browser
59
- - **Shareable visualizations** that can be uploaded and shared via URLs
60
- - **Zarr-based data storage** for efficient handling of large datasets
61
-
62
- ## Installation
63
-
64
- Install figpack using pip:
65
-
66
- ```bash
67
- pip install figpack
68
- ```
69
-
70
- ## Quick Start
71
-
72
- ```python
73
- import numpy as np
74
- import figpack.views as vv
75
-
76
- # Create a timeseries graph
77
- graph = vv.TimeseriesGraph(y_label="Signal")
78
-
79
- # Add some data
80
- t = np.linspace(0, 10, 1000)
81
- y = np.sin(2 * np.pi * t)
82
- graph.add_line_series(name="sine wave", t=t, y=y, color="blue")
83
-
84
- # Display the visualization
85
- graph.show(open_in_browser=True, title="Quick Start Example")
86
- ```
87
-
88
- ## Available Views
89
-
90
- figpack provides a comprehensive set of view components for creating interactive visualizations:
91
-
92
- ### Core Views
93
-
94
- - **[TimeseriesGraph](docs/timeseries-graph.md)** - Interactive line plots, markers, and intervals ([example](examples/example_timeseries_graph.py))
95
- - **[MultiChannelTimeseries](docs/multichannel-timeseries.md)** - Multi-channel timeseries visualization ([example](examples/example_multichannel_timeseries.py))
96
- - **[Image](docs/image.md)** - Display images with optional annotations ([example](examples/example_image.py))
97
- - **[Markdown](docs/markdown.md)** - Render markdown content ([example](examples/example_markdown.py))
98
-
99
- ### Layout Views
100
-
101
- - **[Box](docs/box.md)** - Flexible container with horizontal/vertical layouts ([example](examples/example_box.py))
102
- - **[Splitter](docs/splitter.md)** - Resizable split panes ([example](examples/example_splitter.py))
103
- - **[TabLayout](docs/tab-layout.md)** - Tabbed interface for multiple views ([example](examples/example_tablayout.py))
104
-
105
- ### External Figure Support
106
-
107
- - **[MatplotlibFigure](docs/matplotlib-figure.md)** - Embed matplotlib plots ([example](examples/example_matplotlib.py))
108
- - **[PlotlyFigure](docs/plotly-figure.md)** - Embed plotly visualizations ([example](examples/example_plotly.py))
109
-
110
- ### Spike Sorting Views
111
-
112
- - **[Autocorrelograms](docs/autocorrelograms.md)** - Auto-correlation analysis ([example](examples/example_autocorrelograms.py))
113
- - **[CrossCorrelograms](docs/cross-correlograms.md)** - Cross-correlation analysis ([example](examples/example_cross_correlograms.py))
114
- - **[UnitsTable](docs/units-table.md)** - Sortable table for spike sorting units ([example](examples/example_units_table.py))
115
-
116
- ## Examples
117
-
118
- See the `examples/` directory for working examples of each view type.
119
-
120
- ## Usage Modes
121
-
122
- ### Local-only Mode
123
-
124
- ```python
125
- view.show(open_in_browser=True, title="Local Visualization")
126
- ```
127
-
128
- ### Sharing Online
129
-
130
- Set the `FIGPACK_API_KEY` environment variable and use:
131
-
132
- ```python
133
- view.show(upload=True, open_in_browser=True, title="Shared Visualization")
134
- ```
135
-
136
- ### Development Mode
137
-
138
- Set `_dev=True` in the call to show() to enable development mode, which allows for live updates and development of figpack-gui.
139
-
140
- ## Command Line Interface
141
-
142
- figpack includes a command-line interface for working with figures:
143
-
144
- ### Download a Figure
145
-
146
- ```bash
147
- figpack download <figure-url> <dest.tar.gz>
148
- ```
149
-
150
- Download a figure from any figpack URL and save it as a local archive.
151
-
152
- ### View a Figure Archive
153
-
154
- ```bash
155
- figpack view <figure.tar.gz>
156
- ```
157
-
158
- Extract and view a figure archive in your browser. The server will run locally until you press Enter.
159
-
160
- Use `--port <number>` to specify a custom port.
161
-
162
- ## License
163
-
164
- Apache-2.0
165
-
166
- ## Contributing
167
-
168
- Visit the [GitHub repository](https://github.com/magland/figpack) for issues, contributions, and the latest updates.
@@ -1,49 +0,0 @@
1
- figpack/__init__.py,sha256=9I8fC_RO4PRKHgMbTZqh-HfikC6KBrpKRaaJ4WQUKDg,124
2
- figpack/cli.py,sha256=DYV-DxzWnQTMNywW-ZzhlTEFOEIt11rAKdobdBmRQFk,12051
3
- figpack/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- figpack/core/_bundle_utils.py,sha256=73E6FinAvrt1QATGncIqyg6JLeiWVmlGF8NOcFyeYSs,1913
5
- figpack/core/_server_manager.py,sha256=5-OUZ9Np9aKIjkYxGkjKjJKVL44FOydNWHpGuPm_Qs8,11085
6
- figpack/core/_show_view.py,sha256=8OOuicYEvqN3wwuioKpffHChOpH5Gm_G564HArFo1FA,5302
7
- figpack/core/_upload_bundle.py,sha256=lZQHl7pmXD-jQjyCBMN_w79xnHSDgxAx430qeImTyuE,13401
8
- figpack/core/config.py,sha256=oOR7SlP192vuFhYlS-h14HnG-kd_3gaz0vshXch2RNc,173
9
- figpack/core/figpack_view.py,sha256=h5D67h_71bb1kW3U0yRH34ZZN_4PGr8OwNL1U8fb5fg,4032
10
- figpack/figpack-gui-dist/index.html,sha256=rObLsUTtDMwDG5vpeCsQC94MhnbNsVGjUVw0w7q2dIM,486
11
- figpack/figpack-gui-dist/assets/index-Cmae55E4.css,sha256=Yg0apcYehJwQvSQIUH13S7tsfqWQDevpJsAho0dDf0g,5499
12
- figpack/figpack-gui-dist/assets/index-CuFseOGX.js,sha256=wNJFCDKOVSoTMyipnTvnsTRv2tvB3FkxPAmsceAL2W4,1593545
13
- figpack/figpack-gui-dist/assets/neurosift-logo-CLsuwLMO.png,sha256=g5m-TwrGh5f6-9rXtWV-znH4B0nHgc__0GWclRDLUHs,9307
14
- figpack/franklab/__init__.py,sha256=HkehqGImJE_sE2vbPDo-HbgtEYaMICb9-230xTYvRTU,56
15
- figpack/franklab/views/TrackAnimation.py,sha256=3Jv1Ri4FIwTyqNahinqhHsBH1Bv_iZrEGx12w6diJ2M,5636
16
- figpack/franklab/views/__init__.py,sha256=XXZ9QJLh9KAeeLgKbi6ogYOyfTgHP-N6o3u981NFwx8,116
17
- figpack/spike_sorting/__init__.py,sha256=09njqh-oFaCTdZUsc4HAOFTliUYV9DClddfZ0Q_dm0I,61
18
- figpack/spike_sorting/views/AutocorrelogramItem.py,sha256=qHmvIdHpbfVA_utPb5N2oP3hSP2cGnlT8VLaxOXV4UM,738
19
- figpack/spike_sorting/views/Autocorrelograms.py,sha256=43EgKHvUmXUA9QSOJQZiTeLHq_kKW43Ku3FIH7ZjfM8,3323
20
- figpack/spike_sorting/views/AverageWaveforms.py,sha256=mvMkS3wf6MpI95tlGqKxBjxZlHqJr4aqG7SZvHigIsI,5193
21
- figpack/spike_sorting/views/CrossCorrelogramItem.py,sha256=uSd0i2hupteuILi_aKp7bYPYpL_PdC3CUDRMOEKUEM0,880
22
- figpack/spike_sorting/views/CrossCorrelograms.py,sha256=gqPXbEgg-GE3NCJQT2bahp1ITSW33F3q9ZuJRGrR68M,4061
23
- figpack/spike_sorting/views/RasterPlot.py,sha256=gFdfH9SEm-tf8Ptqw4M1Q7IHRytUOULpBZfM2TdMfZQ,2215
24
- figpack/spike_sorting/views/RasterPlotItem.py,sha256=iW7fuDEjSfvf5YMIwrF_6cmKvD76oCigOUMHtGgBsPI,638
25
- figpack/spike_sorting/views/SpikeAmplitudes.py,sha256=vQYWdJM-3qu568bcfGDC9k9LW_PgvU8j4tN9QYc08Mo,2665
26
- figpack/spike_sorting/views/SpikeAmplitudesItem.py,sha256=j5Na-diY-vRUAPu0t0VkyFCSKFnQ_f5HT077mB3Cy8c,1134
27
- figpack/spike_sorting/views/UnitSimilarityScore.py,sha256=cJA9MkETos9qHhV1tqgA7SfNEaPo-duXYCE76hSFGnA,948
28
- figpack/spike_sorting/views/UnitsTable.py,sha256=kQZvMlnPk8MAMPr3GlL4T3cAvGfSHBbB52jvMJ2-YAU,2173
29
- figpack/spike_sorting/views/UnitsTableColumn.py,sha256=zBnuoeILTuiVLDvtcOxqa37E5WlbR12rlwNJUeWXxY4,847
30
- figpack/spike_sorting/views/UnitsTableRow.py,sha256=rEb2hMTA_pl2fTW1nOvnGir0ysfNx4uww3aekZzfWjk,720
31
- figpack/spike_sorting/views/__init__.py,sha256=iRq7xPmyhnQ3GffnPC0GxKGEWnlqXY_8IOxsMqYZ1IM,967
32
- figpack/views/Box.py,sha256=TfhPFNtVEq71LCucmWk3XX2WxQLdaeRiWGm5BM0k2l4,2236
33
- figpack/views/Image.py,sha256=xbnkmiqlrYD9_BGsQgSGgqXJbvNECTI7iJhLsEd3kSg,2990
34
- figpack/views/LayoutItem.py,sha256=wy8DggkIzZpU0F1zFIBceS7HpBb6lu-A3hpYINQzedk,1595
35
- figpack/views/Markdown.py,sha256=KEqEAz5VXErLXr8dYJrWY1I8_VdRazDIcjCNcHfUGPA,769
36
- figpack/views/MatplotlibFigure.py,sha256=LQSvPY3_iSHO-ZfWjRO6iOVUp5W-mmlt3mj8GBoK18w,1939
37
- figpack/views/MultiChannelTimeseries.py,sha256=sWr2nW1eoYR7V44wF7fac7IoQ6BOnus1nc4STkgIkYw,8501
38
- figpack/views/PlotlyFigure.py,sha256=B02nfWFM89GnDUZiS2v89ZtGBdSZtAwcXUD_7rV7kN4,1633
39
- figpack/views/Splitter.py,sha256=x9jLCTlIvDy5p9ymVd0X48KDccyD6bJANhXyFgKEmtE,2007
40
- figpack/views/TabLayout.py,sha256=5g3nmL95PfqgI0naqZXHMwLVo2ebDlGX01Hy9044bUw,1898
41
- figpack/views/TabLayoutItem.py,sha256=xmHA0JsW_6naJze4_mQuP_Fy0Nm17p2N7w_AsmVRp8k,880
42
- figpack/views/TimeseriesGraph.py,sha256=OAaCjO8fo86u_gO_frNfRGxng3tczxGDGKcJEvZo3rE,7469
43
- figpack/views/__init__.py,sha256=8y4KdRtrdDF0-xtQQkj4k_d8Ajk44Q7myztl3StdZcU,407
44
- figpack-0.2.4.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
45
- figpack-0.2.4.dist-info/METADATA,sha256=6sTrCsnt0haWZvUyuQdXXajQU8fyKtEtX0yFYN2JJ0U,5886
46
- figpack-0.2.4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
47
- figpack-0.2.4.dist-info/entry_points.txt,sha256=l6d3siH2LxXa8qJGbjAqpIZtI5AkMSyDeoRDCzdrUto,45
48
- figpack-0.2.4.dist-info/top_level.txt,sha256=lMKGaC5xWmAYBx9Ac1iMokm42KFnJFjmkP2ldyvOo-c,8
49
- figpack-0.2.4.dist-info/RECORD,,