Difference between revisions of "Gnuplot/C2/Multiple-plots-in-a-canvas/English"
| Line 205: | Line 205: | ||
|- | |- | ||
|| Hover mouse over '''origin''', '''xrange''' and '''yrange'''. | || Hover mouse over '''origin''', '''xrange''' and '''yrange'''. | ||
| − | || | + | || Here, I am specifying autoscale for axes range. |
|- | |- | ||
Revision as of 15:30, 22 January 2020
| Visual Cue | Narration |
| Slide Number 1
Title Slide Multiple plots in a canvas |
Welcome to the tutorial on Multiple plots in a canvas. |
| Slide Number 2
Learning Objectives |
In this tutorial we will learn to,
|
| Slide Number 3
Learning Objectives |
|
| Slide Number 4
Pre-requisites |
To record this tutorial, I am using,
|
| Slide Number 5
System and Software Requirement https:spoken-tutorial.org |
To follow this tutorial,
|
| Slide Number 6
Code files |
|
| Press Ctrl+Alt+T.
Enter the command cd Desktop. |
Open a terminal and change the directory to Desktop.
I will demonstrate the multiplot command, with four graphs in one canvas. |
| Type gedit &. | Type gedit space ampersand.
The ampersand makes the process run in the background. It detaches the process from the terminal.
|
| Press Enter. | Press Enter to open gedit.
Windows users may use notepad or wordpad. We will write the required commands in a text file. |
| Type, #my first multiplot and press Enter. | I will type hash my first multiplot and press Enter .
This is a comment line. |
| Type set multiplot, press Enter. | Next, set the environment to multiplot mode, as set space multiplot.
Start a new line and leave a blank line for clarity. |
| Cursor on gedit window. | We will plot, sin x, cos x, a straight line and an exponential decay graphs. |
| Type header line,
#x-sin(x) plot |
I will start with the script for the sin(x) part.
In the next line, enter a comment to identify that, the plot is for sin x. |
| Type lines,
set origin 0,0 set size 0.5, 0.5 |
Enter the next two commands as shown here.
They define the size and placement for the sin x plot. |
| Hover mouse next to set origin 0,0 . | This plot is set at position zero, zero which is the origin.
This is the left hand bottom corner of the page. |
| Hover mouse next to set size 0.5,0.5 . | Here I am specifying plot size to be a square of point 5 by point 5.
This size is relative to the total page size and makes it a quarter of the page. |
| Type the following lines,
set xrange[-10:10] yrange[-2:2] set title '”x-sin(x) plot” |
We will set x and y range and title for the sin (x) plot.
These are the graph formatting details for the sin x plot. |
| Type plot sin(x) and press Enter. | We will then issue the plot command for sin(x). |
| Type,
# cos (x) - x plot |
I will enter details for the second plot, which is cos (x).
First, write a comment line, to indicate it is the part for cos (x), in the script. Type hash cos x-x plot. |
| Type the lines,
set origin 0.5,0.0 set size 0.5, 0.5 set xrange[-10:10] set yrange[-2:2] set title "x-cos(x) graph" plot cos(x) notitle |
Enter the commands as shown here.
Pause the video as and when necessary. |
| Hover mouse next to set origin and set size. | Here, I specify the position and size of the second plot.
The position is set to the right side of the sin x plot. |
| Show the data.txt file icon in Desktop. | I will use the data from the text file data.txt, for the third and fourth plots.
This file is provided to you in the Code files link of this tutorial. |
| Show screenshot of file on Desktop. | I have downloaded and saved the file on Desktop. |
| Show screenshot of the file. | The file has 3 data columns, x , y1 and y2 . |
| Type
#straight line plot |
Now, I will enter the details for the third plot.
Write a comment, starting with a hash. Type, straight line plot and press Enter. |
| Type the lines,
set origin 0.5,0.5 set size 0.5, 0.5 |
Again specify the size and position for this graph.
This position places the graph in the top right corner. |
| Type the lines,
set title "straight line" set xrange[*:*] set yrange[*:*] plot 'data.txt' using 1:3 with linespoint notitle and press Enter. |
Enter the commands as shown here.
Specify the title, autoscale axis range and issue the plot command. |
| Hover mouse over 1:3 in the plot command. | The 3rd column in the data file is the y data values for the straight line plot. |
| Cursor in gedit window. | Pause the video when required to enter the commands. |
| Hover mouse over origin, xrange and yrange. | Here, I am specifying autoscale for axes range. |
| Hover mouse next to 1:3 .
Hover mouse next to notitle. |
Here I am using column 1 for x data and column 3 for y data.
Here I also specify, no legend title is required in the plot. |
| Cursor in gedit window. | Let's write the part of script to generate the exponential decay plot. |
| Type, #exponential decay and
press Enter. |
I will type hash exponential decay for the comment line. |
| Type,
set origin 0.0,0.5 and press Enter. |
For this plot, set the position above the sin x plot in the top left corner. |
| Type,
set size 0.5, 0.5 set title "Exponential decay" set autoscale plot 'data.txt' using 1:2 with linespoint notitle and press Enter. |
Set size, title for graph and auto-scale the data.
Read in the columns for x and y data from the data file in the plot command. Here, it is column 1 and column 2 for x and y data. |
| Press Enter.
Type unset multiplot and press Enter. |
I will leave an blank line after this.
Finally, unset the multiplot mode with the command, unset space multiplot. |
| Press ctrl+S. | Press ctrl S to open the file save as dialogue box. |
| Type filename as, multiplot.dem
Click on save. |
Save the file in Desktop directory with filename multiplot.dem.
Click on save to save the script. |
| Minimize gedit. | Minimize the gedit window. |
| Go to the terminal. | Go to the terminal. |
| Type gnuplot and press Enter. | Let’s open gnuplot . |
| Press Ctrl+L . | I will also clear the screen. |
| Cursor in the terminal. | Let's run the script to generate the multiplot. |
| Type load 'multiplot.dem' and press Enter. | Enter the command, load space in single quotes, multiplot.dem. |
| Show the graphics window with 4 plots. | A graphic window with four graphs appear in the canvas. |
| Show multiplot mode terminal prompt video patch from another terminal. | In case of errors in the script, gnuplot will remain in the multiplot mode. |
| Type unset space multiplot and press Enter. | Then the graphics plot is also not generated.
If so, type unset space multiplot. |
| Cursor on the terminal. | To reset default setting, the unset command is used.
If we do not unset the format, the set format will not reset to default setting. |
| Hover mouse next to gnuplot prompt. | This returns the terminal to gnuplot prompt.
Debug the script to make it error free and run the script to generate the plot. |
| Go to the graphics window. | A few formatting modifications could improve the look of the graphs. |
| Close the graphics window. | Hence, I will make the following modifications in the script.
Close the graphics window. |
| Go back to gedit script. | Go back to the gedit window to edit the script.
If you had closed it, please open the script file to edit it further. |
| Scroll to the sin(x) script part.
Start a new line before plot command. |
Scroll to the sin x part of the script.
Let's change the background color of the sin x plot. Start a new line before the plot command. |
| Type
set object 1 rectangle from graph 0,0 to graph 1,1 behind fillcolor rgb 'cyan' fillstyle solid noborder and press Enter. |
To change the background color, we will insert an object, in the graph.
Enter the command as seen on the screen. |
| Hover mouse next to object, cyan and noborder. | Here, we set a cyan colored rectangle, without border, for the background. |
| Start a new line after the plot command.
Type, unset object 1 and press Enter. |
Start a new line after the plot command.
Unset the cyan background object, as shown here. |
| Type in the three lines above the plot command line,
set format y "10^{%L}" set xtics rotate set ytics 40000 and press Enter. |
For the straight line plot, add modifications on axis formats.
The y axis numbers are large. |
| Point mouse to set format y, then to xtics rotate and then ytics 40000. | The y axis numbers are large.
So I will change the notation. I will also rotate the x axis tics in the plot. I also specify the y tics spacing. |
| Type unset format y . | We will unset the y axis format after the plot command is executed. |
| Scroll down the script file. | Next go to the part of the exponential decay script . |
| Before the plot command, type in the three lines,
set format y "10^{%L}" set xtics rotate set ytics 40000 and press Enter. |
I will add the same formatting commands, as shown in the straight line plot.
Notice that, they are added before the plot command. |
| Type, unset format y after the plot command. | Start a new line after plot command and unset the format of y-axis. |
| Scroll to top of the script. | Let's add commands to print the graph into an image file.
Scroll up to the top of the script file. |
| Before the set multiplot line, type,
set terminal svg size 800,800 enhanced font 'Verdana,12' |
Type set term to svg as seen before starting the multiplot mode. |
| Type
set output 'multiplot.svg' and press Enter. |
Direct the output to a svg file as seen.
These are done before the multiplot command is executed. |
| Scroll to the bottom of the script. | Scroll to the bottom of script file and unset the output.
This is done after before we unset the multiplot mode. |
| Type unset output and press Enter. | Enter the command unset space output. |
| Press Ctrl+S and minimize gedit. | Press Ctrl-S to save the file and minimize gedit. |
| Go to the terminal. | Go back to the terminal from where gnuplot was opened.
If you had closed gnuplot, please open gnuplot again. |
| Enter the command load 'multiplot.dem' . | Run the updated multiplot.dem script.
Now, the graphics window does not open, since the output is a svg file. |
| Enter the command quit. | Enter the command quit, to quit gnuplot. |
| Go to Desktop. | Go to Desktop . |
| Open multiplot.svg file. | Open the file, multiplot.svg that is created on the Desktop.
Since the path is Desktop the output file is generated in the Desktop directory. |
| Cursor on the svg file. | You may add commands to the script to generate the desired output. |
| Close the image file. | Similar scripts are available in the gnuplot demo website.
Practise and familiarize with the commands and styles.
|
| Slide Number 7
Summary |
Now, to summarize, in this tutorial, we
|
| Slide Number 8
Assignment 1 |
For assignment activity, please do the following.
|
| Slide Number 9
Assignment 2 |
With the file data.txt, that is provided, do the following.
|
| Show assignment result screenshot. | The completed assignment looks similar to this. |
| Slide Number 10
Spoken Tutorial Project |
This video summarises the Spoken Tutorial Project .
Please download and watch it. |
| Slide Number 11
Spoken Tutorial workshops |
We conduct workshops and give certificates.
For more details, please write to us. |
| Slide Number 12
Forum for specific questions: |
Post your timed queries in the forum. |
| Slide Number 13
Acknowledgement |
Spoken Tutorial Project is funded by MHRD, Government of India. |
| This is Rani from IIT, Bombay.
Thank you for joining. |