TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Makie, a modern and fast plotting library for Julia

260 pointsby simondanischalmost 2 years ago

15 comments

martinsmitalmost 2 years ago
I switched permanently from Plots.jl to Makie.jl in order to have backend-agnostic fine-grained control. My publication plots look fantastic and the power given to users is really something. It also has a nicer API than Plots.jl once you get a hang of the figure, axis, plot distinction (plots live inside axes live inside figures) and what goes where.<p>Unfortunately, as with Plots, the documentation is lacking. The basic tutorial does a good job introducing the aspects of the package at a high level, but the fact that some parts of the documentation uses functions&#x2F;structs that don&#x27;t have docstrings in examples makes it very hard to build on the examples in these cases.<p>I get it, I <i>can</i> do anything with Makie, and most things that I want to do work amazingly. But my code for a single figure can get huge because it&#x27;s all so low level. See, for example, the Legend documentation[1].<p>[1]: <a href="https:&#x2F;&#x2F;docs.makie.org&#x2F;stable&#x2F;examples&#x2F;blocks&#x2F;legend&#x2F;index.html#multi-group_legends" rel="nofollow noreferrer">https:&#x2F;&#x2F;docs.makie.org&#x2F;stable&#x2F;examples&#x2F;blocks&#x2F;legend&#x2F;index.h...</a>
评论 #36590703 未加载
评论 #36588989 未加载
nsajkoalmost 2 years ago
One annoying thing about trying to install Makie (although it would be silly to blame Makie for it) is that installing it pulls <i>a ton</i> of compiled C&#x2F;C++ binary dependencies. I&#x27;m talking Fontconfig, Xorg(!?), Cairo, a bunch of audio and video codecs and compression libraries, among other things. Most&#x2F;all of these are transitive dependencies, though. And all of these are already installed system-wide, independently of Julia.<p>Although Julia is my favorite PL by far, it&#x27;s sometimes shocking how easily the Julia community sidesteps traditional programming values. Often this turns out to be a good thing, but the above issue is surely not a good example. I&#x27;d very much prefer to leave the work of packaging all those to the Archlinux maintainers.<p>EDIT: to be clear, this is more of a Julia-wide issue than a Makie issue. Or partly an issue with some of the Julia packages that Makie depends on. But Makie is perhaps the worst offender among the popular packages (transitively).
评论 #36591254 未加载
评论 #36590972 未加载
评论 #36591151 未加载
simondanischalmost 2 years ago
Makie is a modern plotting library for Julia. It is easy to use, fast and powerful. Packed with features, it is a general-purpose tool that makes as few compromises for specialized use cases as possible.<p>Try it out today: install Julia and <a href="https:&#x2F;&#x2F;julialang.org&#x2F;downloads" rel="nofollow noreferrer">https:&#x2F;&#x2F;julialang.org&#x2F;downloads</a> and in the Julia REPL run:<p>]add GLMakie<p>using GLMakie<p>scatter(1:4)
评论 #36588893 未加载
wthompalmost 2 years ago
Coming from matplotlib, I found Makie such a breath of fresh air. The API is just as (if not more) flexible but way more predictable. Their layout system in particular is amazing. I think it bundles it&#x27;s own constraint engine? Congrats on the new website!<p>PS. Thanks to the Makie team for the shoutout to my corner plot package in the ecosystem section!
评论 #36588361 未加载
评论 #36590233 未加载
leephillipsalmost 2 years ago
Chris Rackauckas has put together a valuable guide to the Julia plotting ecosystem here:<p><pre><code> http:&#x2F;&#x2F;www.stochasticlifestyle.com&#x2F;summary-of-julia-plotting-packages&#x2F; </code></pre> Useful, because the wealth of choices confuses people.<p>I stick with Plots.jl because of the recipe system. This is Plots’ secret weapon. If you create a package with its own data types, you can include instructions telling Plots how to visualize them. The user then need simply type<p><pre><code> plot(custom_type; etc.) </code></pre> to get the custom visualization. And the package need not include Plots as a dependency for this to work. This is only one of the things the recipe system can do.
评论 #36591090 未加载
评论 #36593118 未加载
jakobnissenalmost 2 years ago
Absolutely insane visuals - that does really make me want to play around with Makie. Bravo!<p>Traditionally, time to first plot has been awful in Julia. I remember using about 30 seconds back in 2018 to render my first Gadfly image. How is Makie doing on this front?
评论 #36588576 未加载
atulvialmost 2 years ago
Julia is looking more and more like a viable alternative to Python&#x27;s data science stack.
评论 #36589789 未加载
评论 #36590000 未加载
wodenokotoalmost 2 years ago
I was quite impressed to see they have their own online conference. I’ve never heard of GGcon or matplotlibcon.<p>I’m not using Julia, so I really don’t know about the library, but it seems like it has a very strong community
HDMI_Cablealmost 2 years ago
It seems like there&#x27;s a lot of libraries for plotting in Julia now. Does anyone know how good interoperability between Julia and R is? I have a lot of workflows in R and Python using some pretty niche bio informatics libraries, but Julia just seems...better.
评论 #36591048 未加载
评论 #36590516 未加载
bmitcalmost 2 years ago
I&#x27;m not interested in Julia, but this is pretty awesome stuff. It looks like it is built right on top of OpenGL and WebGL. How foes one go about learning to accomplish and develop this type of thing?
评论 #36593691 未加载
jbdistakenalmost 2 years ago
Great package &amp; community... As someone who was new to both julia &amp; makie, the community was helpful. &amp; what Makie lacked in documentation at the time, the authors were active in various forums for community questions. thanks Simon &amp; krumbie
operator-namealmost 2 years ago
Does anyone have any experience for how this compares to R&#x27;s ggplot2?
评论 #36590863 未加载
评论 #36589161 未加载
tkurakualmost 2 years ago
Makie has been far superior to Plots.jl in my experience.
twobitshifteralmost 2 years ago
in terms of being the only charting library to update based on diffs, this might be true for julia but javascript charting libraries have been doing this for a while. my favorite is echarts.
评论 #36591014 未加载
评论 #36597232 未加载
asdfman123almost 2 years ago
Why does Julia get her own plotting library? Unfair.
评论 #36594259 未加载