WIP: Plots
This commit is contained in:
@@ -251,40 +251,7 @@ The `text` mode specification is necessary to have text be displayed on the char
|
||||
#### RGB Colors
|
||||
|
||||
|
||||
The `ColorTypes` package is the standard `Julia` package providing an `RGB` type (among others) for specifying red-green-blue colors. To make this work with `Config` and `JSON3` requires some type-piracy (modifying `Base.string` for the `RGB` type) to get, say, `RGB(0.5, 0.5, 0.5)` to output as `"rgb(0.5, 0.5, 0.5)"`. (RGB values in JavaScript are integers between $0$ and $255$ or floating point values between $0$ and $1$.) A string with this content can be specified. Otherwise, something like the following can be used to avoid the type piracy:
|
||||
|
||||
|
||||
```{julia}
|
||||
struct rgb
|
||||
r
|
||||
g
|
||||
b
|
||||
end
|
||||
PlotlyLight.JSON3.StructTypes.StructType(::Type{rgb}) = PlotlyLight.JSON3.StructTypes.StringType()
|
||||
Base.string(x::rgb) = "rgb($(x.r), $(x.g), $(x.b))"
|
||||
```
|
||||
|
||||
With these defined, red-green-blue values can be used for colors. For example to give a range of colors, we might have:
|
||||
|
||||
|
||||
```{julia}
|
||||
#| hold: true
|
||||
cols = [rgb(i,i,i) for i in range(10, 245, length=5)]
|
||||
sizes = [12, 16, 20, 24, 28]
|
||||
data = Config(x = 1:5,
|
||||
y = rand(5),
|
||||
mode="markers+text",
|
||||
type="scatter",
|
||||
name="scatter plot",
|
||||
text = ["marker $i" for i in 1:5],
|
||||
textposition = "top center",
|
||||
marker = Config(size=sizes, color=cols)
|
||||
)
|
||||
Plot(data)
|
||||
```
|
||||
|
||||
The `opacity` key can be used to control the transparency, with a value between $0$ and $1$.
|
||||
|
||||
The `ColorTypes` package is the standard `Julia` package providing an `RGB` type (among others) for specifying red-green-blue colors. To make this work with `Config` and `JSON3` requires some type-piracy (modifying `Base.string` for the `RGB` type) to get, say, `RGB(0.5, 0.5, 0.5)` to output as `"rgb(0.5, 0.5, 0.5)"`. (RGB values in JavaScript are integers between $0$ and $255$ or floating point values between $0$ and $1$.) A string with this content can be specified.
|
||||
|
||||
#### Marker symbols
|
||||
|
||||
|
||||
Reference in New Issue
Block a user