Libraries.Interface.Layouts.ViolinPlotLayout Documentation

This is the layout class for Violin Chart. This class is responsible for positioning all chart area components of the Violin chart. Generally, layout classes such as this are behind the scenes and we do not need to interact with them directly.

Example Code

use Libraries.Compute.Statistics.DataFrame
use Libraries.Interface.Controls.Charts.ViolinPlot

DataFrame frame
frame:Load("Data.csv")
frame:AddSelectedColumn(1)
ViolinPlot chart = frame:ViolinPlot()
chart:SetTitle("My Awesome Title")
chart:SetXAxisTitle("Time")
chart:Display()

Inherits from: Libraries.Language.Object, Libraries.Interface.Layouts.Layout, Libraries.Interface.Layouts.ChartLayout

Actions Documentation

Compare(Libraries.Language.Object object)

This action compares two object hash codes and returns an integer. The result is larger if this hash code is larger than the object passed as a parameter, smaller, or equal. In this case, -1 means smaller, 0 means equal, and 1 means larger. This action was changed in Quorum 7 to return an integer, instead of a CompareResult object, because the previous implementation was causing efficiency issues.

Parameters

Return

integer: The Compare result, Smaller, Equal, or Larger.

Example

Object o
Object t
integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smaller)

Equals(Libraries.Language.Object object)

This action determines if two objects are equal based on their hash code values.

Parameters

Return

boolean: True if the hash codes are equal and false if they are not equal.

Example

use Libraries.Language.Object
use Libraries.Language.Types.Text
Object o
Text t
boolean result = o:Equals(t)

EstimateDensity(number bandWidth, number dataScale, Libraries.Compute.Vector dataset, number min, number max, Libraries.Compute.Statistics.Analysis.UnivariateAction window)

KDE: Kernel density esstimation It is a method that finds out the normal distribution of a give set of data It use kernel functions to calculate the probability of every single data point We have: simplest kernel,Gaussian kernel,triangular kernel,parabolic(Epanechnikov) kernel,triweight kernel, tricube kernel,cosine kernel,logistic kernel,sigmoid kernel,silverman kernel By default, it uses Gaussian kernel which is smother than other kernel functions We put this functions here because the distributions at each value is scaled based on the pixel height of the chart Parameters: bandWidth is a number that represent the interval, the bigger the number, the flatter the graph will be dataScale indicates how data grow from min to max base on pixel height kernalFunction indicates what kernel function to use

Parameters

Return

Libraries.Containers.Array:

EstimateDensity(number bandWidth, number dataScale, Libraries.Compute.Vector dataset, Libraries.Compute.Statistics.Analysis.UnivariateAction window)

KDE: Kernel density esstimation It is a method that finds out the normal distribution of a give set of data It use kernel functions to calculate the probability of every single data point We have: simplest kernel,Gaussian kernel,triangular kernel,parabolic(Epanechnikov) kernel,triweight kernel, tricube kernel,cosine kernel,logistic kernel,sigmoid kernel,silverman kernel By default, it uses Gaussian kernel which is smother than other kernel functions We put this functions here because the distributions at each value is scaled based on the pixel height of the chart Parameters: bandWidth is a number that represent the interval, the bigger the number, the flatter the graph will be dataScale indicates how data grow from min to max base on pixel height kernalFunction indicates what kernel function to use

Parameters

Return

Libraries.Containers.Array:

GetHashCode()

This action gets the hash code for an object.

Return

integer: The integer hash code of the object.

Example

Object o
integer hash = o:GetHashCode()

Layout(Libraries.Interface.Controls.Control container, Libraries.Containers.Array<Libraries.Interface.Item2D> items, number containerWidth, number containerHeight)

Parameters

LayoutChartContent(Libraries.Interface.Controls.Charts.Chart control, Libraries.Interface.Controls.Control chartAreaContainer)

LayoutHorizontalAxis(Libraries.Interface.Controls.Charts.Chart chart, Libraries.Interface.Controls.Charts.HorizontalAxisPanel horizontalContainer)

Chart layouts do not have a way to determine the ticks of a subclass because charts are very different in style. As such, every chart needs to override this with ticks relevant for its own chart type.

Parameters

LayoutLegend(Libraries.Interface.Controls.Charts.Chart chart, Libraries.Interface.Controls.Charts.Legend legendContainer)

This line is in the chart area. So the placement is less than 0

Parameters

LayoutVerticalAxis(Libraries.Interface.Controls.Charts.Chart chart, Libraries.Interface.Controls.Charts.VerticalAxisPanel verticalContainer)

SetChartDrawableSelectionArrow(Libraries.Interface.Controls.Charts.Graphics.ChartDrawable item, integer arrowSize, boolean sideArrow)

Fetch the next color from the palette in the Options

Parameters

SetChartDrawableSelectionBracketAndArrow(Libraries.Interface.Controls.Charts.Graphics.ChartDrawable item, integer arrowSize, boolean sideArrow)

Calculate and add padding so the edges of points aren't cut off.

Parameters