working on groups and iris notebook
This commit is contained in:
parent
75f4ca928f
commit
e3612b973f
315
examples/iris.ipynb
Normal file
315
examples/iris.ipynb
Normal file
File diff suppressed because one or more lines are too long
13
src/args.jl
13
src/args.jl
@ -215,6 +215,7 @@ const _keyAliases = Dict(
|
|||||||
:windowsize => :size,
|
:windowsize => :size,
|
||||||
:wsize => :size,
|
:wsize => :size,
|
||||||
:wtitle => :windowtitle,
|
:wtitle => :windowtitle,
|
||||||
|
:gui => :show,
|
||||||
:display => :show,
|
:display => :show,
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -255,15 +256,17 @@ end
|
|||||||
"A special type that will break up incoming data into groups, and allow for easier creation of grouped plots"
|
"A special type that will break up incoming data into groups, and allow for easier creation of grouped plots"
|
||||||
type GroupBy
|
type GroupBy
|
||||||
numGroups::Int
|
numGroups::Int
|
||||||
numPoints::Int
|
|
||||||
groupLabels::Vector{UTF8String} # length == numGroups
|
groupLabels::Vector{UTF8String} # length == numGroups
|
||||||
groupIds::Vector{Int} # length == numPoints
|
groupIds::Vector{Vector{Int}} # list of indices for each group
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
function extractGroupArgs(d::Dict)
|
# expecting a mapping of "group label" to "group indices"
|
||||||
# expecting a mapping of "group label" to "group indices"
|
function extractGroupArgs{V<:AVec{Int}}(d::Dict{T,V})
|
||||||
|
numGroups = length(d)
|
||||||
|
groupLabels = sortedkeys(d)
|
||||||
|
groupIds = VecI[collect(d[k]) for k in groupLabels]
|
||||||
|
GroupBy(numGroups, groupLabels, groupIds)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
10
src/plot.jl
10
src/plot.jl
@ -96,7 +96,7 @@ function plot!(plt::Plot, args...; kw...)
|
|||||||
|
|
||||||
# get the list of dictionaries, one per series
|
# get the list of dictionaries, one per series
|
||||||
kwList, xmeta, ymeta = createKWargsList(plt, groupargs..., args...; d...)
|
kwList, xmeta, ymeta = createKWargsList(plt, groupargs..., args...; d...)
|
||||||
@show xmeta ymeta typeof(xmeta) typeof(ymeta)
|
# @show xmeta ymeta typeof(xmeta) typeof(ymeta)
|
||||||
|
|
||||||
# if we were able to extract guide information from the series inputs, then update the plot
|
# if we were able to extract guide information from the series inputs, then update the plot
|
||||||
updateDictWithMeta(d, plt.initargs, xmeta, true)
|
updateDictWithMeta(d, plt.initargs, xmeta, true)
|
||||||
@ -114,9 +114,9 @@ function plot!(plt::Plot, args...; kw...)
|
|||||||
|
|
||||||
# NOTE: lets ignore the show param and effectively use the semicolon at the end of the REPL statement
|
# NOTE: lets ignore the show param and effectively use the semicolon at the end of the REPL statement
|
||||||
# # do we want to show it?
|
# # do we want to show it?
|
||||||
# if haskey(d, :show) && d[:show]
|
if haskey(d, :show) && d[:show]
|
||||||
# display(plt)
|
gui()
|
||||||
# end
|
end
|
||||||
|
|
||||||
plt
|
plt
|
||||||
end
|
end
|
||||||
@ -261,7 +261,7 @@ function createKWargsList(plt::PlottingObject; kw...)
|
|||||||
d = Dict(kw)
|
d = Dict(kw)
|
||||||
if !haskey(d, :y)
|
if !haskey(d, :y)
|
||||||
# assume we just want to create an empty plot object which can be added to later
|
# assume we just want to create an empty plot object which can be added to later
|
||||||
return []
|
return [], nothing, nothing
|
||||||
# error("Called plot/subplot without args... must set y in the keyword args. Example: plot(; y=rand(10))")
|
# error("Called plot/subplot without args... must set y in the keyword args. Example: plot(; y=rand(10))")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user