smoothLine
The smoothLine
adds a smoothed line layer function optionally creates a new context with line aesthetics and new dataset which contains the "smooth" statistic calculated on sample of points (two numeric variables x and y). In this context, all required aesthetics are assigned by default but can be overridden.
It makes the line smoother through regression and sampling new points.
Arguments
x
Required
Iterable Column String
The x
argument is used to provide the sample (or its x-part) on which the statistic is computed.
y
Required
Iterable Column String
The y
argument is used to provide the y-part of the sample on which the statistic is computed.
method
Optional
SmoothMethod
The method
argument is used to specify the smoothing method.
SmoothMethod.Linear(confidenceLevel: Double)
- linear model;SmoothMethod.Polynomial(degree: Int, confidenceLevel: Double)
- polynomial model;SmoothMethod.LOESS(span: Double, loessCriticalSize: Int, samplingSeed: Long, confidenceLevel: Double)
- Local Polynomial Regression model.
smootherPointCount
Optional
Int
The n
argument is used to specify the number of sampled points.
Statistic properties
In this context, there are the following statistical properties that can be used to create mappings, customize tooltips, etc.
Stat.x
Column<Double>
The Stat.x
contains points x-coordinate.
Stat.y
Column<Double>
The Stat.y
contains points y-coordinate.
Stat.yMin
Column<Double>
The Stat.yMin
lower point-wise confidence interval around the mean in this point.
Stat.yMax
Column<Double>
The Stat.yMax
upper point-wise confidence interval around the mean in this point.
Stat.se
Column<Double>
The Stat.se
contains standard error in this point.
Line properties
See line.
x
Required Positional
Iterable Column String Any
The x
aesthetic is foundational in plotting, representing the x-coordinate of elements within a plot. This aesthetic is crucial for positioning elements along the x-axis, thereby defining their placement within the plot's coordinate system.
Setting
x.constant(Any)
: Assigns a fixed x-coordinate to all elements within a layer, effectively positioning them at a specific point along the x-axis. This is useful for aligning elements across different layers or for creating reference lines. Example usage:x.constant(0.9)
sets the x-coordinate of all applicable elements to 0.9.
Mapping
x(Iterable)
: Each element's x-coordinate is linked to a value from an iterable collection, enabling the representation of data variations along the x-axis.x(ColumnReference | KProperty | DataColumn)
: element positions are associated with a DataFrame column, allowing for the visualization of data-driven positioning along the x-axis.x(String)
: ties element positions to data based on the column name in the DataFrame or by a key in a Map, offering flexibility in data representation through x-coordinates.
Characteristics of the x
aesthetic
Data Positioning — The
x
aesthetic is essential for determining where elements are placed along the x-axis, impacting how data is visualized and interpreted within the plot's spatial context.Scaling — Proper use of the
x
aesthetic can significantly enhance the dynamism and readability of a plot, facilitating the effective communication of complex data patterns and relationships.
y
Required Positional
Iterable Column String Any
The y
aesthetic is foundational in plotting, representing the y-coordinate of elements within a plot. This aesthetic is crucial for positioning elements along the y-axis, thereby defining their placement within the plot's coordinate system.
Setting
y.constant(Any)
: Assigns a fixed y-coordinate to all elements within a layer, effectively positioning them at a specific point along the y-axis. This is useful for aligning elements across different layers or for creating reference lines. Example usage:y.constant(13)
sets the y-coordinate of all applicable elements to 13.
Mapping
y(Iterable)
: Each element's y-coordinate is linked to a value from an iterable collection, enabling the representation of data variations along the y-axis.y(ColumnReference | KProperty | DataColumn)
: element positions are associated with a DataFrame column, allowing for the visualization of data-driven positioning along the y-axis.y(String)
: ties element positions to data based on the column name in the DataFrame or by a key in a Map, offering flexibility in data representation through y-coordinates.
Characteristics of the y
aesthetic
Data Positioning — The
y
aesthetic is essential for determining where elements are placed along the y-axis, impacting how data is visualized and interpreted within the plot's spatial context.Scaling — Proper use of the
y
aesthetic can significantly enhance the dynamism and readability of a plot, facilitating the effective communication of complex data patterns and relationships.
alpha
Optional NonPositional
Iterable Column String Double
The alpha aesthetic controls the transparency of elements in a plot. It provides a means to adjust the visual prominence of elements, ranging from fully transparent (0.0) to fully opaque (1.0).
Setting
alpha = Double
: applies a uniform transparency level to all elements within a layer. The Double value should be within the range of 0.0 (completely transparent) to 1.0 (completely opaque).
Mapping
alpha(Iterable)
: associates the transparency of each element with a value from an iterable collection.alpha(ColumnReference | KProperty | DataColumn)
: links transparency with data from a specified DataFrame column.alpha(String)
: transparency is associated with data from a DataFrame column specified by its name or with data from a Map by key.
Characteristics of the alpha
aesthetic
Value range — It is crucial to ensure that all alpha values are within the 0.0 to 1.0 range. Values outside this range will trigger an
IllegalArgumentException
.Scaling and validation — When mapping
alpha
to data, additional scaling adjustments and value validation ensure proper representation of transparency.
width
Optional NonPositional
Iterable Column String Double
The width
aesthetic is a critical component in data visualization, particularly useful in plots where the size of elements, such as lines, is a significant visual factor. The width
aesthetic allows for the encoding of numerical values or categories through the visual dimension of size.
Setting
width = Double
: assigns a uniform width to all applicable elements within a layer. The value is a numerical representation of the width, for example,width = 0.3
.
Mapping
width(Iterable)
: links the width of each element to a value from an iterable collection, allowing for the representation of data variations through size differences.width(ColumnReference | KProperty | DataColumn)
: associates element widths with a column in the DataFrame, enabling the visualization of data-driven size variations.width(String)
: Connects width to data based on the column name in the DataFrame or by key in a Map, providing flexibility in representing data through size.
color
Optional NonPositional
Iterable Column String Color
The color aesthetic is a key feature in data visualization, allowing you to set the color of plot elements to enhance the interpretability and visual appeal of your graphs. This aesthetic facilitates both the differentiation of data points and the conveyance of additional data dimensions through color.
Setting
color = Color
: assigns a uniform color to all elements within a layer. The value can be a predefinedColor
constant likeColor.RED
or a custom color defined byColor.hex("#ff0000")
.
Mapping
color(Iterable)
: links the color of each element to a value from an iterable collection, allowing for varied color assignments within a layer.color(ColumnReference | KProperty | DataColumn)
: associates element colors with a column in the DataFrame, enabling data-driven color variations.color(String)
: connects colors to data based on the column name in the DataFrame or by key in a Map, offering flexibility in data representation.
Characteristics of the color
aesthetic
Versatility in data representation — The
color
aesthetic can be used to represent different categories, intensities, or other data dimensions, providing a rich layer of information in visualizations.Scaling and validation — When mapping
color
to data, you can customize the color scale and adjust the mapping to fit specific visualization needs.
type
Optional NonPositional
Iterable Column String LineType
The type aesthetic is used to specify the style of lines in a plot, allowing for a diverse range of visual representations. This aesthetic enables the customization of line styles, providing clarity and distinction in data visualizations.
Setting
type = LineType
: applies a specific line style to lines within a layer. The value can be one of the predefinedLineType
constants:LineType.BLANK
LineType.SOLID
LineType.DASHED
LineType.DOTTED
LineType.DOTDASH
LineType.LONGDASH
LineType.TWODASH
Mapping
type(Iterable)
: links the line style of each element to a value from an iterable collection, allowing for various line styles within a single layer.type(ColumnReference | KProperty | DataColumn)
: associates line styles with a column in the DataFrame, facilitating data-driven line style variations.type(String)
: connects line styles to data based on the column name in the DataFrame or by key in a Map, offering flexibility in line style representation.