Performance Regression?
Hey all, after updating to the most recent GraphRecipes, I seem to run into issues with plotting large numbers of edges.
For instance, the following call works on [email protected] (on Julia 1.4.1, macOS, using Plots)
graphplot(rand(1:1000,25000),rand(1:1000,25000), x = randn(1000), y = randn(1000), arrow=false, markersize=0.5)
On [email protected], the following didn't terminate in a reasonable amount of time
using GraphRecipes, Plots; graphplot(rand(1:1000,25000),rand(1:1000,25000), x = randn(1000), y = randn(1000), arrow=false, nodesize=0.5, markersize=0.5)
These were with the GR backend.
Extra notes on versions.
I'm honestly not sure what version of Plots.jl I'm using for these tests. When I ran add [email protected] I saw, [91a5bcdd] ↓ Plots v1.0.12 ⇒ v0.29.9
Then when I went back to update GraphRecipes
(@v1.4) pkg> update GraphRecipes
Updating registry at `~/.julia/registries/General`
Updating git-repo `https://github.com/JuliaRegistries/General.git`
Updating `~/.julia/environments/v1.4/Project.toml`
[bd48cda9] ↑ GraphRecipes v0.4.0 ⇒ v0.5.2
Updating `~/.julia/environments/v1.4/Manifest.toml`
[13072b0f] + AxisAlgorithms v1.0.0
[3da002f7] ↓ ColorTypes v0.10.2 ⇒ v0.9.1
[5ae59095] ↓ Colors v0.12.0 ⇒ v0.11.2
[53c48c17] ↓ FixedPointNumbers v0.8.0 ⇒ v0.7.1
[4d00f742] ↓ GeometryTypes v0.8.2 ⇒ v0.7.10
[bd48cda9] ↑ GraphRecipes v0.4.0 ⇒ v0.5.2
[a98d9a8b] + Interpolations v0.12.9
[6fe1bfb0] + OffsetArrays v1.0.4
[c84ed2f1] + Ratios v0.4.0
[efce3f68] + WoodburyMatrices v0.5.2
Thanks for opening this issue. As part of #117 I am putting all of the edges into one series and I am making extra sure that the nearest intersection is not calculated unless you really want a directed graph with arrows on it. I don't think that your arrow=false will make sure that graphplot wont compute where edges intersect with nodes, although it should.
It will be interesting to try out the performance once I have all of that lined up.