使用 Plots 在 Julia 中绘制数据帧
Plot DataFrames in Julia using Plots
在 Julia 中,有没有一种方法可以像 Python 的 Pandas 中的 df.plot()
一样绘制数据框?
更具体地说,我正在使用 Plots
、plotlyjs()
和 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 都会根据各自源列的名称自动标记系列。
在 Julia 中,有没有一种方法可以像 Python 的 Pandas 中的 df.plot()
一样绘制数据框?
更具体地说,我正在使用 Plots
、plotlyjs()
和 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 都会根据各自源列的名称自动标记系列。