Skip to content

Commit

Permalink
Update docs
Browse files Browse the repository at this point in the history
  • Loading branch information
altavir committed Feb 22, 2024
1 parent a080544 commit 0f351fc
Show file tree
Hide file tree
Showing 7 changed files with 57 additions and 74 deletions.
50 changes: 45 additions & 5 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,46 +1,64 @@
# Changelog
All notable changes to this project will be documented in this file.

All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## Unreleased

### Added
- Compose demo

### Changed
- Migrated to DF 0.8

### Deprecated

### Removed
- Grid view

### Fixed
- Fixed rendering for Jupyter lab

### Security

## 0.7.1 - 2024-02-22

### Added

- Compose demo

### Changed

- Migrated to DF 0.8

### Removed

- Grid view

### Fixed

- Fixed rendering for Jupyter lab

## 0.6.0 - 2023-07-29

### Added

- Add experimental support for events on JS

### Changed

- DataForge 0.6.2
- Use a self-made Plotly-js bundle instead of one from CDN

## 0.5.3 - 2023-04-01

### Added

- API for background images (https://github.com/SciProgCentre/plotly.kt/issues/49)
- API for multiple Y axis (https://github.com/SciProgCentre/plotly.kt/issues/92)
- Native support
- `plotlykt module` with basic Geo API
- DataSourceHost/DataSourcePost to configure custom networks

### Changed

- Kotlin 1.8.20
- Moved renderers to JVM to avoid confusion with JS direct element rendering.
- DataForge 0.6
Expand All @@ -50,83 +68,100 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Moved to Ktor 2.0

### Deprecated

- Page layout. Use VisionForge for that.

### Removed

- Moved CORS to `Plotly.serve`

### Fixed

- Added a protective copy on reading doubleArray from TraceValues
- #85
- Rendering in JS that used backend HTML generation

## 0.5.0

### Changed

- Switch to DataForge 0.5
-

## 0.4.4

### Added

- Candlestick support
- Range builders for axis

### Changed

- build tools 0.10.0
- demo projects moved to examples

### Deprecated

- Direct usage of `range` in axis

### Fixed

- #80
- Plotly coordinate array wrap is moved to the server side

## 0.4.3

### Fixed

- Proper deserialization of single plot.
- A bug in jupyter lab visualization

## 0.4.2

### Added

- `automargin` property to `Axis` according to https://plotly.com/python/reference/layout/xaxis/#layout-xaxis-automargin

### Fixed

- Remove unnecessary `kotlinx-css` dependency.
- Added compatibility mode for legacy notebooks. Use `Plotly.jupyter.notebook()` call to enable legacy mode.

## 0.4.0

### Added

- Jupyter integration plugin for server
- Separate static plot integration module in `plotlykt-jupyter`
- Expanded JS demo
- Jupyter support goes beta

### Changed

- Package change (again) to `space.kscience`
- Build tools `0.9.5`
- Kotlin `1.5.0`
- HtmlFragment renamed to PlotlyHtmlFragment

### Removed

- Local bootstrap

### Fixed

- Incomplete coverage in JS (#70)

## 0.3.1

### Added

- Table widget implementation by @ArtificialPB
- Mathjax header promoted to stable
- Tabbed plots layout (experimental)
- Trace value builders for functions and ranges (experimental)

### Changed

- **Breaking API change!** Trace `text` replaced by `TraceValues`
- Moved to DataForge 0.3 API
- Kotlin 1.4.30
Expand All @@ -135,23 +170,27 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Replaced direct color accessor by a delegate

### Fixed

- https://github.com/mipt-npm/plotly.kt/issues/53
- Add JQuery to Bootstrap headers

## 0.3.0

### Changed

- Serialization API is encapsulated (not longer exposed) in order to provide compatibility with new serialization.
- Migration to Kotlin 1.4
- Minor breaking change in Plot to encapsulate serialization usage
- JS supports IR. LEGACY is not supported anymore.

### Fixed

- https://github.com/mipt-npm/plotly.kt/issues/51

## 0.2.0

### Added

- Experimental scripting support
- Static export via Orca
- Experimental Jupyter support
Expand All @@ -169,6 +208,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- TraceValues extension for krangl columns

### Changed

- Migrated from `scientifik` to `kscience`
- Refactored packages to better suit star import style
- Removed bootstrap dependency
Expand Down
6 changes: 2 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,6 @@ See [simpleServer](./examples/src/main/kotlin/simpleServer.kt) and
## Kotlin-JS
Plotly is a JavaScript library, yet it is convenient to have a type-safe API when using in with Kotlin-JS. The sample application is available in [js-demo](./js-demo) module. One should node that Plotly.kt for JS is not a zero-cost wrapper like TypeScript definitions, it maintains its own object structure, could generate stand-alone models and some internal optimizations.

**Plotly-kt does not support `LEGACY` JS target. Be sure to use [IR compiler](https://kotlinlang.org/docs/js-ir-compiler.html)**

## JavaFX browser
Plotly.kt could be run in a JavaFX browser. An example project is presented in [fx-demo](./fx-demo).

Expand All @@ -60,9 +58,9 @@ The examples of the notebooks are shown in [notebooks](./examples/notebooks) dir
//@file:DependsOn("space.kscience:plotlykt-server:$version") // Use this one for sever integration.
```

The module `plotly` allows rendering static plots in Jupyter. Jupyter lab is currently supported. Jupyter notebook (classic) is able to render only `PlotlyPage` objects, so one must convert plots to pages to be able to use notebook (see [demo notebook](./examples/notebooks/plotlykt-demo.ipynb)).
The module `plotly` allows rendering static plots in Jupyter. Jupyter lab is currently supported. Jupyter notebook (classic) is able to render only `PlotlyPage` objects, so one must convert plots to pages to be able to use notebook (see [demo notebook](./notebooks/plotlykt-demo-classic.ipynb)).

The module `plotly-server` adds server capabilities and allows to render dynamic plots in notebooks (see [demo notebook](./examples/notebooks/plotlykt-server-demo.ipynb)). One must note that for dynamic pages, one must pass `renderer` parameter explicitly to plot like it is done in examples.
The module `plotly-server` adds server capabilities and allows to render dynamic plots in notebooks (see [demo notebook](./notebooks/plotlykt-server-demo.ipynb)). One must note that for dynamic pages, one must pass `renderer` parameter explicitly to plot like it is done in examples.

**IMPORTANT:** By default, Plotly-kt jupyter integration is configured to work with Jupyter Lab frontend, which renders all cells in the same page. Jupyter classic notebook and DataLore use cell isolation with iframes, so you will see blanks instead of plots. It could be fixed by switching into a notebook mode by running `Plotly.jupyter.notebook()` in a cell after plotly library is loaded.

Expand Down
15 changes: 2 additions & 13 deletions plotlykt-core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,8 @@

## Artifact:

The Maven coordinates of this project are `space.kscience:plotlykt-core:0.6.0`.
The Maven coordinates of this project are `space.kscience:plotlykt-core:0.7.1`.

**Gradle Groovy:**
```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
implementation 'space.kscience:plotlykt-core:0.6.0'
}
```
**Gradle Kotlin DSL:**
```kotlin
repositories {
Expand All @@ -27,6 +16,6 @@ repositories {
}

dependencies {
implementation("space.kscience:plotlykt-core:0.6.0")
implementation("space.kscience:plotlykt-core:0.7.1")
}
```
15 changes: 2 additions & 13 deletions plotlykt-geo/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,8 @@

## Artifact:

The Maven coordinates of this project are `space.kscience:plotlykt-geo:0.6.0`.
The Maven coordinates of this project are `space.kscience:plotlykt-geo:0.7.1`.

**Gradle Groovy:**
```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
implementation 'space.kscience:plotlykt-geo:0.6.0'
}
```
**Gradle Kotlin DSL:**
```kotlin
repositories {
Expand All @@ -27,6 +16,6 @@ repositories {
}

dependencies {
implementation("space.kscience:plotlykt-geo:0.6.0")
implementation("space.kscience:plotlykt-geo:0.7.1")
}
```
15 changes: 2 additions & 13 deletions plotlykt-jupyter/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,8 @@

## Artifact:

The Maven coordinates of this project are `space.kscience:plotlykt-jupyter:0.6.0`.
The Maven coordinates of this project are `space.kscience:plotlykt-jupyter:0.7.1`.

**Gradle Groovy:**
```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
implementation 'space.kscience:plotlykt-jupyter:0.6.0'
}
```
**Gradle Kotlin DSL:**
```kotlin
repositories {
Expand All @@ -27,6 +16,6 @@ repositories {
}

dependencies {
implementation("space.kscience:plotlykt-jupyter:0.6.0")
implementation("space.kscience:plotlykt-jupyter:0.7.1")
}
```
15 changes: 2 additions & 13 deletions plotlykt-script/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,8 @@

## Artifact:

The Maven coordinates of this project are `space.kscience:plotlykt-script:0.6.0`.
The Maven coordinates of this project are `space.kscience:plotlykt-script:0.7.1`.

**Gradle Groovy:**
```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
implementation 'space.kscience:plotlykt-script:0.6.0'
}
```
**Gradle Kotlin DSL:**
```kotlin
repositories {
Expand All @@ -27,6 +16,6 @@ repositories {
}

dependencies {
implementation("space.kscience:plotlykt-script:0.6.0")
implementation("space.kscience:plotlykt-script:0.7.1")
}
```
15 changes: 2 additions & 13 deletions plotlykt-server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,8 @@

## Artifact:

The Maven coordinates of this project are `space.kscience:plotlykt-server:0.6.0`.
The Maven coordinates of this project are `space.kscience:plotlykt-server:0.7.1`.

**Gradle Groovy:**
```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
implementation 'space.kscience:plotlykt-server:0.6.0'
}
```
**Gradle Kotlin DSL:**
```kotlin
repositories {
Expand All @@ -27,6 +16,6 @@ repositories {
}

dependencies {
implementation("space.kscience:plotlykt-server:0.6.0")
implementation("space.kscience:plotlykt-server:0.7.1")
}
```

0 comments on commit 0f351fc

Please sign in to comment.