# Show PyPlot

**URL:** <https://discourse.julialang.org/t/show-pyplot/91166>\
**Category:** General Usage\
**Tags:** question\
**Created:** [December 3, 2022, 1:27am UTC](https://discourse.julialang.org/t/show-pyplot/91166 "2022-12-03T01:27:21Z")\
**Posts on this page:** 1\
**Showing post:** 9

<div class="post-metadata">

**Author:** ![marllos](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/marllos/32/205917_2.png) [@marllos](https://discourse.julialang.org/u/marllos)\
**Post date:** [December 6, 2022, 5:28pm UTC](https://discourse.julialang.org/t/show-pyplot/91166/9 "2022-12-06T17:28:02Z")

</div>

I updated to Fedora 37 and it looks like PyCall can’t use python 3.11 so I did the ENV[“PYTHON”] = “” procedure, suggested by ufechner7 ([PyPlot stopped working when upgrading to Fedora 37 - #2 by ufechner7](https://discourse.julialang.org/t/pyplot-stopped-working-when-upgrading-to-fedora-37/90485/2)) and it worked. Then I noticed that show() didn’t redisplay graphs. I don’t know if it’s related!

```julia
# at the bash terminal
using PyPlot

# try 1
plot( collect(1:100), rand(100) .^ 50 )
# close the figure manually
# I type show(): blank line

# try 2
x = plot( collect(1:100), rand(100) .^ 50 )
# close the figure manually
# I type show(), ans: blank line
# I type show(x), ans: PyCall.PyObject[PyObject <matplotlib.lines.Line2D object at 0x7f9f4eed92d0>]
# I type display(x), ans: 1-element Vector{PyObject}: \n PyObject <matplotlib.lines.Line2D object at 0x7f9f4eed92d0>

# try 3
x = figure()
plot( collect(1:100), rand(100) .^ 50 )
# close the figure manually
# I type display(x), show(x), show(), ans: almost the same, but no figure

# a curious fact (for me)
using Serialization

x = plot( collect(1:100), rand(100) .^ 50 )
data = (text="tests", img=x)
serialize("data.bin", data)
# close the figure manually
data = deserialize("data.bin")
# The figure is redisplayed, without any other command!

```

---

_[View the full topic](https://discourse.julialang.org/t/show-pyplot/91166)._
