Difference between revisions of "Gnuplot/C2/LaTeX-and-Gnuplot/English"
(12 intermediate revisions by 2 users not shown) | |||
Line 15: | Line 15: | ||
* Add '''Latex''' symbols in axis labels | * Add '''Latex''' symbols in axis labels | ||
* Export the output to a '''Latex''' file | * Export the output to a '''Latex''' file | ||
− | * Open the '''Latex''' compiler file, compile it | + | * Open the '''Latex''' compiler file, compile it, generate a pdf file and |
* Crop the '''pdf''' file using pdfcrop | * Crop the '''pdf''' file using pdfcrop | ||
Line 25: | Line 25: | ||
* '''gnuplot''' 5.2.6 | * '''gnuplot''' 5.2.6 | ||
* '''Gedit''' 3.18 | * '''Gedit''' 3.18 | ||
− | * '''TexWorks''' 0.6.3 | + | * '''TexWorks''' 0.6.3 and |
* '''pdfcrop''' 1.38 | * '''pdfcrop''' 1.38 | ||
Line 31: | Line 31: | ||
|| '''Slide Number 4''' | || '''Slide Number 4''' | ||
'''System and Software Requirement''' | '''System and Software Requirement''' | ||
− | || '''Windows''' users need '''Miktex''' and '''ActivePerl | + | || '''Windows''' users need '''Miktex''' and '''ActivePerl''' 5.28 to use '''pdfcrop'''. |
|- | |- | ||
Line 43: | Line 43: | ||
|| '''Slide Number 6''' | || '''Slide Number 6''' | ||
'''Code Files''' | '''Code Files''' | ||
− | || The input files used in this tutorial are provided in the ''' | + | || The input files used in this tutorial are provided in the '''Code files''' link. |
− | Please download and extract the | + | Please download and extract the files. |
|- | |- | ||
|| '''Slide Number 7''' | || '''Slide Number 7''' | ||
'''Download link''' | '''Download link''' | ||
− | || Download links for '''texworks, '''Active Perl''' and Miktex''' are shown here. | + | || Download links for '''texworks, '''Active Perl''' and '''Miktex''' are shown here. |
|- | |- | ||
Line 57: | Line 57: | ||
|- | |- | ||
|| Show screenshot of '''data.txt'''. | || Show screenshot of '''data.txt'''. | ||
− | || The file consists of 3 columns, '''x, y1, y2''' type data. | + | || The file consists of 3 columns, '''x''', '''y1''', and '''y2''' type data. |
|- | |- | ||
− | || Press '''Ctrl+Alt+T''' . | + | || Press '''Ctrl+Alt+T'''. |
Type '''cd Desktop''' and press '''Enter'''. | Type '''cd Desktop''' and press '''Enter'''. | ||
|| Please open a '''terminal''' and change the directory to '''Desktop'''. | || Please open a '''terminal''' and change the directory to '''Desktop'''. | ||
− | I will write and save a script here using gedit text editor. | + | |
+ | I will write and save a script here using '''gedit''' text editor. | ||
|- | |- | ||
|| Type '''gedit gnuplot-tex.plt &''' and press '''Enter'''. | || Type '''gedit gnuplot-tex.plt &''' and press '''Enter'''. | ||
|| Enter the command as seen on the screen to make a script file. | || Enter the command as seen on the screen to make a script file. | ||
− | ''' | + | |
+ | The '''ampersand''' detaches the process from the '''terminal'''. | ||
|- | |- | ||
|| Cursor on '''gedit''' text editor. | || Cursor on '''gedit''' text editor. | ||
− | || Let's write | + | || Let's write a script to plot 2 graphs on screen. |
|- | |- | ||
− | || | + | || Cursor in gedit text editor. |
|| I will plot the 2 sets of data, '''y1''' and '''y2,''' on '''y-axis'''. | || I will plot the 2 sets of data, '''y1''' and '''y2,''' on '''y-axis'''. | ||
Line 90: | Line 92: | ||
|- | |- | ||
− | ||Type, '''set boxwidth 1 | + | ||Type, |
− | set tics in | + | '''set boxwidth 1''' |
− | set format y '%0.1e' | + | |
− | set xtics | + | '''set tics in''' |
− | set ytics | + | |
− | set title "gnuplot and latex" ''' | + | '''set format y '%0.1e' ''' |
+ | |||
+ | '''set xtics ''' | ||
+ | |||
+ | '''set ytics ''' | ||
+ | |||
+ | '''set title "gnuplot and latex" ''' | ||
+ | |||
and press '''Enter'''. | and press '''Enter'''. | ||
|| I will add graph formatting commands and add a title for the plot. | || I will add graph formatting commands and add a title for the plot. | ||
Line 101: | Line 110: | ||
|- | |- | ||
|| Type, | || Type, | ||
− | '''set xlabel "$\\beta_u^2$ values" | + | '''set xlabel "$\\beta_u^2$ values" ''' |
+ | |||
'''set ylabel "$\\sigma_y^2$" ''' | '''set ylabel "$\\sigma_y^2$" ''' | ||
+ | |||
and press '''Enter'''. | and press '''Enter'''. | ||
Line 113: | Line 124: | ||
|- | |- | ||
|| Type, | || Type, | ||
− | '''plot "data. | + | '''plot "data.txt" using 1:2 title 'Y1'''' |
+ | |||
and press '''Enter'''. | and press '''Enter'''. | ||
|| Plot '''x y1''' data and specify the legend as '''Y1'''. | || Plot '''x y1''' data and specify the legend as '''Y1'''. | ||
Line 121: | Line 133: | ||
'''pause -1 “Press enter to continue”''' | '''pause -1 “Press enter to continue”''' | ||
and press '''Enter'''. | and press '''Enter'''. | ||
− | || | + | || Type the '''pause -1''' command line as seen on the screen. |
The '''pause''' command suspends the script and waits for a user input. | The '''pause''' command suspends the script and waits for a user input. | ||
Line 127: | Line 139: | ||
The '''-1''' refers to the user input, which require the user to press the '''Enter''' key. | The '''-1''' refers to the user input, which require the user to press the '''Enter''' key. | ||
− | The text '''press | + | The text '''press Enter to continue''' is also displayed on the screen. |
|- | |- | ||
|| Type, | || Type, | ||
− | '''set ticslevel 0.5 | + | '''set ticslevel 0.5''' |
− | set boxwidth 1 | + | |
− | set format y '%0.2e' ''' | + | '''set boxwidth 1''' |
+ | |||
+ | '''set format y '%0.2e' ''' | ||
+ | |||
and press '''Enter'''. | and press '''Enter'''. | ||
|| Next, we will plot x-y2 data. | || Next, we will plot x-y2 data. | ||
Line 140: | Line 155: | ||
|- | |- | ||
|| Type, '''set title "gnuplot-tex integration" | || Type, '''set title "gnuplot-tex integration" | ||
− | set xlabel "$\\beta_u^2$ values" | + | |
− | set ylabel "$\\sigma_y^2$" | + | '''set xlabel "$\\beta_u^2$ values" ''' |
+ | |||
+ | '''set ylabel "$\\sigma_y^2$" ''' | ||
+ | |||
and press '''Enter'''. | and press '''Enter'''. | ||
|| I will again add few graph formatting commands. | || I will again add few graph formatting commands. | ||
Line 156: | Line 174: | ||
'''pause -1 “Press return to continue”''' | '''pause -1 “Press return to continue”''' | ||
and press '''Enter'''. | and press '''Enter'''. | ||
− | || Again, enter the command '''pause -1''', with ''' | + | || Again, enter the pause command, '''pause -1''', with '''Press Enter to continue''' at the prompt. |
|- | |- | ||
− | || | + | || Click on the Save button. |
− | + | ||
|| I will save the file. | || I will save the file. | ||
− | + | Click on the save button on the top right corner. | |
− | + | |- | |
+ | || Minimize '''gedit''' and go to the '''terminal'''. | ||
+ | || Minimize '''gedit''' and go back to the '''terminal'''. | ||
|- | |- | ||
− | || | + | || Type '''gnuplot''' and press '''Enter'''. |
+ | ||Open '''gnuplot''' from the '''terminal'''. | ||
+ | |||
+ | |- | ||
+ | || Press '''Ctrl + L. | ||
|| I will also clear the screen. | || I will also clear the screen. | ||
Line 176: | Line 199: | ||
|- | |- | ||
|| Hover mouse over the axis labels. | || Hover mouse over the axis labels. | ||
− | || Notice the | + | || Notice the plot has axis labels. |
They are in '''Latex''' format, we will compile later on in this tutorial. | They are in '''Latex''' format, we will compile later on in this tutorial. | ||
|- | |- | ||
|| Press '''Enter''' in the '''terminal'''. | || Press '''Enter''' in the '''terminal'''. | ||
− | || The terminal prompt reads, ''' | + | || The terminal prompt reads, '''Press Enter to continue'''. |
+ | |||
Press '''Enter''' in the '''terminal''' and notice the second plot. | Press '''Enter''' in the '''terminal''' and notice the second plot. | ||
|- | |- | ||
|| Cursor on graphical window. | || Cursor on graphical window. | ||
− | || | + | || You have seen both the plots. |
− | + | ||
+ | Let's plot '''y1''' and '''y2''' together in a '''latex''' scaffold to generate a '''tex''' file. | ||
|- | |- | ||
|| Press '''Enter''' in the '''terminal'''. | || Press '''Enter''' in the '''terminal'''. | ||
|| Again, press '''Enter''' in the '''terminal'''. | || Again, press '''Enter''' in the '''terminal'''. | ||
+ | |||
Now we are back on '''gnuplot''' prompt. | Now we are back on '''gnuplot''' prompt. | ||
Line 219: | Line 245: | ||
|- | |- | ||
|| Type, | || Type, | ||
− | '''set xlabel "$\\ | + | '''set xlabel "$\\beta_u^2$" ''' |
− | set ylabel "$\\sigma_y^2$" | + | |
+ | '''set ylabel "$\\sigma_y^2$" ''' | ||
+ | |||
and press '''Enter'''. | and press '''Enter'''. | ||
|| Here again, '''Latex''' symbols are incorporated in axis labels. | || Here again, '''Latex''' symbols are incorporated in axis labels. | ||
Line 226: | Line 254: | ||
|- | |- | ||
||Type, '''plot "data.txt" using 1:2 title 'Y1' , "data.txt" using 1:3 title 'Y2' with linespoint lc 'blue' lw 2 pt 7 ps 1.5''' | ||Type, '''plot "data.txt" using 1:2 title 'Y1' , "data.txt" using 1:3 title 'Y2' with linespoint lc 'blue' lw 2 pt 7 ps 1.5''' | ||
+ | |||
and press '''Enter'''. | and press '''Enter'''. | ||
|| I will change line, symbol and color properties in the plot command. | || I will change line, symbol and color properties in the plot command. | ||
Line 234: | Line 263: | ||
|| For demonstration I will add 3 seconds delay after the pause. | || For demonstration I will add 3 seconds delay after the pause. | ||
− | The message text | + | The message text display would read, '''Now tex file is generated'''. |
|- | |- | ||
Line 289: | Line 318: | ||
|- | |- | ||
|| Type, | || Type, | ||
− | '''\documentclass{article}''' | + | '''\documentclass{article} ''' |
+ | |||
'''\usepackage{color}''' | '''\usepackage{color}''' | ||
+ | |||
and press '''Enter'''. | and press '''Enter'''. | ||
|| Enter the commands as seen on the screen. | || Enter the commands as seen on the screen. | ||
Line 298: | Line 329: | ||
|- | |- | ||
|| Type, | || Type, | ||
− | '''\setlength{\textwidth}{100cm}''' | + | '''\setlength{\textwidth}{100cm} ''' |
+ | |||
'''\setlength{\textheight}{100cm}''' | '''\setlength{\textheight}{100cm}''' | ||
+ | |||
and press '''Enter'''. | and press '''Enter'''. | ||
|| Pause the video as and when required. | || Pause the video as and when required. | ||
Line 305: | Line 338: | ||
|- | |- | ||
|| Type, | || Type, | ||
+ | |||
'''\begin{document}''' | '''\begin{document}''' | ||
+ | |||
'''\pagestyle{empty}''' | '''\pagestyle{empty}''' | ||
+ | |||
'''\input{gnuplot.tex}''' | '''\input{gnuplot.tex}''' | ||
+ | |||
'''\end{document}''' | '''\end{document}''' | ||
+ | |||
and press '''Enter'''. | and press '''Enter'''. | ||
|| Next, compile the '''gnuplot''' generated file in '''latex'''. | || Next, compile the '''gnuplot''' generated file in '''latex'''. | ||
Line 322: | Line 360: | ||
I will give filename as '''bgnuplot dot tex''' and save in the '''Desktop''' folder. | I will give filename as '''bgnuplot dot tex''' and save in the '''Desktop''' folder. | ||
+ | |||
+ | |- | ||
+ | || Click on the '''Save''' button. | ||
+ | || Click on the '''Save''' button on the bottom right corner. | ||
|- | |- | ||
|| Click on the '''typeset''' icon. | || Click on the '''typeset''' icon. | ||
− | || Now, click on the '''typeset''' icon | + | || Now, click on the '''typeset''' icon to generate the '''pdf''' file. |
A '''pdf''' file appears on the screen. | A '''pdf''' file appears on the screen. | ||
Line 331: | Line 373: | ||
|| Hover mouse over Greek symbols, superscript and subscript. | || Hover mouse over Greek symbols, superscript and subscript. | ||
|| Now, you have generated the graph integrating '''gnuplot''' and '''latex'''. | || Now, you have generated the graph integrating '''gnuplot''' and '''latex'''. | ||
+ | |||
Notice the '''Greek symbols''', superscript and subscript in the '''pdf''' file. | Notice the '''Greek symbols''', superscript and subscript in the '''pdf''' file. | ||
Line 341: | Line 384: | ||
|| Let's go back to the '''terminal'''. | || Let's go back to the '''terminal'''. | ||
− | Now, crop this document using | + | Now, crop this document using '''pdfcrop'''. |
|- | |- | ||
Line 388: | Line 431: | ||
|| '''Slide Number 9''' | || '''Slide Number 9''' | ||
'''Assignment 1''' | '''Assignment 1''' | ||
+ | |||
+ | |||
|| For assignment activity, practise the exercise learned in this tutorial. | || For assignment activity, practise the exercise learned in this tutorial. | ||
* Read the documentation on pause command from the help section. | * Read the documentation on pause command from the help section. | ||
− | * Suspend the script with | + | * Suspend the script with, |
* time delay of 10 seconds and | * time delay of 10 seconds and | ||
* with a mouse click. | * with a mouse click. |
Latest revision as of 15:32, 17 March 2020
Visual Cue | Narration |
Slide Number 1
Title Slide |
Welcome to the tutorial on Latex and gnuplot. |
Slide Number 2
Learning Objectives |
In this tutorial, we will
|
Slide Number 3
System and Software Requirement |
To record this tutorial, I am using
|
Slide Number 4
System and Software Requirement |
Windows users need Miktex and ActivePerl 5.28 to use pdfcrop. |
Slide Number 5
Pre-requisites |
To follow this tutorial,
|
Slide Number 6
Code Files |
The input files used in this tutorial are provided in the Code files link.
Please download and extract the files. |
Slide Number 7
Download link |
Download links for texworks, Active Perl and Miktex are shown here. |
Show screenshot of Desktop with graph.dat . | I have saved the input file data.txt on the Desktop. |
Show screenshot of data.txt. | The file consists of 3 columns, x, y1, and y2 type data. |
Press Ctrl+Alt+T.
Type cd Desktop and press Enter. |
Please open a terminal and change the directory to Desktop.
I will write and save a script here using gedit text editor. |
Type gedit gnuplot-tex.plt & and press Enter. | Enter the command as seen on the screen to make a script file.
The ampersand detaches the process from the terminal. |
Cursor on gedit text editor. | Let's write a script to plot 2 graphs on screen. |
Cursor in gedit text editor. | I will plot the 2 sets of data, y1 and y2, on y-axis. |
Type #interactive plot and press Enter. | First, I will write a comment line.
Let’s plot x-y1 data.
|
Type, set terminal x11 and press Enter. | I will set the terminal. |
Type,
set boxwidth 1 set tics in set format y '%0.1e' set xtics set ytics set title "gnuplot and latex" and press Enter. |
I will add graph formatting commands and add a title for the plot. |
Type,
set xlabel "$\\beta_u^2$ values" set ylabel "$\\sigma_y^2$" and press Enter. |
Here, we are incorporating latex symbols, beta and sigma in axis labels.
The underscore u, will format the u subscript in latex at a later stage. The carat 2 creates a superscript for the number two. |
Type,
plot "data.txt" using 1:2 title 'Y1' and press Enter. |
Plot x y1 data and specify the legend as Y1. |
Type
pause -1 “Press enter to continue” and press Enter. |
Type the pause -1 command line as seen on the screen.
The pause command suspends the script and waits for a user input. The -1 refers to the user input, which require the user to press the Enter key. The text press Enter to continue is also displayed on the screen. |
Type,
set ticslevel 0.5 set boxwidth 1 set format y '%0.2e' and press Enter. |
Next, we will plot x-y2 data.
|
Type, set title "gnuplot-tex integration"
set xlabel "$\\beta_u^2$ values" set ylabel "$\\sigma_y^2$" and press Enter. |
I will again add few graph formatting commands.
I will also give a title and incorporate Latex symbols in axis labels. |
Type, plot "data.txt" using 1:3 title 'Y2' with line
and press Enter. |
Make a plot with the first and the third columns here. |
Type,
pause -1 “Press return to continue” and press Enter. |
Again, enter the pause command, pause -1, with Press Enter to continue at the prompt. |
Click on the Save button. | I will save the file.
Click on the save button on the top right corner. |
Minimize gedit and go to the terminal. | Minimize gedit and go back to the terminal. |
Type gnuplot and press Enter. | Open gnuplot from the terminal. |
Press Ctrl + L. | I will also clear the screen. |
Type, load 'gnuplot-tex.plt' and press Enter. | Let’s load the newly created script file as seen. |
Hover mouse over the axis labels. | Notice the plot has axis labels.
They are in Latex format, we will compile later on in this tutorial. |
Press Enter in the terminal. | The terminal prompt reads, Press Enter to continue.
Press Enter in the terminal and notice the second plot. |
Cursor on graphical window. | You have seen both the plots.
Let's plot y1 and y2 together in a latex scaffold to generate a tex file. |
Press Enter in the terminal. | Again, press Enter in the terminal.
Now we are back on gnuplot prompt. |
Go to the gedit window. | Go to the gedit window to edit the script. |
Type,
#latex file output and press Enter. |
Let's generate a tex file output from gnuplot.
I will add a comment line first mentioning the same. |
Type,
set term latex set output "gnuplot.tex" and press Enter. |
Set the term to latex and give an output file name.
Here, the output filename is gnuplot dot tex. This generates a file in tex format. |
Type,
set xlabel "$\\beta_u^2$" set ylabel "$\\sigma_y^2$" and press Enter. |
Here again, Latex symbols are incorporated in axis labels. |
Type, plot "data.txt" using 1:2 title 'Y1' , "data.txt" using 1:3 title 'Y2' with linespoint lc 'blue' lw 2 pt 7 ps 1.5
and press Enter. |
I will change line, symbol and color properties in the plot command. |
Type, pause 3 ‘Now tex file is generated’
and press Enter. |
For demonstration I will add 3 seconds delay after the pause.
The message text display would read, Now tex file is generated. |
Type reset and press Enter. | Type reset, to reset the terminal at the end of the script. |
Press Ctrl+S and press Enter.
Type gnuplot and press Enter. |
Save the file.
Minimize gedit and go back to the terminal. |
Type, load 'gnuplot-tex.plt' and press Enter. | Load the script file again. |
Press Enter in the terminal. | Press Enter in the terminal and notice the second plot. |
Press Enter in the terminal. | Press Enter again on the terminal, as seen here. |
Text message Now text file is generated is displayed on the screen. | After the 3 seconds pause, the prompt returns to gnuplot prompt.
The output is a latex file as specified in the script. |
Type q and press Enter. | Let’s exit gnuplot. |
Go to Desktop. | Go to Desktop and notice the newly generated tex file. |
Open the tex file. | Open the file using tex program.
Notice a large file in tex format. |
Cursor on the tex file and scroll. | We will compile this file with tex and generate a pdf file output.
For this purpose, do the following. |
Press Ctrl+N . | Open a new blank file from the tex window. |
Type,
\documentclass{article} \usepackage{color} and press Enter. |
Enter the commands as seen on the screen.
We will add header and user package details. |
Type,
\setlength{\textwidth}{100cm} \setlength{\textheight}{100cm} and press Enter. |
Pause the video as and when required. |
Type,
\begin{document} \pagestyle{empty} \input{gnuplot.tex} \end{document} and press Enter. |
Next, compile the gnuplot generated file in latex.
Mention the name of the tex file that is to be compiled. Then, specify to end the document. |
Press Control+S to save.
Give file name bgnuplot.tex, in Desktop folder. |
Let’s save the file.
I will give filename as bgnuplot dot tex and save in the Desktop folder. |
Click on the Save button. | Click on the Save button on the bottom right corner. |
Click on the typeset icon. | Now, click on the typeset icon to generate the pdf file.
A pdf file appears on the screen. |
Hover mouse over Greek symbols, superscript and subscript. | Now, you have generated the graph integrating gnuplot and latex.
Notice the Greek symbols, superscript and subscript in the pdf file. |
Close both tex documents and the pdf file. | Close the tex documents and the pdf file. |
Go to the terminal. | Let's go back to the terminal.
Now, crop this document using pdfcrop. |
Press Ctrl+L. | I will also clear the screen. |
Type pdfcrop bgnuplot.pdf and press Enter. | Enter the command, pdfcrop space bgnuplot dot pdf. |
Cursor next to pdfcrop. | This program crops the margins from the pdf file.
The pdfcrop has named the file with a crop suffix. |
Show screenshot accessing pdfcrop in windows. | The pdfcrop may look similar to this for Windows users. |
Go to Desktop. | Go to Desktop again and notice the newly generated cropped file. |
View the cropped file. | Open the cropped file to view it. |
Close the cropped pdf file. | I will close this pdf file. |
Slide Number 8
Summary |
Now let's summarize.
In this tutorial, we
|
Slide Number 9
Assignment 1
|
For assignment activity, practise the exercise learned in this tutorial.
|
Slide Number 9
Assignment 2 |
* Use data file assignment.txt, to generate a graph.
|
Slide Number 10
Assignment 2 |
|
Glimpse of assignment. | Your assignment may look similar to this. |
Slide Number 11
Spoken Tutorial Project |
This video summarises the Spoken Tutorial Project.
Please download and watch it. |
Slide Number 11
Spoken Tutorial workshops |
The Spoken Tutorial Project Team
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. |