# Examples/tutorials for using PyPlot (directly)

**URL:** https://discourse.julialang.org/t/examples-tutorials-for-using-pyplot-directly/8486
**Category:** General Usage
**Created:** [January 20, 2018, 12:22am UTC](https://discourse.julialang.org/t/examples-tutorials-for-using-pyplot-directly/8486 "2018-01-20T00:22:53Z")
**Posts on this page:** 1
**Showing post:** 11

<div class="post-metadata">

### Author: ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)
#### Post date: [January 21, 2018, 10:08pm UTC](https://discourse.julialang.org/t/examples-tutorials-for-using-pyplot-directly/8486/11 "2018-01-21T22:08:06Z")

</div>

> [@jlperla](#):
>
> I am not sure, because I haven’t seen the sort of libraries people could design for jupyter/juno display if they were unshackled from having to provide a common interface for print-focused plots. I imagine pretty cool stuff with Reactive.jl, Interactive.jl, etc. I have the seen some pretty cool interactive web graphics over the last few years…

Makie.jl is built on top of GLVisualize.jl which has all sorts of interactivity (look at the tweets and gifs). I believe the idea is to have all of this, and then disable it for libraries which can’t handle it, not the other way around.

> [@jlperla](#):
>
> Moreover, are we sure that even if the dependent library issue requiring the use of eval for backends that it will be fast to use? There is a LOT of code to compile for a general front-end to backend interface, and I am not convinced it could all be precompiled.

Doesn’t matter if you’re not convinced, it’s already been done 😉.

> [@Prerelease: MakiE - interactive plotting!](https://discourse.julialang.org/t/prerelease-makie-interactive-plotting/6811/32):
>
> I just made a big step forward concerning time to first plot, by having MakiE statically compiled as a standalone executable. I will still need to figure out the details, but it shows that this is certainly possible: The above is real time and is a time to first image under one second slight_smile

It compiles into binaries and the system image for instant startup. Some work on ease of use / ease of installation is in order, but there’s no questioning that it works.

> [@jlperla](#):
>
> Since the target isn’t even clear, and we want to get people using Julia before then, we need a solution. What I was planning to tell people was:
> 
> use PlotlyJS.jl as your first place to explore the results, and it may be good enough for a while  
> directly use PyPlot.jl for building higher quality output for slides, papers, etc as required. I typically find that you write those sorts well after the initial exploration of the results.  
> finally, consider Plots.jl as a simple interface for producing plots or reading existing examples (with the understanding it is very slow to use right now, and will change in the medium term).

Sure. I would suggest always trying to keep the number of libraries to a minimum, and PyPlot.jl is interactive if you use its GUI so that’s a nice thing to use. I use Plotly all the time though, but those are my two main Plots.jl backends.

> [@jlperla](#):
>
> Is that good advice, or am I leading them astray?

The answer is that there’s no good answer right now. The hope is that any answer is temporary, so go with what you know.

---

_[View the full topic](https://discourse.julialang.org/t/examples-tutorials-for-using-pyplot-directly/8486)._
