user120911
user120911

Reputation: 285

Plot along different dimensions

I have the following basic code. The first line sums p along dimension 1 to create a 1 x column array. The next line plot A. Unfortunately, it seems that Julia assumes it must plot many lines (in this case just points) along dimension 2.

A = sum(p,dims = 1)
plot(A)

So, my question is, how can I plot a simple line when the data is in a 1 x column array?

Upvotes: 0

Views: 352

Answers (1)

hckr
hckr

Reputation: 5583

I assume you use Plots.jl. The following is from Plots.jl's documentation.

If the argument [to plot] is a "matrix-type", then each column will map to a series, cycling through columns if there are fewer columns than series. In this sense, a vector is treated just like an "nx1 matrix".

The number of series plot(a) tries to plot is the number of columns in a.

To get a single series, you can do one of the followings

plot(vec(a)) # `vec` will give you a vector view of `a` without an allocation

plot(a') # or `plot(transpose(a))`. `transpose` does not allocate a new array

plot(a[:]) # this allocates a new array so you should probably avoid it

Upvotes: 1

Related Questions