From d2c5832df79e2b7a33f522fbf4f2865c690f2c7a Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Thu, 27 Jun 2024 11:52:57 +0200 Subject: [PATCH 1/2] Framework: Add items about programming frameworks Gradio and Streamlit --- docs/integrate/framework.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/integrate/framework.md b/docs/integrate/framework.md index 0dd0838..d23e479 100644 --- a/docs/integrate/framework.md +++ b/docs/integrate/framework.md @@ -84,7 +84,6 @@ out Python data applications. It provides fast, interactive prototyping, and liv _Streamlit 101 - A faster way to build and share data applications._ - [Gradio]: https://www.gradio.app/ [Hugging Face]: https://en.wikipedia.org/wiki/Hugging_Face [Streamlit]: https://streamlit.io/ From 536be88ffd06d119313a46c0ae9adca8d11845ee Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Thu, 27 Jun 2024 13:19:18 +0200 Subject: [PATCH 2/2] Framework: Refactor a few items from "Visualization" Dash, hvPlot/Datashader, and Plotly. --- docs/integrate/framework.md | 130 ++++++++++++++++++++++++++++++++++++ docs/integrate/visualize.md | 122 +-------------------------------- 2 files changed, 132 insertions(+), 120 deletions(-) diff --git a/docs/integrate/framework.md b/docs/integrate/framework.md index d23e479..fb422ae 100644 --- a/docs/integrate/framework.md +++ b/docs/integrate/framework.md @@ -31,6 +31,64 @@ infrastructure to framework integrations. ::::: +(dash)= +## Dash + +```{div} +:style: "float: right" +[![](https://github.com/crate/crate-clients-tools/assets/453543/8b679c0b-2740-4dcc-88f0-1106aee7fa95){w=180px}](https://dash.plotly.com/) +``` + +[Dash] is a low-code framework for rapidly building data apps in Python, +based on [Plotly]. Built on top of Plotly.js, React and Flask, Dash ties +modern UI elements like dropdowns, sliders, and graphs, directly to your +analytical Python code. + +Dash is a trusted Python framework for building ML & data science web apps. Many +specialized open-source Dash libraries exist that are tailored for building +domain-specific Dash components and applications. + +```{div} +:style: "clear: both" +``` +::: + +![](https://github.com/crate/crate-clients-tools/assets/453543/cc538982-e351-437b-97ec-f1fc6ca34948){h=200px} +![](https://github.com/crate/crate-clients-tools/assets/453543/24908861-f0ad-43f3-b229-b2bfcc61596d){h=200px} + +:::{dropdown} **Dash Enterprise** +```{div} +:style: "float: right" +[![](https://github.com/crate/crate-clients-tools/assets/453543/8b679c0b-2740-4dcc-88f0-1106aee7fa95){w=180px}](https://plotly.com/dash/) +``` + +Dash Enterprise is Plotly’s paid product for building, testing, deploying, managing, +and scaling Dash applications organization-wide, advertised as the Premier Data App +Platform for Python. + +When building Dash apps in a business setting, Dash Enterprise supports you to deploy +and scale them, plus integrate them with IT infrastructure such as authentication and +VPC services, in order to deliver faster and more impactful business outcomes on AI +and data science initiatives. + +Dash Enterprise enables the rapid development of production-grade data apps within your +business. Python has taken over the world, and traditional BI dashboards no longer +cut it in today’s AI and ML driven world. Production-grade, low-code Python data apps +are needed to visualize the sophisticated data analytics and data pipelines that run +modern businesses. + +```{div} +:style: "clear: both" +``` +![](https://github.com/crate/crate-clients-tools/assets/453543/161a9b73-25eb-4ec4-aa3e-5fa73757b440){h=200px} +![](https://github.com/crate/crate-clients-tools/assets/453543/d199b9c9-8be0-4ff7-a7b5-835dc122cc6d){h=200px} +::: + + + +_Plotly Dash Course - Session 1._ + + (gradio)= ## Gradio @@ -56,6 +114,70 @@ machine learning model demo applications, written in Python. _How to Build Machine Learning APIs Using Gradio._ +(hvplot)= +## hvPlot and Datashader + +```{div} +:style: "float: right" +[![](https://hvplot.holoviz.org/_static/logo_horizontal.svg){w=220px}](https://hvplot.holoviz.org/) + +[![](https://datashader.org/_static/logo_horizontal.svg){w=220px}](https://datashader.org/) +``` + +[hvPlot] is a familiar and high-level API for data exploration and visualization. +[Datashader] is a graphics pipeline system for creating meaningful representations of +large datasets quickly and flexibly. + +It is used on behalf of the [hvPlot] package, which is based on [HoloViews], from the +family of [HoloViz] packages of the [PyViz] ecosystem. + +With Datashader, you can "just plot" large datasets and explore them instantly, with no +parameter tweaking, magic numbers, subsampling, or approximation, up to the resolution +of the display. + +[hvPlot] sources its power in the [HoloViz] ecosystem. With [HoloViews], you get the +ability to easily layout and overlay plots, with [Panel], you can get more interactive +control of your plots with widgets, with [DataShader], you can visualize and interactively +explore very large data, and with [GeoViews], you can create geographic plots. + +```{div} +:style: "clear: both" +``` + +![](https://github.com/crate/crate-clients-tools/assets/453543/7f38dff6-04bc-429e-9d31-6beeb9289c4b){h=200px} +![](https://github.com/crate/crate-clients-tools/assets/453543/23561a87-fb4f-4154-9891-1b3068e40579){h=200px} + + + + +_hvPlot and Panel: Visualize all your data easily, from notebooks to dashboards | SciPy 2023._ + + +(plotly)= +## Plotly + +```{div} +:style: "float: right" +[![](https://github.com/crate/crate-clients-tools/assets/453543/8b679c0b-2740-4dcc-88f0-1106aee7fa95){w=180px}](https://plotly.com/) +``` + +[Plotly] Open Source Graphing Libraries make interactive, publication-quality graphs. +Line plots, scatter plots, area charts, bar charts, error bars, box plots, histograms, +heatmaps, subplots, multiple-axes, polar charts, bubble charts, and maps. + +The supported programming languages / libraries / frameworks are Python, R, Julia, +JavaScript, ggplot2, F#, MATLAB®, and Dash. + +Based on Plotly, [Dash] is a low-code framework for rapidly building data apps in Python. + +```{div} +:style: "clear: both" +``` + +![](https://github.com/crate/crate-clients-tools/assets/453543/380114a8-7984-4966-929b-6e6d52ddd48a){h=200px} +![](https://github.com/crate/crate-clients-tools/assets/453543/f6a99ae7-b730-4587-bd23-499e1be02c92){h=200px} + + (streamlit)= ## Streamlit @@ -84,6 +206,14 @@ out Python data applications. It provides fast, interactive prototyping, and liv _Streamlit 101 - A faster way to build and share data applications._ +[Dash]: https://plotly.com/dash/ +[Datashader]: https://datashader.org/ [Gradio]: https://www.gradio.app/ +[HoloViews]: https://www.holoviews.org/ +[HoloViz]: https://holoviz.org/ +[hvPlot]: https://hvplot.holoviz.org/ [Hugging Face]: https://en.wikipedia.org/wiki/Hugging_Face +[Panel]: https://panel.holoviz.org/ +[Plotly]: https://plotly.com/graphing-libraries/ +[PyViz]: https://pyviz.org/ [Streamlit]: https://streamlit.io/ diff --git a/docs/integrate/visualize.md b/docs/integrate/visualize.md index 829a021..bb303ec 100644 --- a/docs/integrate/visualize.md +++ b/docs/integrate/visualize.md @@ -2,7 +2,8 @@ # Visualize data in CrateDB Dashboard and other data visualization applications and toolkits for -visualizing data stored inside CrateDB. +visualizing data stored inside CrateDB, mostly dashboarding. + ::::{card} {material-outlined}`lightbulb;2em` Tutorials :margin: 0 0 5 5 @@ -86,59 +87,6 @@ your entire company in few minutes. ![report-creator.png](https://github.com/crate/crate-clients-tools/assets/453543/844a5ffd-0b92-4c77-8cdd-0b5cc5b392b1){h=200px} -## Dash - -```{div} -:style: "float: right" -[![](https://github.com/crate/crate-clients-tools/assets/453543/8b679c0b-2740-4dcc-88f0-1106aee7fa95){w=180px}](https://dash.plotly.com/) -``` - -[Dash] is a low-code framework for rapidly building data apps in Python, -based on [Plotly]. Built on top of Plotly.js, React and Flask, Dash ties -modern UI elements like dropdowns, sliders, and graphs, directly to your -analytical Python code. - -Dash is a trusted Python framework for building ML & data science web apps. Many -specialized open-source Dash libraries exist that are tailored for building -domain-specific Dash components and applications. - -```{div} -:style: "clear: both" -``` -::: - -![](https://github.com/crate/crate-clients-tools/assets/453543/cc538982-e351-437b-97ec-f1fc6ca34948){h=200px} -![](https://github.com/crate/crate-clients-tools/assets/453543/24908861-f0ad-43f3-b229-b2bfcc61596d){h=200px} - -:::{dropdown} **Dash Enterprise** -```{div} -:style: "float: right" -[![](https://github.com/crate/crate-clients-tools/assets/453543/8b679c0b-2740-4dcc-88f0-1106aee7fa95){w=180px}](https://plotly.com/dash/) -``` - -Dash Enterprise is Plotly’s paid product for building, testing, deploying, managing, -and scaling Dash applications organization-wide, advertised as the Premier Data App -Platform for Python. - -When building Dash apps in a business setting, Dash Enterprise supports you to deploy -and scale them, plus integrate them with IT infrastructure such as authentication and -VPC services, in order to deliver faster and more impactful business outcomes on AI -and data science initiatives. - -Dash Enterprise enables the rapid development of production-grade data apps within your -business. Python has taken over the world, and traditional BI dashboards no longer -cut it in today’s AI and ML driven world. Production-grade, low-code Python data apps -are needed to visualize the sophisticated data analytics and data pipelines that run -modern businesses. - -```{div} -:style: "clear: both" -``` -![](https://github.com/crate/crate-clients-tools/assets/453543/161a9b73-25eb-4ec4-aa3e-5fa73757b440){h=200px} -![](https://github.com/crate/crate-clients-tools/assets/453543/d199b9c9-8be0-4ff7-a7b5-835dc122cc6d){h=200px} -::: - - ## Explo ```{div} @@ -208,39 +156,6 @@ Get Grafana fully managed with [Grafana Cloud]. ::: -## hvPlot and Datashader - -```{div} -:style: "float: right" -[![](https://hvplot.holoviz.org/_static/logo_horizontal.svg){w=220px}](https://hvplot.holoviz.org/) - -[![](https://datashader.org/_static/logo_horizontal.svg){w=220px}](https://datashader.org/) -``` - -[hvPlot] is a familiar and high-level API for data exploration and visualization. -[Datashader] is a graphics pipeline system for creating meaningful representations of -large datasets quickly and flexibly. - -It is used on behalf of the [hvPlot] package, which is based on [HoloViews], from the -family of [HoloViz] packages of the [PyViz] ecosystem. - -With Datashader, you can "just plot" large datasets and explore them instantly, with no -parameter tweaking, magic numbers, subsampling, or approximation, up to the resolution -of the display. - -[hvPlot] sources its power in the [HoloViz] ecosystem. With [HoloViews], you get the -ability to easily layout and overlay plots, with [Panel], you can get more interactive -control of your plots with widgets, with [DataShader], you can visualize and interactively -explore very large data, and with [GeoViews], you can create geographic plots. - -```{div} -:style: "clear: both" -``` - -![](https://github.com/crate/crate-clients-tools/assets/453543/7f38dff6-04bc-429e-9d31-6beeb9289c4b){h=200px} -![](https://github.com/crate/crate-clients-tools/assets/453543/23561a87-fb4f-4154-9891-1b3068e40579){h=200px} - - ## Metabase ```{div} @@ -285,51 +200,18 @@ with none of the work or hidden costs that come with self-hosting. ::: -## Plotly - -```{div} -:style: "float: right" -[![](https://github.com/crate/crate-clients-tools/assets/453543/8b679c0b-2740-4dcc-88f0-1106aee7fa95){w=180px}](https://plotly.com/) -``` - -[Plotly] Open Source Graphing Libraries make interactive, publication-quality graphs. -Line plots, scatter plots, area charts, bar charts, error bars, box plots, histograms, -heatmaps, subplots, multiple-axes, polar charts, bubble charts, and maps. - -The supported programming languages / libraries / frameworks are Python, R, Julia, -JavaScript, ggplot2, F#, MATLAB®, and Dash. - -Based on Plotly, [Dash] is a low-code framework for rapidly building data apps in Python. - -```{div} -:style: "clear: both" -``` - -![](https://github.com/crate/crate-clients-tools/assets/453543/380114a8-7984-4966-929b-6e6d52ddd48a){h=200px} -![](https://github.com/crate/crate-clients-tools/assets/453543/f6a99ae7-b730-4587-bd23-499e1be02c92){h=200px} - - - [Apache Superset]: https://superset.apache.org/ [Cluvio]: https://www.cluvio.com/ [CrateDB and Grafana]: https://cratedb.com/integrations/cratedb-and-grafana [CrateDB and Superset]: https://cratedb.com/integrations/cratedb-and-apache-superset [CrateDB and Metabase]: https://cratedb.com/integrations/cratedb-and-metabase -[Dash]: https://plotly.com/dash/ -[Datashader]: https://datashader.org/ [Explo]: https://www.explo.co/ [Explo Explore]: https://www.explo.co/products/explore [GeoViews]: https://geoviews.org/ [Grafana Cloud]: https://grafana.com/grafana/ [Grafana Labs]: https://grafana.com/about/team/ [Grafana OSS]: https://grafana.com/oss/grafana/ -[HoloViews]: https://www.holoviews.org/ -[HoloViz]: https://holoviz.org/ -[hvPlot]: https://hvplot.holoviz.org/ [Metabase]: https://www.metabase.com/ [Metabase Cloud]: https://www.metabase.com/cloud/ -[Panel]: https://panel.holoviz.org/ -[Plotly]: https://plotly.com/graphing-libraries/ [Preset]: https://preset.io/ [Preset Cloud]: https://preset.io/product/ -[PyViz]: https://pyviz.org/