3D Mesh plots

BinderScriptNotebook

Summary: This example shows how to create 3D-StreamTube charts in F#.

let's first create some data for the purpose of creating example charts:

#r "nuget: Deedle"
#r "nuget: FSharp.Data"
open Deedle
open FSharp.Data
open System
open Plotly.NET 
open Plotly.NET.TraceObjects

let tubeData =
    Http.RequestString @"https://raw.githubusercontent.com/plotly/datasets/master/streamtube-wind.csv"
    |> Frame.ReadCsvString

let streamTube = 
    Chart.StreamTube(
        x = (tubeData.["x"] |> Series.values),
        y = (tubeData.["y"] |> Series.values),
        z = (tubeData.["z"] |> Series.values),
        u = (tubeData.["u"] |> Series.values),
        v = (tubeData.["v"] |> Series.values),
        w = (tubeData.["w"] |> Series.values),
        TubeStarts = 
            StreamTubeStarts.init(
                X = Array.init 16 (fun _ -> 80),
                Y = [20;30;40;50;20;30;40;50;20;30;40;50;20;30;40;50],
                Z = [0;0;0;0;5;5;5;5;10;10;10;10;15;15;15;15]
            )
    )

    
namespace Deedle
Multiple items
namespace FSharp

--------------------
namespace Microsoft.FSharp
Multiple items
namespace FSharp.Data

--------------------
namespace Microsoft.FSharp.Data
namespace System
namespace Plotly
namespace Plotly.NET
namespace Plotly.NET.TraceObjects
val tubeData: Frame<int,string>
type Http = static member AsyncRequest: url: string * ?query: (string * string) list * ?headers: seq<string * string> * ?httpMethod: string * ?body: HttpRequestBody * ?cookies: seq<string * string> * ?cookieContainer: CookieContainer * ?silentHttpErrors: bool * ?silentCookieErrors: bool * ?responseEncodingOverride: string * ?customizeHttpRequest: (HttpWebRequest -> HttpWebRequest) * ?timeout: int -> Async<HttpResponse> static member AsyncRequestStream: url: string * ?query: (string * string) list * ?headers: seq<string * string> * ?httpMethod: string * ?body: HttpRequestBody * ?cookies: seq<string * string> * ?cookieContainer: CookieContainer * ?silentHttpErrors: bool * ?silentCookieErrors: bool * ?customizeHttpRequest: (HttpWebRequest -> HttpWebRequest) * ?timeout: int -> Async<HttpResponseWithStream> static member AsyncRequestString: url: string * ?query: (string * string) list * ?headers: seq<string * string> * ?httpMethod: string * ?body: HttpRequestBody * ?cookies: seq<string * string> * ?cookieContainer: CookieContainer * ?silentHttpErrors: bool * ?silentCookieErrors: bool * ?responseEncodingOverride: string * ?customizeHttpRequest: (HttpWebRequest -> HttpWebRequest) * ?timeout: int -> Async<string> static member Request: url: string * ?query: (string * string) list * ?headers: seq<string * string> * ?httpMethod: string * ?body: HttpRequestBody * ?cookies: seq<string * string> * ?cookieContainer: CookieContainer * ?silentHttpErrors: bool * ?silentCookieErrors: bool * ?responseEncodingOverride: string * ?customizeHttpRequest: (HttpWebRequest -> HttpWebRequest) * ?timeout: int -> HttpResponse static member RequestStream: url: string * ?query: (string * string) list * ?headers: seq<string * string> * ?httpMethod: string * ?body: HttpRequestBody * ?cookies: seq<string * string> * ?cookieContainer: CookieContainer * ?silentHttpErrors: bool * ?silentCookieErrors: bool * ?customizeHttpRequest: (HttpWebRequest -> HttpWebRequest) * ?timeout: int -> HttpResponseWithStream static member RequestString: url: string * ?query: (string * string) list * ?headers: seq<string * string> * ?httpMethod: string * ?body: HttpRequestBody * ?cookies: seq<string * string> * ?cookieContainer: CookieContainer * ?silentHttpErrors: bool * ?silentCookieErrors: bool * ?responseEncodingOverride: string * ?customizeHttpRequest: (HttpWebRequest -> HttpWebRequest) * ?timeout: int -> string
<summary> Utilities for working with network via HTTP. Includes methods for downloading resources with specified headers, query parameters and HTTP body </summary>
Multiple items
static member Http.RequestString: url: string * ?query: (string * string) list * ?headers: seq<string * string> * ?httpMethod: string * ?body: HttpRequestBody * ?cookies: seq<string * string> * ?cookieContainer: Net.CookieContainer * ?silentHttpErrors: bool * ?silentCookieErrors: bool * ?responseEncodingOverride: string * ?customizeHttpRequest: (Net.HttpWebRequest -> Net.HttpWebRequest) * ?timeout: int -> string

