Problem rendering Compose.Context from GraphPlot.gplot() with gksqt backend on Windows (Julia v1.11.4)

Dear Julia Community,

I am encountering an issue while trying to visualize a simple graph using the GraphPlot package (v0.6.1) in Julia (v1.11.4) on a 64-bit Windows operating system. My goal is to use the gksqt graphics backend.

  1. I have followed these steps in my code:
    using Graphs
    using GraphPlot
    using Plots
    using GR_jll
    using Compose

  2. Selecting gksqt
    gksqt()

  3. Generating a simple graph for testing:
    g_simple = SimpleDiGraph(2)
    add_edge!(g_simple, 1, 2)
    labels_simple = [“A”, “B”]

  4. Drawing the graph using GraphPlot.gplot()
    drawing = GraphPlot.gplot(g_simple, nodelabel = labels_simple)

  5. Attempting to display using display()
    display(drawing)

  6. Additional context about my environment:

Operating System: Windows (x86_64-w64-mingw32)

Julia Version: 1.11.4 (2025-03-10)

Package Versions (obtained with Pkg.status()
(Note: I have included the full output of Pkg.status() to provide a complete overview of my environment.)

Previously, the GKS QtTerm window did open and function correctly when I executed an extensive decision-making code that also utilized the gksqt backend. This indicates that the backend itself is functional on my system.

My specific question is: What is the correct method to render a Compose.Context object generated by GraphPlot.gplot() so that it is visualized in the GKS QtTerm backend window on my Windows system? Is there an additional function I need to call or any specific configuration I should be aware of to achieve this?

Any help or suggestions would be greatly appreciated.

Thank you in advance for your time and expertise.

Sincerely,

ChaucAPA

Welcome to the Julia community!

  • Plots/GR are separate from Compose.jl
  • Compose has 3 graphical backends (svg, pdf/png, and tikz/pgf)
  • Compose has a draw function e.g. draw(PNG(), drawing)
  • Compose doesn’t need any display functions of it’s own (typically other packages that define “plottable objects” write their own display functions e.g. that call Compose.draw). See e.g. the Gadfly display functions
  • see more Julia discourse examples here and here
  • Juliacon video about Julia’s display system