Making julia show different plots in different windows

When working with Julia, it is common to encounter situations where you need to display multiple plots in different windows. By default, Julia displays all plots in the same window, which can make it difficult to compare and analyze the data. In this article, we will explore three different ways to make Julia show different plots in different windows.

Option 1: Using the Plots.jl package

The Plots.jl package is a powerful plotting library for Julia that provides a high-level interface to various backends, including the popular PyPlot backend. To display plots in different windows using Plots.jl, you can use the plot function and specify the display argument as :window. Here’s an example:


using Plots

# Create two plots
plot1 = plot(rand(10), title="Plot 1")
plot2 = plot(rand(10), title="Plot 2")

# Display plots in different windows
display(plot1, display=:window)
display(plot2, display=:window)

This code will open two separate windows, each displaying one of the plots. You can customize the plots further by adding labels, legends, and other plot elements using the Plots.jl API.

Option 2: Using the Gadfly package

Gadfly is another popular plotting package for Julia that provides a grammar of graphics interface. To display plots in different windows using Gadfly, you can use the draw function and specify the output argument as :png. Here’s an example:


using Gadfly

# Create two plots
plot1 = plot(x=rand(10), y=rand(10), Geom.point, Guide.title("Plot 1"))
plot2 = plot(x=rand(10), y=rand(10), Geom.point, Guide.title("Plot 2"))

# Display plots in different windows
draw(PNG("plot1.png", 400px, 300px), plot1)
draw(PNG("plot2.png", 400px, 300px), plot2)

This code will save the plots as PNG images and open them in separate windows. You can adjust the size of the windows by changing the dimensions specified in the PNG function.

Option 3: Using the PyPlot package

If you prefer to use the PyPlot backend directly, you can achieve the desired behavior by creating separate figures and calling the show function for each figure. Here’s an example:


using PyPlot

# Create two figures
figure1 = figure()
figure2 = figure()

# Create two subplots
subplot(1, 2, 1)
plot(rand(10))
title("Plot 1")

subplot(1, 2, 2)
plot(rand(10))
title("Plot 2")

# Show the figures in different windows
show(figure1)
show(figure2)

This code will open two separate windows, each displaying one of the plots. You can customize the plots further using the PyPlot API.

After exploring these three options, it is clear that using the Plots.jl package provides the most convenient and flexible way to display different plots in different windows. It offers a high-level interface and supports multiple backends, making it easy to switch between different plotting libraries. Additionally, Plots.jl provides extensive customization options, allowing you to create visually appealing and informative plots.

Rate this post

Leave a Reply

Your email address will not be published. Required fields are marked *

Table of Contents