--------------------
static member Http.RequestString: url: string * ?query: (string * string) list * ?headers: seq<string * string> * ?httpMethod: string * ?body: HttpRequestBody * ?cookies: seq<string * string> * ?cookieContainer: Net.CookieContainer * ?silentHttpErrors: bool * ?silentCookieErrors: bool * ?responseEncodingOverride: string * ?customizeHttpRequest: (Net.HttpWebRequest -> Net.HttpWebRequest) * ?timeout: int -> string
Multiple items
module Frame from Deedle

--------------------
type Frame = inherit DynamicObj new: unit -> Frame

--------------------
type Frame<'TRowKey,'TColumnKey (requires equality and equality)> = interface IDynamicMetaObjectProvider interface INotifyCollectionChanged interface IFsiFormattable interface IFrame new: rowIndex: IIndex<'TRowKey> * columnIndex: IIndex<'TColumnKey> * data: IVector<IVector> * indexBuilder: IIndexBuilder * vectorBuilder: IVectorBuilder -> Frame<'TRowKey,'TColumnKey> + 1 overload member AddColumn: column: 'TColumnKey * series: seq<'V> -> unit + 3 overloads member AggregateRowsBy: groupBy: seq<'TColumnKey> * aggBy: seq<'TColumnKey> * aggFunc: Func<Series<'TRowKey,'a>,'b> -> Frame<int,'TColumnKey> member Clone: unit -> Frame<'TRowKey,'TColumnKey> member ColumnApply: f: Func<Series<'TRowKey,'T>,ISeries<'TRowKey>> -> Frame<'TRowKey,'TColumnKey> + 1 overload member DropColumn: column: 'TColumnKey -> unit ...

--------------------
new: unit -> Frame

