使用 Plots 在 Julia 中绘制数据帧

Plot DataFrames in Julia using Plots

在 Julia 中,有没有一种方法可以像 Python 的 Pandas 中的 df.plot() 一样绘制数据框?

更具体地说,我正在使用 Plotsplotlyjs()DataFrames 包。

假设你有一个 DataFrame:

using DataFrames, Plots
df = DataFrame(series1 = 1:10, series2 = sin.(1:10), series3=rand(10));

你做不到:

plot(Matrix(df), labels=permutedims(names(df)), legend=:topleft)

只是为了补充 Przemyslaw 的答案,Plots.jl 的一个扩展称为 StatsPlots.jl,它提供了许多额外的方法和宏来以简洁的方式绘制数据帧,同时还包括诸如分组变量之类的东西数据等

值得查看那里的完整自述文件,看看它能做什么,但是实现与 Prezemyslaw 的答案相同的输出的两种等效方法是:

julia> @df df plot([:series1 :series2 :series3])

或者,更简洁地说:

julia> @df df plot(cols())

请注意,在任何一种情况下,StatsPlots 都会根据各自源列的名称自动标记系列。