Hi,

I’m working with an array holding 2D points so I can plot a trajectory of an iterative process.

Each point has the type `Vector{Float64}`

, e.g. [1., 2.]

My array has the type `Vector{Array{Float64,1}}`

,

E.g.

`trajectory[1:3] = Array{Float64,1}[[0.200811, 2.22703], [0.154444, 1.9618], [0.069549, 1.50583]]`

Now trying to plot with `Plots.jl`

I’m looking for behaviour like Mathematica’s `ListPlot`

which would put a point on the plane for each vector [x,y] in the array. In general this is what I’d like, does anyone know of a `Plots.jl`

function or formula that works in this way?

I first attempted to use `scatter(trajectory)`

which didn’t work. I realized I need to give it two arrays like:

`scatter(xarray, yarray)`

This brings me to my main question here, more general than just plotting. Is there a way for me to use bracket notation to access, for example, the first index across all the vectors in my array?

`trajectory[1] = [0.200811, 2.22703]`

returns the first vector in my array, as expected.

`trajectory[:, 1] = Array{Float64,1}[[0.200811, 2.22703], [0.154444, 1.9618], ...`

returns the entire array.

`trajectory[1, :] = Array{Float64,1}[[0.200811, 2.22703]]`

returns an array with just the first vector.

My solution right now is to broadcast `getindex`

across the array:

`getindex.(trajectory, 1) = [0.200811, 0.154444, ...`

Is there a better solution than this? Am I doing something really ugly by working with an array of vectors? I feel like this is a natural structure for my problem but perhaps not if the syntax isn’t clean.