--------------------
new: names: seq<'TColumnKey> * columns: seq<ISeries<'TRowKey>> -> Frame<'TRowKey,'TColumnKey>
new: rowIndex: Indices.IIndex<'TRowKey> * columnIndex: Indices.IIndex<'TColumnKey> * data: IVector<IVector> * indexBuilder: Indices.IIndexBuilder * vectorBuilder: Vectors.IVectorBuilder -> Frame<'TRowKey,'TColumnKey>
static member Frame.ReadCsvString: csvString: string * ?hasHeaders: bool * ?inferTypes: bool * ?inferRows: int * ?schema: string * ?separators: string * ?culture: string * ?maxRows: int * ?missingValues: string[] * ?preferOptions: bool -> Frame<int,string>
val streamTube: GenericChart.GenericChart
type Chart = static member AnnotatedHeatmap: zData: seq<#seq<'a1>> * annotationText: seq<#seq<string>> * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?X: seq<#IConvertible> * ?XGap: int * ?Y: seq<#IConvertible> * ?YGap: int * ?Text: 'a5 * ?MultiText: seq<'a5> * ?ColorBar: ColorBar * ?ColorScale: Colorscale * ?ShowScale: bool * ?ReverseScale: bool * ?ZSmooth: SmoothAlg * ?Transpose: bool * ?UseWebGL: bool * ?ReverseYAxis: bool * ?UseDefaults: bool -> GenericChart (requires 'a1 :> IConvertible and 'a5 :> IConvertible) + 1 overload static member Area: x: seq<#IConvertible> * y: seq<#IConvertible> * ?ShowMarkers: bool * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?MultiOpacity: seq<float> * ?Text: 'a2 * ?MultiText: seq<'a2> * ?TextPosition: TextPosition * ?MultiTextPosition: seq<TextPosition> * ?MarkerColor: Color * ?MarkerColorScale: Colorscale * ?MarkerOutline: Line * ?MarkerSymbol: MarkerSymbol * ?MultiMarkerSymbol: seq<MarkerSymbol> * ?Marker: Marker * ?LineColor: Color * ?LineColorScale: Colorscale * ?LineWidth: float * ?LineDash: DrawingStyle * ?Line: Line * ?StackGroup: string * ?Orientation: Orientation * ?GroupNorm: GroupNorm * ?FillColor: Color * ?UseWebGL: bool * ?UseDefaults: bool -> GenericChart (requires 'a2 :> IConvertible) + 1 overload static member Bar: values: seq<#IConvertible> * ?Keys: seq<#IConvertible> * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?MultiOpacity: seq<float> * ?Text: 'a2 * ?MultiText: seq<'a2> * ?MarkerColor: Color * ?MarkerColorScale: Colorscale * ?MarkerOutline: Line * ?MarkerPatternShape: PatternShape * ?MultiMarkerPatternShape: seq<PatternShape> * ?MarkerPattern: Pattern * ?Marker: Marker * ?Base: #IConvertible * ?Width: 'a4 * ?MultiWidth: seq<'a4> * ?TextPosition: TextPosition * ?MultiTextPosition: seq<TextPosition> * ?UseDefaults: bool -> GenericChart (requires 'a2 :> IConvertible and 'a4 :> IConvertible) + 1 overload static member BoxPlot: ?X: seq<#IConvertible> * ?Y: seq<#IConvertible> * ?Name: string * ?ShowLegend: bool * ?Text: 'a2 * ?MultiText: seq<'a2> * ?FillColor: Color * ?MarkerColor: Color * ?Marker: Marker * ?Opacity: float * ?WhiskerWidth: float * ?BoxPoints: BoxPoints * ?BoxMean: BoxMean * ?Jitter: float * ?PointPos: float * ?Orientation: Orientation * ?OutlineColor: Color * ?OutlineWidth: float * ?Outline: Line * ?AlignmentGroup: string * ?OffsetGroup: string * ?Notched: bool * ?NotchWidth: float * ?QuartileMethod: QuartileMethod * ?UseDefaults: bool -> GenericChart (requires 'a2 :> IConvertible) + 2 overloads static member Bubble: x: seq<#IConvertible> * y: seq<#IConvertible> * sizes: seq<int> * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?MultiOpacity: seq<float> * ?Text: 'a2 * ?MultiText: seq<'a2> * ?TextPosition: TextPosition * ?MultiTextPosition: seq<TextPosition> * ?MarkerColor: Color * ?MarkerColorScale: Colorscale * ?MarkerOutline: Line * ?MarkerSymbol: MarkerSymbol * ?MultiMarkerSymbol: seq<MarkerSymbol> * ?Marker: Marker * ?LineColor: Color * ?LineColorScale: Colorscale * ?LineWidth: float * ?LineDash: DrawingStyle * ?Line: Line * ?StackGroup: string * ?Orientation: Orientation * ?GroupNorm: GroupNorm * ?UseWebGL: bool * ?UseDefaults: bool -> GenericChart (requires 'a2 :> IConvertible) + 1 overload static member Candlestick: ``open`` : seq<#IConvertible> * high: seq<#IConvertible> * low: seq<#IConvertible> * close: seq<#IConvertible> * x: seq<#IConvertible> * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?Text: 'a5 * ?MultiText: seq<'a5> * ?Line: Line * ?IncreasingColor: Color * ?Increasing: FinanceMarker * ?DecreasingColor: Color * ?Decreasing: FinanceMarker * ?WhiskerWidth: float * ?UseDefaults: bool -> GenericChart (requires 'a5 :> IConvertible) + 1 overload static member Column: values: seq<#IConvertible> * ?Keys: seq<#IConvertible> * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?MultiOpacity: seq<float> * ?Text: 'a2 * ?MultiText: seq<'a2> * ?MarkerColor: Color * ?MarkerColorScale: Colorscale * ?MarkerOutline: Line * ?MarkerPatternShape: PatternShape * ?MultiMarkerPatternShape: seq<PatternShape> * ?MarkerPattern: Pattern * ?Marker: Marker * ?Base: #IConvertible * ?Width: 'a4 * ?MultiWidth: seq<'a4> * ?TextPosition: TextPosition * ?MultiTextPosition: seq<TextPosition> * ?UseDefaults: bool -> GenericChart (requires 'a2 :> IConvertible and 'a4 :> IConvertible) + 1 overload static member Contour: zData: seq<#seq<'a1>> * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?X: seq<#IConvertible> * ?Y: seq<#IConvertible> * ?Text: 'a4 * ?MultiText: seq<'a4> * ?ColorBar: ColorBar * ?ColorScale: Colorscale * ?ShowScale: bool * ?ReverseScale: bool * ?Transpose: bool * ?ContourLineColor: Color * ?ContourLineDash: DrawingStyle * ?ContourLineSmoothing: float * ?ContourLine: Line * ?ContoursColoring: ContourColoring * ?ContoursOperation: ConstraintOperation * ?ContoursType: ContourType * ?ShowContourLabels: bool * ?ContourLabelFont: Font * ?Contours: Contours * ?FillColor: Color * ?NContours: int * ?UseDefaults: bool -> GenericChart (requires 'a1 :> IConvertible and 'a4 :> IConvertible) static member Funnel: x: seq<#IConvertible> * y: seq<#IConvertible> * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?Width: float * ?Offset: float * ?Text: 'a2 * ?MultiText: seq<'a2> * ?TextPosition: TextPosition * ?MultiTextPosition: seq<TextPosition> * ?Orientation: Orientation * ?AlignmentGroup: string * ?OffsetGroup: string * ?MarkerColor: Color * ?MarkerOutline: Line * ?Marker: Marker * ?TextInfo: TextInfo * ?ConnectorLineColor: Color * ?ConnectorLineStyle: DrawingStyle * ?ConnectorFillColor: Color * ?ConnectorLine: Line * ?Connector: FunnelConnector * ?InsideTextFont: Font * ?OutsideTextFont: Font * ?UseDefaults: bool -> GenericChart (requires 'a2 :> IConvertible) static member Heatmap: zData: seq<#seq<'a1>> * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?X: seq<#IConvertible> * ?XGap: int * ?Y: seq<#IConvertible> * ?YGap: int * ?Text: 'a4 * ?MultiText: seq<'a4> * ?ColorBar: ColorBar * ?ColorScale: Colorscale * ?ShowScale: bool * ?ReverseScale: bool * ?ZSmooth: SmoothAlg * ?Transpose: bool * ?UseWebGL: bool * ?ReverseYAxis: bool * ?UseDefaults: bool -> GenericChart (requires 'a1 :> IConvertible and 'a4 :> IConvertible) + 1 overload ...
static member Chart.StreamTube: xyzuvw: seq<#IConvertible * #IConvertible * #IConvertible * #IConvertible * #IConvertible * #IConvertible> * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?Text: 'a6 * ?MultiText: seq<'a6> * ?ColorScale: StyleParam.Colorscale * ?ShowScale: bool * ?ColorBar: ColorBar * ?MaxDisplayed: int * ?TubeStarts: StreamTubeStarts * ?UseDefaults: bool -> GenericChart.GenericChart (requires 'a6 :> IConvertible)
static member Chart.StreamTube: streamTubeXYZ: seq<#IConvertible * #IConvertible * #IConvertible> * streamTubeUVW: seq<#IConvertible * #IConvertible * #IConvertible> * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?Text: 'a6 * ?MultiText: seq<'a6> * ?ColorScale: StyleParam.Colorscale * ?ShowScale: bool * ?ColorBar: ColorBar * ?MaxDisplayed: int * ?TubeStarts: StreamTubeStarts * ?UseDefaults: bool -> GenericChart.GenericChart (requires 'a6 :> IConvertible)
static member Chart.StreamTube: x: seq<#IConvertible> * y: seq<#IConvertible> * z: seq<#IConvertible> * u: seq<#IConvertible> * v: seq<#IConvertible> * w: seq<#IConvertible> * ?Name: string * ?ShowLegend: bool * ?Opacity: float * ?Text: 'g * ?MultiText: seq<'g> * ?ColorScale: StyleParam.Colorscale * ?ShowScale: bool * ?ColorBar: ColorBar * ?MaxDisplayed: int * ?TubeStarts: StreamTubeStarts * ?UseDefaults: bool -> GenericChart.GenericChart (requires 'g :> IConvertible)
argument x: seq<float>
<summary> Creates a streamtube plot, typically used to visualize flow in a vector field. Specify a vector field using 6 1D arrays of equal length: 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, and `w`. By default, the tubes' starting positions will be cut from the vector field's x-z plane at its minimum y value. To specify your own starting position, use `TubeStarts`. The color is encoded by the norm of (u, v, w), and the local radius by the divergence of (u, v, w). </summary>
<param name="x">Sets the x coordinates of the vector field and of the displayed cones.</param>
<param name="y">Sets the y coordinates of the vector field and of the displayed cones.</param>
<param name="z">Sets the z coordinates of the vector field and of the displayed cones.</param>
<param name="u">Sets the x components of the vector field.</param>
<param name="v">Sets the y components of the vector field.</param>
<param name="w">Sets the z components of the vector field.</param>
<param name="Name">Sets the trace name. The trace name appear as the legend item and on hover</param>
<param name="ShowLegend">Determines whether or not an item corresponding to this trace is shown in the legend.</param>
<param name="Opacity">Sets the opactity of the trace</param>
<param name="Text">Sets a text associated with each datum</param>
<param name="MultiText">Sets individual text for each datum</param>
<param name="ColorScale">Sets the colorscale</param>
<param name="ShowScale">Wether or not to show the colorbar/colorscale</param>
<param name="ColorBar">Sets the colorbar</param>
<param name="MaxDisplayed">The maximum number of displayed segments in a streamtube.</param>
<param name="TubeStarts">Use this object to specify custom tube start positions</param>
<param name="UseDefaults">If set to false, ignore the global default settings set in `Defaults`</param>
Multiple items
module Series from Deedle

