And it is yet a bug ![]()
It’s a bug in parsing of the expression in the macro code of @ df :
It can be seen here:
julia> e = Meta.parse("@df begin
plot(:t0, Symbol(\"RPM revolutions_per_minute\"))
end")
:(#= none:1 =# @df begin
#= none:2 =#
plot(:t0, Symbol("RPM revolutions_per_minute"))
end)
julia> dump(e)
Expr
head: Symbol macrocall
args: Array{Any}((3,))
1: Symbol @df
2: LineNumberNode
line: Int64 1
file: Symbol none
3: Expr
head: Symbol block
args: Array{Any}((2,))
1: LineNumberNode
line: Int64 2
file: Symbol none
2: Expr
head: Symbol call
args: Array{Any}((3,))
1: Symbol plot
2: QuoteNode
value: Symbol t0
3: Expr
head: Symbol call
args: Array{Any}((2,))
1: Symbol Symbol
2: String "RPM revolutions_per_minute"
As you can see, the Symbol :t0 is represented as
value: Symbol t0
But Symbol(“RPM revolutions_per_minute”) is represented as
Array{Any}((2,))
1: Symbol Symbol
2: String "RPM revolutions_per_minute"
This case is not taken into account in StatsPlots.parse_table_call!
Do you mind opening an issue under above link? You may refer to this discussion.