-
-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Filled contour plots #319
Comments
Great, I wasn't aware of the extra Symbols for Legacy Computing block of
Even if we use opaque characters instead of braille characters, this could be our implementation for the missing Could also be useful for drawing polar heatmaps: I wonder if it's possible to render a perfect circle using these characters. I like this ;) |
I guess that the first step is creating a new canvas type ( |
Started fork at jhidding/UnicodePlots.jl. |
Great, I would for the moment (subject to evolution) hijack if canvas === FilledCanvas
# TODO: process levels, and fill the canvas
# Note that displaying the characters is not done here (delayed to using `show`, `display` or `savefig` on the plot)
# and that is handled in `src/show.jl`: https://github.com/JuliaPlots/UnicodePlots.jl/blob/master/src/show.jl#L301
# There, each canvas row is printed: since `FilledCanvas` is a subtype of the abstract type `LookupCanvas`,
# `lookup_decode` must be implemented such that decoding can occur in here:
# https://github.com/JuliaPlots/UnicodePlots.jl/blob/master/src/canvas/lookupcanvas.jl#L75
# I would suggest taking inspiration from `src/interface/heatmap.jl` for filling the grid and colors:
# https://github.com/JuliaPlots/UnicodePlots.jl/blob/master/src/interface/heatmap.jl#L192-L196
else
contourplot!(plot, x, y, A; colormap, okw...) # other canvases (BrailleCanvas, ...)
end
plot , so that you can work your mwe out (TIL himmelblau): julia> using UnicodePlots
julia> himmelblau(x, y) = (x^2 + y - 11)^2 + (x + y^2 - 7)^2
julia> contourplot(himmelblau; canvas = FilledCanvas, levels = ...) # would need to adjust `levels` kw to take a vector of levels It's unlikely a miracle will happen but that's a start ... You can also open a draft |
Also note that filling This means that the |
Hi, I once created a demo for filled contour plots in the terminal. When I saw this package I thought I might contribute it. The original was in Rust, but I created a small demo in Julia to show what I had in mind: https://github.com/jhidding/UnicodeContour.jl
This code could also be adapted for the
fill_between
feature that was requested earlier in #254.If you like the idea, I could invest some more time to see if this works.
The text was updated successfully, but these errors were encountered: