# GraphRecipes versus GraphPlot: why such a big performance disparity?

**URL:** <https://discourse.julialang.org/t/graphrecipes-versus-graphplot-why-such-a-big-performance-disparity/43474>\
**Category:** Graphs\
**Tags:** plotting, lightgraphs\
**Created:** [July 22, 2020, 5:38am UTC](https://discourse.julialang.org/t/graphrecipes-versus-graphplot-why-such-a-big-performance-disparity/43474 "2020-07-22T05:38:52Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![izzorts](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/izzorts/32/3525_2.png) [@izzorts](https://discourse.julialang.org/u/izzorts)\
**Post date:** [July 22, 2020, 5:38am UTC](https://discourse.julialang.org/t/graphrecipes-versus-graphplot-why-such-a-big-performance-disparity/43474/1 "2020-07-22T05:38:52Z")

</div>

So, I was trying to plot some graphs and `GraphPlot` happened to be insufficient (I needed smaller labels than what seems to be the inferior size limit). Then I went trying to use `GraphRecipes`, because it seemed to have both this and other features that would be useful to me. I was surprised to notice that `graphplot` from `GraphRecipes` is _very_ slow. Is it supposed to be used only for small graphs or something? Did I miss something crucial in my code? Here’s an example:

```julia
using LightGraphs
using Plots, GraphRecipes
using GraphPlot

bag = LightGraphs.barabasi_albert(300, 1)

gplot(bag)

plot(rand(100))

graphplot(bag, curves=false)

@time gplot(bag)
@time graphplot(bag, curves=false)

```

where for `gplot` we have: `0.105031 seconds (3.47 k allocations: 203.547 KiB)`, for `graphplot` we have staggering `28.659242 seconds (1.51 G allocations: 31.108 GiB, 12.27% gc time)`.

What am I missing?
