Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/main' into table-context-menu
Browse files Browse the repository at this point in the history
  • Loading branch information
mattrunyon committed Jun 19, 2024
2 parents 0dd5fe1 + 8322c2d commit 7e24fce
Show file tree
Hide file tree
Showing 156 changed files with 6,235 additions and 13,678 deletions.
8 changes: 6 additions & 2 deletions .github/workflows/modified-plugin.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,13 @@ name: Test Modified Plugin

on:
pull_request:
branches: [main]
branches:
- main
- 'release/**'
push:
branches: [main]
branches:
- main
- 'release/**'
tags:
- 'plotly-express-v*'
- 'plotly-v*'
Expand Down
2 changes: 1 addition & 1 deletion lerna.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "node_modules/lerna/schemas/lerna-schema.json",
"useWorkspaces": true,
"useNx": true,
"useNx": false,
"version": "independent",
"packages": ["plugins/*/src/js/"]
}
14,523 changes: 3,246 additions & 11,277 deletions package-lock.json

Large diffs are not rendered by default.

47 changes: 47 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,5 +52,52 @@
"prettier": "3.0.0",
"vite": "~4.1.4"
},
"optionalDependencies": {
"@esbuild/aix-ppc64": "0.19.12",
"@esbuild/android-arm": "0.16.17",
"@esbuild/android-arm64": "0.16.17",
"@esbuild/android-x64": "0.16.17",
"@esbuild/darwin-arm64": "0.16.17",
"@esbuild/darwin-x64": "0.16.17",
"@esbuild/freebsd-arm64": "0.16.17",
"@esbuild/freebsd-x64": "0.16.17",
"@esbuild/linux-arm": "0.16.17",
"@esbuild/linux-arm64": "0.16.17",
"@esbuild/linux-ia32": "0.16.17",
"@esbuild/linux-loong64": "0.16.17",
"@esbuild/linux-mips64el": "0.16.17",
"@esbuild/linux-ppc64": "0.16.17",
"@esbuild/linux-riscv64": "0.16.17",
"@esbuild/linux-s390x": "0.16.17",
"@esbuild/linux-x64": "0.16.17",
"@esbuild/netbsd-x64": "0.16.17",
"@esbuild/openbsd-x64": "0.16.17",
"@esbuild/sunos-x64": "0.16.17",
"@esbuild/win32-arm64": "0.16.17",
"@esbuild/win32-ia32": "0.16.17",
"@esbuild/win32-x64": "0.16.17",
"@rollup/rollup-android-arm-eabi": "4.9.6",
"@rollup/rollup-android-arm64": "4.9.6",
"@rollup/rollup-darwin-arm64": "4.9.6",
"@rollup/rollup-darwin-x64": "4.9.6",
"@rollup/rollup-linux-arm-gnueabihf": "4.9.6",
"@rollup/rollup-linux-arm64-gnu": "4.9.6",
"@rollup/rollup-linux-arm64-musl": "4.9.6",
"@rollup/rollup-linux-riscv64-gnu": "4.9.6",
"@rollup/rollup-linux-x64-gnu": "4.9.6",
"@rollup/rollup-linux-x64-musl": "4.9.6",
"@rollup/rollup-win32-arm64-msvc": "4.9.6",
"@rollup/rollup-win32-ia32-msvc": "4.9.6",
"@rollup/rollup-win32-x64-msvc": "4.9.6",
"@swc/core-darwin-arm64": "1.3.99",
"@swc/core-darwin-x64": "1.3.99",
"@swc/core-linux-arm64-gnu": "1.3.99",
"@swc/core-linux-arm64-musl": "1.3.99",
"@swc/core-linux-x64-gnu": "1.3.99",
"@swc/core-linux-x64-musl": "1.3.99",
"@swc/core-win32-arm64-msvc": "1.3.99",
"@swc/core-win32-ia32-msvc": "1.3.99",
"@swc/core-win32-x64-msvc": "1.3.99"
},
"prettier": "@deephaven/prettier-config"
}
10 changes: 5 additions & 5 deletions plugins/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,23 @@
"plugins": [
{
"name": "matplotlib",
"version": "0.1.0",
"version": "0.0.0",
"main": "src/js/dist/index.js"
},
{
"name": "plotly-express",
"version": "0.1.0",
"version": "0.0.0",
"main": "src/js/dist/bundle/index.js"
},
{
"name": "auth-keycloak",
"version": "0.1.0",
"version": "0.0.0",
"main": "src/js/dist/index.js"
},
{ "name": "ui", "version": "0.1.0", "main": "src/js/dist/index.js" },
{ "name": "ui", "version": "0.0.0", "main": "src/js/dist/index.js" },
{
"name": "example-theme",
"version": "0.1.0",
"version": "0.0.0",
"main": "src/js/dist/index.js"
}
]
Expand Down
3 changes: 2 additions & 1 deletion plugins/plotly-express/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,5 @@ dist/
*.egg-info/
.idea
.DS_store
__pycache__/
__pycache__/
/docs/build/
20 changes: 20 additions & 0 deletions plugins/plotly-express/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Minimal makefile for Sphinx documentation
#

