# Fastest time-to-plot for Jupyter demos/tutorials (after precompilation, but from otherwise cold start)?

**URL:** <https://discourse.julialang.org/t/fastest-time-to-plot-for-jupyter-demos-tutorials-after-precompilation-but-from-otherwise-cold-start/8114>\
**Category:** New to Julia\
**Tags:** plotting, tutorials\
**Created:** [January 2, 2018, 6:18pm UTC](https://discourse.julialang.org/t/fastest-time-to-plot-for-jupyter-demos-tutorials-after-precompilation-but-from-otherwise-cold-start/8114 "2018-01-02T18:18:51Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![MA\_Laforge](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ma_laforge/32/385_2.png) [@MA\_Laforge](https://discourse.julialang.org/u/MA_Laforge)\
**Post date:** [January 3, 2018, 4:50pm UTC](https://discourse.julialang.org/t/fastest-time-to-plot-for-jupyter-demos-tutorials-after-precompilation-but-from-otherwise-cold-start/8114/4 "2018-01-03T16:50:06Z")

</div>

…If you don’t need fancy advanced features like 3D plots & pie charts, but still want publication-quality 2D plots:

_ **You could also use InspectDR** _ ([ANN: New interactive Plots.jl backend for large datasets](https://discourse.julialang.org/t/ann-new-interactive-plots-jl-backend-for-large-datasets/1442)).

InspectDR has the advantage over GR by providing basic interactivity:

- Mouse/keyboard bindings for pan/zoom
- Programmatic + user-level control of annotations (ex: delta markers).

…Hopefully GR will start providing some interactivity features soon as well (it is supposedly on the TODO list).

The usage documentation for InspectDR is on the Github home page: [GitHub - ma-laforge/InspectDR.jl: Fast, interactive Julia/GTK+ plots (+Smith charts +Gtk widget +Cairo-only images)](https://github.com/ma-laforge/InspectDR.jl)

There is also a few sample usage cases in the “sample” subdirectory: [InspectDR.jl/sample at master · ma-laforge/InspectDR.jl · GitHub](https://github.com/ma-laforge/InspectDR.jl/tree/master/sample)

### Sample output:

- [FileRepo/InspectDR/sampleplots/README.md at master · ma-laforge/FileRepo · GitHub](https://github.com/ma-laforge/FileRepo/blob/master/InspectDR/sampleplots/README.md)
- [FileRepo/SignalProcessing/sampleplots/README.md at master · ma-laforge/FileRepo · GitHub](https://github.com/ma-laforge/FileRepo/blob/master/SignalProcessing/sampleplots/README.md)

### Warning:

Will not work in JuliaBox (JuliaBox has problems with installing the Gtk.jl package).

### Sample minimal Code:

```julia-auto
using InspectDR

x = collect(0:10) #Must vectorize using collect - ranges not yet supported
y = rand(length(x))

plot = InspectDR.Plot2D(:lin, :lin,
	title = "Sample Plot",
	xlabel = "X-Values",
	ylabels = ["Y-Values"]
)

wfrm = add(plot, x, y, id="Random Sample")

#Show Gtk GUI
gplot = display(InspectDR.GtkDisplay(), plot)

```

_ **edit:** _  
To display inline plots, use the following call to `display` instead:

```julia-auto
#SVG plotting in Jupyter buggy @ the moment:
InspectDR.defaults.rendersvg = false #Call once only

display(plot) #Explicit call to "display" plot
nothing #Clear return value so we don't display plot twice

```

---

_[View the full topic](https://discourse.julialang.org/t/fastest-time-to-plot-for-jupyter-demos-tutorials-after-precompilation-but-from-otherwise-cold-start/8114)._
