Merge remote-tracking branch 'upstream/master'
t push
This commit is contained in:
commit
916654b3ec
6
NEWS.md
6
NEWS.md
@ -12,6 +12,12 @@
|
|||||||
## (current master)
|
## (current master)
|
||||||
- All new development should target Julia 1.x!
|
- All new development should target Julia 1.x!
|
||||||
|
|
||||||
|
## 0.19.2
|
||||||
|
- several small fixes for 1.0 compatibility
|
||||||
|
|
||||||
|
## 0.19.1
|
||||||
|
- don't broadcast plot_color
|
||||||
|
|
||||||
## 0.19.0
|
## 0.19.0
|
||||||
- Refactor conditional loading to use Requires
|
- Refactor conditional loading to use Requires
|
||||||
- Many fixes for 1.0 compatibility
|
- Many fixes for 1.0 compatibility
|
||||||
|
|||||||
@ -400,7 +400,10 @@ function add_backend_string(::PyPlotBackend)
|
|||||||
"""
|
"""
|
||||||
using Pkg
|
using Pkg
|
||||||
Pkg.add("PyPlot")
|
Pkg.add("PyPlot")
|
||||||
|
Pkg.add("PyCall")
|
||||||
|
Pkg.add("LaTeXStrings")
|
||||||
withenv("PYTHON" => "") do
|
withenv("PYTHON" => "") do
|
||||||
|
Pkg.build("PyCall")
|
||||||
Pkg.build("PyPlot")
|
Pkg.build("PyPlot")
|
||||||
end
|
end
|
||||||
"""
|
"""
|
||||||
|
|||||||
@ -41,6 +41,7 @@ end
|
|||||||
|
|
||||||
#==Useful constants
|
#==Useful constants
|
||||||
===============================================================================#
|
===============================================================================#
|
||||||
|
const _hdf5_nullable{T} = Union{T, Nothing}
|
||||||
const _hdf5_plotroot = "plot"
|
const _hdf5_plotroot = "plot"
|
||||||
const _hdf5_dataroot = "data" #TODO: Eventually move data to different root (easier to locate)?
|
const _hdf5_dataroot = "data" #TODO: Eventually move data to different root (easier to locate)?
|
||||||
const _hdf5plot_datatypeid = "TYPE" #Attribute identifying type
|
const _hdf5plot_datatypeid = "TYPE" #Attribute identifying type
|
||||||
@ -129,7 +130,7 @@ if length(HDF5PLOT_MAP_TELEM2STR) < 1
|
|||||||
"AXIS" => Axis,
|
"AXIS" => Axis,
|
||||||
"SURFACE" => Surface,
|
"SURFACE" => Surface,
|
||||||
"SUBPLOT" => Subplot,
|
"SUBPLOT" => Subplot,
|
||||||
"NULLABLE" => Nullable,
|
"NULLABLE" => _hdf5_nullable,
|
||||||
)
|
)
|
||||||
merge!(HDF5PLOT_MAP_STR2TELEM, telem2str)
|
merge!(HDF5PLOT_MAP_STR2TELEM, telem2str)
|
||||||
merge!(HDF5PLOT_MAP_TELEM2STR, Dict{Type, String}(v=>k for (k,v) in HDF5PLOT_MAP_STR2TELEM))
|
merge!(HDF5PLOT_MAP_TELEM2STR, Dict{Type, String}(v=>k for (k,v) in HDF5PLOT_MAP_STR2TELEM))
|
||||||
@ -344,9 +345,10 @@ function _hdf5plot_gwritearray(grp, k::String, v::Array{T}) where T
|
|||||||
vgrp = HDF5.g_create(grp, k)
|
vgrp = HDF5.g_create(grp, k)
|
||||||
_hdf5plot_writetype(vgrp, Array) #ANY
|
_hdf5plot_writetype(vgrp, Array) #ANY
|
||||||
sz = size(v)
|
sz = size(v)
|
||||||
|
lidx = LinearIndices(sz)
|
||||||
|
|
||||||
for iter in eachindex(v)
|
for iter in eachindex(v)
|
||||||
coord = LinearIndices(sz, iter)
|
coord = lidx[iter]
|
||||||
elem = v[iter]
|
elem = v[iter]
|
||||||
idxstr = join(coord, "_")
|
idxstr = join(coord, "_")
|
||||||
_hdf5plot_gwrite(vgrp, "v$idxstr", v[iter])
|
_hdf5plot_gwrite(vgrp, "v$idxstr", v[iter])
|
||||||
@ -391,7 +393,7 @@ function _hdf5plot_gwrite(grp, k::String, v::Surface)
|
|||||||
_hdf5plot_writetype(grp, Surface)
|
_hdf5plot_writetype(grp, Surface)
|
||||||
end
|
end
|
||||||
# #TODO: "Properly" support Nullable using _hdf5plot_writetype?
|
# #TODO: "Properly" support Nullable using _hdf5plot_writetype?
|
||||||
# function _hdf5plot_gwrite(grp, k::String, v::Nullable)
|
# function _hdf5plot_gwrite(grp, k::String, v::_hdf5_nullable)
|
||||||
# if isnull(v)
|
# if isnull(v)
|
||||||
# _hdf5plot_gwrite(grp, k, nothing)
|
# _hdf5plot_gwrite(grp, k, nothing)
|
||||||
# else
|
# else
|
||||||
@ -508,10 +510,11 @@ function _hdf5plot_read(grp, k::String, T::Type{Array}, dtid) #ANY
|
|||||||
sz = _hdf5plot_read(grp, "dim")
|
sz = _hdf5plot_read(grp, "dim")
|
||||||
if [0] == sz; return []; end
|
if [0] == sz; return []; end
|
||||||
sz = tuple(sz...)
|
sz = tuple(sz...)
|
||||||
result = Array{Any}(sz)
|
result = Array{Any}(undef, sz)
|
||||||
|
lidx = LinearIndices(sz)
|
||||||
|
|
||||||
for iter in eachindex(result)
|
for iter in eachindex(result)
|
||||||
coord = LinearIndices(sz, iter)
|
coord = lidx[iter]
|
||||||
idxstr = join(coord, "_")
|
idxstr = join(coord, "_")
|
||||||
result[iter] = _hdf5plot_read(grp, "v$idxstr")
|
result[iter] = _hdf5plot_read(grp, "v$idxstr")
|
||||||
end
|
end
|
||||||
|
|||||||
@ -645,7 +645,7 @@ end
|
|||||||
|
|
||||||
function plotly_series_shapes(plt::Plot, series::Series)
|
function plotly_series_shapes(plt::Plot, series::Series)
|
||||||
segments = iter_segments(series)
|
segments = iter_segments(series)
|
||||||
d_outs = Vector{KW}(length(segments))
|
d_outs = Vector{KW}(undef, length(segments))
|
||||||
|
|
||||||
# TODO: create a d_out for each polygon
|
# TODO: create a d_out for each polygon
|
||||||
# x, y = series[:x], series[:y]
|
# x, y = series[:x], series[:y]
|
||||||
@ -707,7 +707,7 @@ function plotly_series_segments(series::Series, d_base::KW, x, y, z)
|
|||||||
(isa(series[:fillrange], AbstractVector) || isa(series[:fillrange], Tuple))
|
(isa(series[:fillrange], AbstractVector) || isa(series[:fillrange], Tuple))
|
||||||
|
|
||||||
segments = iter_segments(series)
|
segments = iter_segments(series)
|
||||||
d_outs = Vector{KW}((hasfillrange ? 2 : 1 ) * length(segments))
|
d_outs = Vector{KW}(undef, (hasfillrange ? 2 : 1 ) * length(segments))
|
||||||
|
|
||||||
for (i,rng) in enumerate(segments)
|
for (i,rng) in enumerate(segments)
|
||||||
!isscatter && length(rng) < 2 && continue
|
!isscatter && length(rng) < 2 && continue
|
||||||
|
|||||||
@ -38,7 +38,7 @@ function _series_updated(plt::Plot{PlotlyJSBackend}, series::Series)
|
|||||||
end
|
end
|
||||||
PlotlyJS.restyle!(
|
PlotlyJS.restyle!(
|
||||||
plt.o,
|
plt.o,
|
||||||
findfirst(plt.series_list, series),
|
findfirst(isequal(series), plt.series_list),
|
||||||
kw
|
kw
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|||||||
@ -283,11 +283,11 @@ end
|
|||||||
|
|
||||||
function plot(sp::Subplot, args...; kw...)
|
function plot(sp::Subplot, args...; kw...)
|
||||||
plt = sp.plt
|
plt = sp.plt
|
||||||
plot(plt, args...; kw..., subplot = findfirst(plt.subplots, sp))
|
plot(plt, args...; kw..., subplot = findfirst(isequal(sp), plt.subplots))
|
||||||
end
|
end
|
||||||
function plot!(sp::Subplot, args...; kw...)
|
function plot!(sp::Subplot, args...; kw...)
|
||||||
plt = sp.plt
|
plt = sp.plt
|
||||||
plot!(plt, args...; kw..., subplot = findfirst(plt.subplots, sp))
|
plot!(plt, args...; kw..., subplot = findfirst(isequal(sp), plt.subplots))
|
||||||
end
|
end
|
||||||
|
|
||||||
# --------------------------------------------------------------------
|
# --------------------------------------------------------------------
|
||||||
|
|||||||
@ -46,7 +46,7 @@ function plotattr(attrtype::Symbol, attribute::AbstractString)
|
|||||||
attribute = Symbol(lookup_aliases(attrtype, attribute))
|
attribute = Symbol(lookup_aliases(attrtype, attribute))
|
||||||
|
|
||||||
desc = get(_arg_desc, attribute, "")
|
desc = get(_arg_desc, attribute, "")
|
||||||
first_period_idx = findfirst(desc, '.')
|
first_period_idx = findfirst(isequal('.'), desc)
|
||||||
typedesc = desc[1:first_period_idx-1]
|
typedesc = desc[1:first_period_idx-1]
|
||||||
desc = strip(desc[first_period_idx+1:end])
|
desc = strip(desc[first_period_idx+1:end])
|
||||||
als = keys(filter((_,v)->v==attribute, _keyAliases)) |> collect |> sort
|
als = keys(filter((_,v)->v==attribute, _keyAliases)) |> collect |> sort
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user