# 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 can 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`elevation_color_scheme`

- A`ColorScheme`

for elevation`scale_axes`

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

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

**Optional Arguments (Asymptote)**

`arrow_head_size`

- (`1.8`

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

- 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, tangent_vectors, colors, options...)`

Export given `points`

, `curves`

, and `tangent_vectors`

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`

`tangent_vectors`

– 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)**

`arrow_head_size`

- (`6.0`

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

– overrides the previous value to specify a value per tVector set.`camera_position`

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

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

– (`1.0`

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

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

– (`1.0`

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

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

- (`nothing`

) a tuple for the image size, otherwise a relative size`4cm`

is used.`sphere_color`

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

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

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

) color of the lines on the sphere`sphere_line_width`

– (`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(SymmetricPOsitiveDefinnite(3))}`

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 SPD matrices`color_scheme`

- A`ColorScheme`

for Geometric Anisotropy Index`scale_axes`

- (`(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)**

`camera_position`

- 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 `camera_position`

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. This can be removed from the command by setting it to`nothing`

.`format`

– (`"png"`

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

option`export_file`

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