# You can set these variables from the command line, and also
# from the environment for the first two.
SPHINXOPTS ?= -c .
SPHINXBUILD ?= sphinx-build
SOURCEDIR = docs
BUILDDIR = docs/build

# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

.PHONY: help Makefile

# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
16 changes: 16 additions & 0 deletions plugins/plotly-express/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,3 +54,19 @@ source = new_table(

fig = dx.bar(table=source, x="Categories", y="Values")
```

## Docs
Docs can be built locally

Install the necessary dependencies:
```shell
pip install -r requirements.txt
pip install dist/deephaven_plugin_plotly_express-*.whl
```
then run the docs make script:
```shell
python make_docs.py
```

The files will be built into `docs/build/markdown`.
Note that these built files should not be committed to the repository.
42 changes: 42 additions & 0 deletions plugins/plotly-express/conf.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Configuration file for the Sphinx documentation builder.
#
# For the full list of built-in configuration values, see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
import os
import sys

# -- Project information -----------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information

project = "deephaven"
copyright = "2024, Deephaven Data Labs"
author = "Deephaven Data Labs"
release = "0.7.0"

# -- General configuration ---------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration

extensions = [
"myst_parser",
"sphinx.ext.autodoc",
"sphinx.ext.napoleon",
"sphinx_markdown_builder",
"sphinx_autodoc_typehints",
]

source_suffix = [".rst", ".md"] # Can use either rst or markdown files as input

# show hints in the description so that the function definition is not cluttered
autodoc_typehints = "description"

# exclude build directory
exclude_patterns = ["build", "Thumbs.db", ".DS_Store"]

# options for sphinx_autodoc_typehints
always_use_bars_union = True
typehints_defaults = "comma"

from deephaven_server import Server

s = Server(port=10075)
s.start()
6 changes: 6 additions & 0 deletions plugins/plotly-express/docs/area.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,9 @@ Area plots are useful for:
4. **Time Series Analysis**: For time-dependent data, area plots are valuable for displaying changes in categorical contributions and overall trends over time.

## Examples


## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.area
```
5 changes: 5 additions & 0 deletions plugins/plotly-express/docs/bar.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,8 @@ Advantages of bar plots include:
Bar plots have limitations and are not suitable for certain scenarios. They are not ideal for continuous data, ineffective for multi-dimensional data exceeding two dimensions, and unsuitable for time-series data trends. Additionally, they become less practical with extremely sparse datasets and are inadequate for representing complex interactions or correlations among multiple variables.

## Examples

## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.bar
```
5 changes: 5 additions & 0 deletions plugins/plotly-express/docs/box.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,8 @@ Box plots are useful for:
4. **Robustness**: Box plots are robust to extreme values and data skewness, providing a reliable means of visualizing data distributions even in the presence of outliers or non-normal data.

## Examples

## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.box
```
5 changes: 5 additions & 0 deletions plugins/plotly-express/docs/candlestick.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,8 @@ Candlestick plots are useful for:
4. **Visualizing Variation in Price Data**: Candlestick charts offer a visually intuitive way to represent variability in price data, making them valuable for traders and analysts who prefer a visual approach to data analysis.

## Examples

## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.candlestick
```
5 changes: 5 additions & 0 deletions plugins/plotly-express/docs/funnel-area.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,8 @@ Funnel area plots are useful for:
4. **Data Funneling**: When representing data where values funnel through stages or categories.

## Examples

## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.funnel_area
```
6 changes: 6 additions & 0 deletions plugins/plotly-express/docs/funnel.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,9 @@ Funnel plots are useful for:
2. **Sequential Processes**: Funnel plots are suitable for visualizing data within sequential processes, where data typically funnels through various stages.
3. **Data Distribution**: When you want to gain insights into the distribution of data at each stage within a process, and you can represent multiple categories as stacked bars for comparative analysis.
4. **Efficiency Assessment**: To assess the efficiency and effectiveness of a process, particularly when evaluating the attrition or conversion of elements at each stage.


## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.funnel
```
5 changes: 5 additions & 0 deletions plugins/plotly-express/docs/histogram.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,8 @@ Histogram plots are useful for:
4. **Density Estimation**: Histograms can serve as the basis for density estimation methods, helping to model and understand underlying data distributions, which is crucial in statistical analysis and machine learning.

## Examples

## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.histogram
```
5 changes: 5 additions & 0 deletions plugins/plotly-express/docs/icicle.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,8 @@ Icicle plots are useful for:
4. **Comparative Analysis**: The consistent and proportional layout of icicle charts makes them effective for comparing the size and structure of different branches within the hierarchy. Users can easily identify and compare the relative importance or size of various categories, facilitating better decision-making and resource allocation.

## Examples

## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.icicle
```
6 changes: 6 additions & 0 deletions plugins/plotly-express/docs/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

.. toctree::
:maxdepth: 2
:glob:

*
6 changes: 6 additions & 0 deletions plugins/plotly-express/docs/layer-plots.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,9 @@
To "layer" or "stack" multiple plots on top of each other, use the `layer` function. This is useful if you want to combine multiple plots of different types into a single plot, such as a scatter plot and a line plot. By default, last plot given will be used for the layout. The `which_layout` parameter can be used to specify which plot's layout should be used. The `specs` parameter can be used to specify the domains of each plot.

## Examples


## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.layer
```
6 changes: 6 additions & 0 deletions plugins/plotly-express/docs/line-3d.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,9 @@ Alternatives to 3D line plots include:

- **Scatter Plots with Color or Size Mapping**: These can be used to represent three variables with the addition of color or size mapping to signify the third dimension.
- **Surface Plots**: When visualizing continuous data over a 3D space, surface plots may be more appropriate, as they create a continuous surface representation.


## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.line_3d
```
5 changes: 5 additions & 0 deletions plugins/plotly-express/docs/line-polar.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,8 @@ Polar line plots are useful for:
4. **Circular Data Exploration**: They can be used to explore and analyze data where the angular or periodic nature of the data is a significant aspect, making them useful in fields like meteorology, geophysics, and biology.

## Examples

## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.line_polar
```
6 changes: 6 additions & 0 deletions plugins/plotly-express/docs/line-ternary.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,9 @@ Ternary line plots are useful for:
1. **Compositional Data Representation**: Ternary line plots are suitable for representing compositional data where the total proportion remains constant, allowing for the visualization of how components change relative to one another.
2. **Multivariate Data Analysis**: They are useful in multivariate data analysis to visualize relationships and trends among three variables or components that are interrelated.
3. **Optimization Studies**: Ternary line plots can be applied in optimization studies to understand how adjustments in the proportions of three components impact the overall composition, aiding in informed decision-making.


## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.line_ternary
```
5 changes: 5 additions & 0 deletions plugins/plotly-express/docs/line.md
Original file line number Diff line number Diff line change
Expand Up @@ -395,3 +395,8 @@ scatter_plot_opacity = dx.scatter(
opacity=0.5
)
```

## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.line
```
6 changes: 6 additions & 0 deletions plugins/plotly-express/docs/ohlc.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,9 @@ OHLC (Open-High-Low-Close) plots are useful for:
3. **Quantitative Analysis**: OHLC data can be leveraged for quantitative analysis, statistical modeling, and the development of trading strategies, making them valuable in algorithmic and systematic trading.

## Examples


## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.ohlc
```
5 changes: 5 additions & 0 deletions plugins/plotly-express/docs/pie.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,8 @@ Limitations of pie plots include:
2. **Comparison Complexity**: Comparing the sizes of slices in a pie plot is less precise than with other chart types, such as bar plots or stacked bar charts. This makes it less suitable for situations where accurate quantitative comparisons are crucial.

## Examples

## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.pie
```
5 changes: 5 additions & 0 deletions plugins/plotly-express/docs/scatter-3d.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,3 +131,8 @@ scatter_plot_color_column = dx.scatter_3d(
color_discrete_map="identity"
)
```

## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.scatter_3d
```
6 changes: 6 additions & 0 deletions plugins/plotly-express/docs/scatter-polar.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,9 @@ Polar scatter plots are useful for:
3. **Angular or Periodic Data Relationships**: Polar scatter plots aid in exploring relationships and correlations in data with angular or periodic dependencies, making them suitable for applications where understanding circular patterns is essential.

## Examples


## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.scatter_polar
```
6 changes: 6 additions & 0 deletions plugins/plotly-express/docs/scatter-ternary.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,9 @@ Ternary scatter plots are useful for:
3. **Optimization Studies**: Ternary scatter plots aid in optimization studies to understand how adjustments in the proportions of three components impact the overall composition, making them valuable in informed decision-making processes.

## Examples


## API Reference
```{eval-rst}
.. autofunction:: deephaven.plot.express.scatter_ternary
```
Loading

0 comments on commit 7e24fce

Please sign in to comment.