--------------------
type Series = static member ofNullables: values: seq<Nullable<'a0>> -> Series<int,'a0> (requires default constructor and value type and 'a0 :> ValueType) static member ofObservations: observations: seq<'c * 'd> -> Series<'c,'d> (requires equality) static member ofOptionalObservations: observations: seq<'K * 'a1 option> -> Series<'K,'a1> (requires equality) static member ofValues: values: seq<'a> -> Series<int,'a>

--------------------
type Series<'K,'V (requires equality)> = interface IFsiFormattable interface ISeries<'K> new: index: IIndex<'K> * vector: IVector<'V> * vectorBuilder: IVectorBuilder * indexBuilder: IIndexBuilder -> Series<'K,'V> + 3 overloads member After: lowerExclusive: 'K -> Series<'K,'V> member Aggregate: aggregation: Aggregation<'K> * keySelector: Func<DataSegment<Series<'K,'V>>,'TNewKey> * valueSelector: Func<DataSegment<Series<'K,'V>>,OptionalValue<'R>> -> Series<'TNewKey,'R> (requires equality) + 1 overload member AsyncMaterialize: unit -> Async<Series<'K,'V>> member Before: upperExclusive: 'K -> Series<'K,'V> member Between: lowerInclusive: 'K * upperInclusive: 'K -> Series<'K,'V> member Compare: another: Series<'K,'V> -> Series<'K,Diff<'V>> member Convert: forward: Func<'V,'R> * backward: Func<'R,'V> -> Series<'K,'R> ...

--------------------
new: pairs: seq<Collections.Generic.KeyValuePair<'K,'V>> -> Series<'K,'V>
new: keys: seq<'K> * values: seq<'V> -> Series<'K,'V>
new: keys: 'K[] * values: 'V[] -> Series<'K,'V>
new: index: Indices.IIndex<'K> * vector: IVector<'V> * vectorBuilder: Vectors.IVectorBuilder * indexBuilder: Indices.IIndexBuilder -> Series<'K,'V>
val values: series: Series<'K,'T> -> seq<'T> (requires equality)
argument y: seq<float>
<summary> Creates a streamtube plot, typically used to visualize flow in a vector field. Specify a vector field using 6 1D arrays of equal length: 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, and `w`. By default, the tubes' starting positions will be cut from the vector field's x-z plane at its minimum y value. To specify your own starting position, use `TubeStarts`. The color is encoded by the norm of (u, v, w), and the local radius by the divergence of (u, v, w). </summary>
<param name="x">Sets the x coordinates of the vector field and of the displayed cones.</param>
<param name="y">Sets the y coordinates of the vector field and of the displayed cones.</param>
<param name="z">Sets the z coordinates of the vector field and of the displayed cones.</param>
<param name="u">Sets the x components of the vector field.</param>
<param name="v">Sets the y components of the vector field.</param>
<param name="w">Sets the z components of the vector field.</param>
<param name="Name">Sets the trace name. The trace name appear as the legend item and on hover</param>
<param name="ShowLegend">Determines whether or not an item corresponding to this trace is shown in the legend.</param>
<param name="Opacity">Sets the opactity of the trace</param>
<param name="Text">Sets a text associated with each datum</param>
<param name="MultiText">Sets individual text for each datum</param>
<param name="ColorScale">Sets the colorscale</param>
<param name="ShowScale">Wether or not to show the colorbar/colorscale</param>
<param name="ColorBar">Sets the colorbar</param>
<param name="MaxDisplayed">The maximum number of displayed segments in a streamtube.</param>
<param name="TubeStarts">Use this object to specify custom tube start positions</param>
<param name="UseDefaults">If set to false, ignore the global default settings set in `Defaults`</param>
argument z: seq<float>
<summary> Creates a streamtube plot, typically used to visualize flow in a vector field. Specify a vector field using 6 1D arrays of equal length: 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, and `w`. By default, the tubes' starting positions will be cut from the vector field's x-z plane at its minimum y value. To specify your own starting position, use `TubeStarts`. The color is encoded by the norm of (u, v, w), and the local radius by the divergence of (u, v, w). </summary>
<param name="x">Sets the x coordinates of the vector field and of the displayed cones.</param>
<param name="y">Sets the y coordinates of the vector field and of the displayed cones.</param>
<param name="z">Sets the z coordinates of the vector field and of the displayed cones.</param>
<param name="u">Sets the x components of the vector field.</param>
<param name="v">Sets the y components of the vector field.</param>
<param name="w">Sets the z components of the vector field.</param>
<param name="Name">Sets the trace name. The trace name appear as the legend item and on hover</param>
<param name="ShowLegend">Determines whether or not an item corresponding to this trace is shown in the legend.</param>
<param name="Opacity">Sets the opactity of the trace</param>
<param name="Text">Sets a text associated with each datum</param>
<param name="MultiText">Sets individual text for each datum</param>
<param name="ColorScale">Sets the colorscale</param>
<param name="ShowScale">Wether or not to show the colorbar/colorscale</param>
<param name="ColorBar">Sets the colorbar</param>
<param name="MaxDisplayed">The maximum number of displayed segments in a streamtube.</param>
<param name="TubeStarts">Use this object to specify custom tube start positions</param>
<param name="UseDefaults">If set to false, ignore the global default settings set in `Defaults`</param>
argument u: seq<float>
<summary> Creates a streamtube plot, typically used to visualize flow in a vector field. Specify a vector field using 6 1D arrays of equal length: 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, and `w`. By default, the tubes' starting positions will be cut from the vector field's x-z plane at its minimum y value. To specify your own starting position, use `TubeStarts`. The color is encoded by the norm of (u, v, w), and the local radius by the divergence of (u, v, w). </summary>
<param name="x">Sets the x coordinates of the vector field and of the displayed cones.</param>
<param name="y">Sets the y coordinates of the vector field and of the displayed cones.</param>
<param name="z">Sets the z coordinates of the vector field and of the displayed cones.</param>
<param name="u">Sets the x components of the vector field.</param>
<param name="v">Sets the y components of the vector field.</param>
<param name="w">Sets the z components of the vector field.</param>
<param name="Name">Sets the trace name. The trace name appear as the legend item and on hover</param>
<param name="ShowLegend">Determines whether or not an item corresponding to this trace is shown in the legend.</param>
<param name="Opacity">Sets the opactity of the trace</param>
<param name="Text">Sets a text associated with each datum</param>
<param name="MultiText">Sets individual text for each datum</param>
<param name="ColorScale">Sets the colorscale</param>
<param name="ShowScale">Wether or not to show the colorbar/colorscale</param>
<param name="ColorBar">Sets the colorbar</param>
<param name="MaxDisplayed">The maximum number of displayed segments in a streamtube.</param>
<param name="TubeStarts">Use this object to specify custom tube start positions</param>
<param name="UseDefaults">If set to false, ignore the global default settings set in `Defaults`</param>
argument v: seq<float>
<summary> Creates a streamtube plot, typically used to visualize flow in a vector field. Specify a vector field using 6 1D arrays of equal length: 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, and `w`. By default, the tubes' starting positions will be cut from the vector field's x-z plane at its minimum y value. To specify your own starting position, use `TubeStarts`. The color is encoded by the norm of (u, v, w), and the local radius by the divergence of (u, v, w). </summary>
<param name="x">Sets the x coordinates of the vector field and of the displayed cones.</param>
<param name="y">Sets the y coordinates of the vector field and of the displayed cones.</param>
<param name="z">Sets the z coordinates of the vector field and of the displayed cones.</param>
<param name="u">Sets the x components of the vector field.</param>
<param name="v">Sets the y components of the vector field.</param>
<param name="w">Sets the z components of the vector field.</param>
<param name="Name">Sets the trace name. The trace name appear as the legend item and on hover</param>
<param name="ShowLegend">Determines whether or not an item corresponding to this trace is shown in the legend.</param>
<param name="Opacity">Sets the opactity of the trace</param>
<param name="Text">Sets a text associated with each datum</param>
<param name="MultiText">Sets individual text for each datum</param>
<param name="ColorScale">Sets the colorscale</param>
<param name="ShowScale">Wether or not to show the colorbar/colorscale</param>
<param name="ColorBar">Sets the colorbar</param>
<param name="MaxDisplayed">The maximum number of displayed segments in a streamtube.</param>
<param name="TubeStarts">Use this object to specify custom tube start positions</param>
<param name="UseDefaults">If set to false, ignore the global default settings set in `Defaults`</param>
argument w: seq<float>
<summary> Creates a streamtube plot, typically used to visualize flow in a vector field. Specify a vector field using 6 1D arrays of equal length: 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, and `w`. By default, the tubes' starting positions will be cut from the vector field's x-z plane at its minimum y value. To specify your own starting position, use `TubeStarts`. The color is encoded by the norm of (u, v, w), and the local radius by the divergence of (u, v, w). </summary>
<param name="x">Sets the x coordinates of the vector field and of the displayed cones.</param>
<param name="y">Sets the y coordinates of the vector field and of the displayed cones.</param>
<param name="z">Sets the z coordinates of the vector field and of the displayed cones.</param>
<param name="u">Sets the x components of the vector field.</param>
<param name="v">Sets the y components of the vector field.</param>
<param name="w">Sets the z components of the vector field.</param>
<param name="Name">Sets the trace name. The trace name appear as the legend item and on hover</param>
<param name="ShowLegend">Determines whether or not an item corresponding to this trace is shown in the legend.</param>
<param name="Opacity">Sets the opactity of the trace</param>
<param name="Text">Sets a text associated with each datum</param>
<param name="MultiText">Sets individual text for each datum</param>
<param name="ColorScale">Sets the colorscale</param>
<param name="ShowScale">Wether or not to show the colorbar/colorscale</param>
<param name="ColorBar">Sets the colorbar</param>
<param name="MaxDisplayed">The maximum number of displayed segments in a streamtube.</param>
<param name="TubeStarts">Use this object to specify custom tube start positions</param>
<param name="UseDefaults">If set to false, ignore the global default settings set in `Defaults`</param>
Multiple items
type StreamTubeStarts = inherit DynamicObj new: unit -> StreamTubeStarts static member init: ?X: seq<#IConvertible> * ?Y: seq<#IConvertible> * ?Z: seq<#IConvertible> -> StreamTubeStarts static member style: ?X: seq<#IConvertible> * ?Y: seq<#IConvertible> * ?Z: seq<#IConvertible> -> (StreamTubeStarts -> StreamTubeStarts)
<summary> An object to set the Lighting of a 3D Scene </summary>

--------------------
new: unit -> StreamTubeStarts
static member StreamTubeStarts.init: ?X: seq<#IConvertible> * ?Y: seq<#IConvertible> * ?Z: seq<#IConvertible> -> StreamTubeStarts
argument X: seq<int> option
<summary> Initializes a TubeStarts object </summary>
<param name="X">Sets the x components of the starting position of the streamtubes</param>
<param name="Y">Sets the y components of the starting position of the streamtubes</param>
<param name="Z">Sets the z components of the starting position of the streamtubes</param>
type Array = interface ICollection interface IEnumerable interface IList interface IStructuralComparable interface IStructuralEquatable interface ICloneable member Clone: unit -> obj member CopyTo: array: Array * index: int -> unit + 1 overload member GetEnumerator: unit -> IEnumerator member GetLength: dimension: int -> int ...
<summary>Provides methods for creating, manipulating, searching, and sorting arrays, thereby serving as the base class for all arrays in the common language runtime.</summary>
val init: count: int -> initializer: (int -> 'T) -> 'T[]
<summary>Creates an array given the dimension and a generator function to compute the elements.</summary>
<param name="count">The number of elements to initialize.</param>
<param name="initializer">The function to generate the initial values for each index.</param>
<returns>The created array.</returns>
<exception cref="T:System.ArgumentException">Thrown when count is negative.</exception>
<example id="init-1"><code lang="fsharp"> Array.init 4 (fun v -&gt; v + 5) </code> Evaluates to <c>[| 5; 6; 7; 8 |]</c></example>
<example id="init-2"><code lang="fsharp"> Array.init -5 (fun v -&gt; v + 5) </code> Throws <c>ArgumentException</c></example>
argument Y: seq<int> option
<summary> Initializes a TubeStarts object </summary>
<param name="X">Sets the x components of the starting position of the streamtubes</param>
<param name="Y">Sets the y components of the starting position of the streamtubes</param>
<param name="Z">Sets the z components of the starting position of the streamtubes</param>
argument Z: seq<int> option
<summary> Initializes a TubeStarts object </summary>
<param name="X">Sets the x components of the starting position of the streamtubes</param>
<param name="Y">Sets the y components of the starting position of the streamtubes</param>
<param name="Z">Sets the z components of the starting position of the streamtubes</param>
module GenericChart from Plotly.NET
<summary> Module to represent a GenericChart </summary>
val toChartHTML: gChart: GenericChart.GenericChart -> string
<summary> Converts a GenericChart to it HTML representation. The div layer has a default size of 600 if not specified otherwise. </summary>