# Exports

Exports aim to provide a consistent generation of images of your results. For example if you record the trace your algorithm walks on the Sphere, you yan easily export this trace to a rendered image using `asymptote_export_S2_signals`

and render the result with Asymptote. Despite these, you can always record values during your iterations, and export these, for example to `csv`

.

## Asymptote

The following functions provide exports both in graphics and/or raw data using Asymptote.

`Manopt.asymptote_export_S2_data`

— Method`asymptote_export_S2_data(filename)`

Export given `data`

as an array of points on the sphere, i.e. one-, two- or three-dimensional data with points on the Sphere $\mathbb S^2$.

**Input**

`filename`

– a file to store the Asymptote code in.

**Optional Arguments (Data)**

`data`

– a point representing the 1-,2-, or 3-D array of points`elevationColorScheme`

- A`ColorScheme`

for elevation`scaleAxes`

- (`(1/3,1/3,1/3)`

) move spheres closer to each other by a factor per direction

**Optional Arguments (Asymptote)**

`arrowHeadSize`

- (`1.8`

) size of the arrowheads of the vectors (in mm)`cameraPosition`

- position of the camrea (default: centered above xy-plane) szene`target`

- position the camera points at (default: center of xy-plane within data).

`Manopt.asymptote_export_S2_signals`

— Method`asymptote_export_S2_signals(filename; points, curves, tVectors, colors, options...)`

Export given `points`

, `curves`

, and `tVectors`

on the sphere $\mathbb S^2$ to Asymptote.

**Input**

`filename`

– a file to store the Asymptote code in.

**Optional Arguments (Data)**

`colors`

- dictionary of color arrays (indexed by symbols`:points`

,`:curves`

and`:tvector`

) where each entry has to provide as least as many colors as the length of the corresponding sets.`curves`

– an`Array`

of`Arrays`

of points on the sphere, where each inner array is interpreted as a curve and is accompanied by an entry within`colors`

`points`

– an`Array`

of`Arrays`

of points on the sphere where each inner array is itnerpreted as a set of points and is accompanied by an entry within`colors`

`tVectors`

– an`Array`

of`Arrays`

of tuples, where the first is a points, the second a tangent vector and each set of vectors is accompanied by an entry from within`colors`

**Optional Arguments (Asymptote)**

`arrowHeadSize`

- (`6.0`

) size of the arrowheads of the tangent vectors`cameraPosition`

- (`(1., 1., 0.)`

) position of the camera in the Asymptote szene`lineWidth`

– (`1.0`

) size of the lines used to draw the curves.`lineWidths`

– overrides the previous value to specify a value per curve and tVector set.`dotSize`

– (`1.0`

) size of the dots used to draw the points.`dotSizes`

– overrides the previous value to specify a value per point set.`sphereColor`

– (`RGBA{Float64}(0.85, 0.85, 0.85, 0.6)`

) color of the sphere the data is drawn on`sphereLineColor`

– (`RGBA{Float64}(0.75, 0.75, 0.75, 0.6)`

) color of the lines on the sphere`sphereLineWidth`

– (`0.5`

) line width of the lines on the sphere`target`

– (`(0.,0.,0.)`

) position the camera points at

`Manopt.asymptote_export_SPD`

— Method`asymptote_export_SPD(filename)`

export given `data`

as a point on a `Power{SPDPoint}`

manifold, i.e. one-, two- or three-dimensional data with points on the manifold of symmetric positive definite matrices.

**Input**

`filename`

– a file to store the Asymptote code in.

**Optional Arguments (Data)**

`data`

– a point representing the 1-,2-, or 3-D array of`SPDPoints`

`colorScheme`

- A`ColorScheme`

for Geometric Anisotropy Index`scaleAxes`

- (`(1/3,1/3,1/3)`

) move symmetric positive definite matrices closer to each other by a factor per direction compared to the distance esimated by the maximal eigenvalue of all involved SPD points

**Optional Arguments (Asymptote)**

`cameraPosition`

- position of the camrea (default: centered above xy-plane) szene.`target`

- position the camera points at (default: center of xy-plane within data).

Both values `cameraPosition`

and `target`

are scaled by `scaledAxes*EW`

, where `EW`

is the maximal eigenvalue in the `data`

.

`Manopt.render_asymptote`

— Method`render_asymptote(filename; render=4, format="png", ...)`

render an exported asymptote file specified in the `filename`

, which can also be given as a relative or full path

**Input**

`filename`

– filename of the exported`asy`

and rendered image

**Keyword Arguments**

the default values are given in brackets

`render`

– (`4`

) render level of asymptote, i.e. its`-render`

option`format`

– (`"png"`

) final rendered format, i.e. asymptote's`-f`

option`export_file`

- (the filename with format as ending) specify the export filename