Week 11 of GSoC
Week 11 of GSoC is done! 🎉😸💻 Phew, it’s been a while since the last update!
The following is a progress report since the last post.
Milestones – Makie.jl
and AbstractPlotting.jl
- continually updated
Makie
andAbstractPlotting
packages, bringing updates and improvements to documentation and additional tutorials. - extension of the
Documenter.Selectors.matcher
andDocumenter.Selectors.runner
to match custom-defined keywords using regex, and perform actions based on the match captures- as an example you can now write
@example_database("Contour3d")
in thedocumentation.md
source Markdown file, and during compile, the source code + the plot of the example will be automatically inserted - likewise,
@example_database("Contour3d", code)
inserts only the source code, and @example_database("Contour3d", plot)
inserts only the plot (oh, the magic of regex 😍)
- as an example you can now write
- implementation of a
Stepper
class that allows one tostep!
through example plots, and save a plot at eachstep
mutable struct Stepper scene::Scene folder::String step::Int end function step!(s::Stepper) Makie.save(joinpath(s.folder, basename(s.folder) * "-$(s.step).jpg"), s.scene) s.step += 1 return s end
- these
stepper
examples are great for showing off progressive changes in plots, such as demonstrating the effects of theming or changing data:
- the
stepper
examples are automatically generated when compiling the documentation, and inserted on the fly- as above, we can also write
@example_database("Theming", stepperplot)
in thedocumentation.md
to insert stepper plots automatically
- as above, we can also write
- for some more stepper examples, consult the
Makie
documentation, which is available online!
Mergers (& Acquisitions)
- two PRs to branch
master
onAbstractPlotting
merged🎉! #2, #4. - three major PRs to branch
master
onMakie
containing many documentation changes are merged🎉!! They are: #99, #111, and #114. - AND… the Gitlab CI pipeline for visual regression tests actually passed, for once!
The “failed” status with the documentation postprocessing step is due to a missing package on the CI, and should be fixed soon.
- I also implemented some subscenes examples, e.g.:
surface
+ contour3d
plot
surface
+ wireframe
+ contour
plot
Check these examples out in the examples3d.jl
library!
One more thing…
- I started exploring some implicit plots, and plots involving inequalities, these generate some pretty interesting-looking plots:
And lastly… a spacecraft from a galaxy far, far away
source for implicit equations: http://www.leweyg.com/download/impview.html
These examples are saved in the implicits.jl
library, so feel free to check them out! 😀☝
TODOs
- add more documentation pages, including proper documentation of the
Stepper
class - making a poster for JuliaCon 2018 in London, UK, which is in 11 days! I will be attending and presenting a poster as part of my GSoC project under the Julia organization, along with a few other GSoC students. Huge thanks to NumFOCUS for sponsoring us!!
So, that’s it! Hope you enjoyed reading this. Onwards to the last 10 days of coding 👨💻!
Image source: Google Summer of Code, CC BY-NC-ND 3.0