# What are the biggest differences between Makie.jl and Plots.jl?

**URL:** <https://discourse.julialang.org/t/what-are-the-biggest-differences-between-makie-jl-and-plots-jl/76643>\
**Category:** Visualization\
**Created:** [February 17, 2022, 6:32pm UTC](https://discourse.julialang.org/t/what-are-the-biggest-differences-between-makie-jl-and-plots-jl/76643 "2022-02-17T18:32:46Z")\
**Posts on this page:** 1\
**Showing post:** 6

<div class="post-metadata">

**Author:** ![Nathan\_Boyer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nathan_boyer/32/14825_2.png) [@Nathan\_Boyer](https://discourse.julialang.org/u/Nathan_Boyer)\
**Post date:** [February 25, 2022, 8:55pm UTC](https://discourse.julialang.org/t/what-are-the-biggest-differences-between-makie-jl-and-plots-jl/76643/6 "2022-02-25T20:55:17Z")

</div>

Reporting back after some brief experience with Makie and a few other plotting packages:

Currently, it seems like Makie has some rough edges and suffers from some of the same multi-backend issues as Plots. For example, the Cairo backend is the only one which can output vector graphics, but it won’t open a display from the terminal and doesn’t have any interactivity. The GL backend won’t open inside the VSCode plot pane. The WGL backend needs [extra setup](https://makie.juliaplots.org/dev/documentation/backends/wglmakie/index.html) for multiple figures. I do think Makie is the most powerful and has some of the best documentation, but it is still a little fiddly for my taste. If you are going to stick to one environment and focus on animations, then I think it will work well for you.

For my goals of simple, composable, and reliable, I am probably going to stick with [Gadfly](http://gadflyjl.org/dev/) until the Makie experience is more streamlined. Gadfly will open a nice plot that can pan/zoom anywhere I run the code. It can output to multiple file formats, and there isn’t too much to configure. The documentation and GitHub Issues backlog could use some help, but it seems to do all the basics extraordinarily well.

Some people also recommend [VegaLite](https://www.queryverse.org/VegaLite.jl/stable/), but using a macro to convert Julia to JSON doesn’t meet my idea of simple.

See some more comparisons here:

> [@How to make this plot in Julia?](https://discourse.julialang.org/t/how-to-make-this-plot-in-julia/75065/3):
>
> Thanks @juliohm I was under the impression that Gadfly was stalled, but that appears to be a misunderstanding. It actually does ok: Gadfly [billede] With proper name-spacing and extra packages it also works from Weave: using Gadfly, Cairo, Fontconfig plot(d, x=:time, y=:value, color=:name, label=:name, Gadfly.Geom.point(), Gadfly.Geom.line(), Gadfly.Geom.label()) Thanks for making me re-visit that. AlgebraOfGraphics I’m not able to find a way to add text-labels on the plot in AlgebraOf…

> [@Plots, VegaLite, Gadfly and Makie. What is the difference between the Julia visualization packages?](https://discourse.julialang.org/t/plots-vegalite-gadfly-and-makie-what-is-the-difference-between-the-julia-visualization-packages/56024/17):
>
> For a super basic comparison and out of curiosity, I’ve taken a scatter plot and bar chart from the documentation of different libraries. Note that this neglects many things like the fact that fine-tuning would probably allow for “prettier” graphs. Also, it doesn’t say much about how easy users can change the appearance, but it is still nice to look at. VegaLite.jl [image] [image] Gadfly.jl [image] [image] Makie For PyPlot, GR and other library examples, see the documenta…

---

_[View the full topic](https://discourse.julialang.org/t/what-are-the-biggest-differences-between-makie-jl-and-plots-jl/76643)._
