<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://fourier.fhsu.edu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Laser</id>
		<title>PHYSpedia - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://fourier.fhsu.edu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Laser"/>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php/Special:Contributions/Laser"/>
		<updated>2026-04-29T15:33:51Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.27.1</generator>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=LaTeX&amp;diff=380</id>
		<title>LaTeX</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=LaTeX&amp;diff=380"/>
				<updated>2012-04-06T19:38:35Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Author: Jack Maseberg&lt;br /&gt;
&lt;br /&gt;
Guide to getting LaTeX running on your computer (Windows, Mac, or Linux)!&lt;br /&gt;
&lt;br /&gt;
1) Install TeX Live:&amp;lt;br /&amp;gt;&lt;br /&gt;
Windows: download and run the install-tl.zip file from here (http://www.tug.org/texlive/acquire-netinstall.html)&amp;lt;br /&amp;gt;&lt;br /&gt;
Macs: (http://www.tug.org/mactex/2011/)&amp;lt;br /&amp;gt;&lt;br /&gt;
Linux (Ubuntu): use synaptic to install the texlive package&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the net installers look deceptively small is size, but the texlive folder on my windows machine is about 2.5 GB in size, so make sure you have HD space before you start!&lt;br /&gt;
&lt;br /&gt;
2) Install a LaTeX editor. I use the cross-platform Texmaker (http://www.xm1math.net/texmaker/)&lt;br /&gt;
&lt;br /&gt;
3) Install REVTeX https://authors.aps.org/revtex4/&lt;br /&gt;
&lt;br /&gt;
It may be useful to refer to this site: [http://www.math.uiuc.edu/~hildebr/tex/tips-customstyles.html http://www.math.uiuc.edu/~hildebr/tex/tips-customstyles.html] when installing the custom styles and bibliography formats.&lt;br /&gt;
&lt;br /&gt;
4) Get this example template: [[File:Advanced lab.tar]] (Use 7-Zip, http://www.7-zip.org/, on Windows to extract this .tar file.)&lt;br /&gt;
&lt;br /&gt;
5) Configure Texmaker: go to toolbar, choose options/quick build/User, add the following text&lt;br /&gt;
&lt;br /&gt;
latex -interaction=nonstopmode %.tex|bibtex %.aux|latex -interaction=nonstopmode %.tex|latex -interaction=nonstopmode %.tex|dvips -t letter %.dvi -o %.ps|ps2pdf -dPDFSETTINGS=/prepress %.ps&lt;br /&gt;
&lt;br /&gt;
== Using LaTeX ==&lt;br /&gt;
&lt;br /&gt;
LaTeX Wikibook: http://en.wikibooks.org/wiki/LaTeX&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=HPC_-_High_Performance_Computing&amp;diff=379</id>
		<title>HPC - High Performance Computing</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=HPC_-_High_Performance_Computing&amp;diff=379"/>
				<updated>2012-04-06T12:42:14Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Using a Scheduler=&lt;br /&gt;
==Motivation==&lt;br /&gt;
When developing code, it is usually sufficient to test that your code is working by running &amp;quot;small&amp;quot; configurations one at a time and checking the output. Once a code has been shown to work, we typically want to run several &amp;quot;large&amp;quot; configurations. From the terminal, this consists of configuring the code an running the executable. After the first configuration finishes, we run the executable with a different configuration. Once this finishes, we do the same until we have run all configurations. The problem here is that we are only running one instance of our code at a time, and we have to manually start the next configuration after the last completes. This means that if the last configuration completes at 2:00 AM, the next configuration will not be started until we check on the progress later in the morning.&lt;br /&gt;
&lt;br /&gt;
We could open multiple terminals and run multiple instances of the executable for different configurations. We would need to be careful not to run too many instances simultaneously though, because we could end up requiring more resources than are available. For example, if running 1 instance of our code requires 1 GB of RAM, then running 5 instances will required 5 GB. If our computer only has 4 GB of RAM, running 5 instances of our code will fail. What we would like is a way to automatically run multiple jobs, one after the other, and run multiple instances of our code at once without running too many. Enter the scheduler.&lt;br /&gt;
&lt;br /&gt;
A scheduler is a system that manages the running of simulations. With a scheduler, we can just tell the scheduler what we want to run (for example, 10 different configurations of the same code), and the scheduler will do the rest. The scheduler will manage our simulations along with any other simulations that other users would like to run, and running as many at once as possible and starting new instances when old instances finish. All large scale high performance computer clusters used for numerical simulation use some sort of a scheduler. Therefore, in order to use these clusters, you must be able to use a scheduler.&lt;br /&gt;
&lt;br /&gt;
==Terminology==&lt;br /&gt;
&lt;br /&gt;
A user ''submits'' ''jobs'' to the scheduler. The scheduler adds these jobs to a ''queue'', and runs them as old jobs finish. In order to submit a job, you must write a ''submit script''. This is a simple shell&lt;br /&gt;
script that the scheduler will read and then execute to start a job running. The simplest submit script just contains the name of the command to run, but often the script will actually do some pre and post processing tasks as well. The submit script can also contain commands to configure the environment that the scheduler sets up.&lt;br /&gt;
&lt;br /&gt;
The scheduler can also work with a ''resource manager'' to determine what resources (CPUs, memory, etc) are available, and to run jobs on the available resources. On a cluster, the resource manager and scheduler will work together and take care of running jobs on different computers in the cluster. However, there is no requirement for a scheduler to run on a cluster, you can run a scheduler on a stand-alone computer as well. Eigen, which has a 6-core hyperthreaded Intel i7 and 24 GB of RAM has a scheduler running on it, and you can submit jobs from the laser account.&lt;br /&gt;
&lt;br /&gt;
; Job&lt;br /&gt;
: The simulation to run. This involves running an executable that performs some calculation at some point.&lt;br /&gt;
; Queue&lt;br /&gt;
: List of jobs that are &amp;quot;in line&amp;quot; to run. The scheduler runs jobs from the queue in the order they were submitted.&lt;br /&gt;
; Submit&lt;br /&gt;
: The user ''submits'' a job to the scheduler. The scheduler places this in the queue of jobs to run.&lt;br /&gt;
; Submit Script&lt;br /&gt;
: The script that the scheduler uses to start a job.&lt;br /&gt;
&lt;br /&gt;
==Using PBS==&lt;br /&gt;
&lt;br /&gt;
The most common scheduler used it PBS (Portable Batch System). PBS is an opensource scheduler that can work with an open source resource manager called Torque to manage a job queue. Other scheduling systems exist as well. To submit a job using PBS, we must first write a submit script. This is usually just a '''bash''' script. The simplest submit script contains just the executable to run.&lt;br /&gt;
&lt;br /&gt;
 # cat simple.sh&lt;br /&gt;
 hostname&lt;br /&gt;
&lt;br /&gt;
To '''submit''' this '''job''' to the '''scheduler''', we use the &amp;lt;code&amp;gt;qsub&amp;lt;/code&amp;gt; command (as in queue submit)&lt;br /&gt;
&lt;br /&gt;
 # qsub simple.sh&lt;br /&gt;
&lt;br /&gt;
Running this command will submit simple.sh to the scheduler to be ran. This command will print one line, which gives the job's ID. To check on a job's status, we run &amp;lt;code&amp;gt;qstat&amp;lt;/code&amp;gt; (as in queue status).&lt;br /&gt;
&lt;br /&gt;
 # qstat&lt;br /&gt;
&lt;br /&gt;
This will print out a list of jobs that are currently in the queue. Jobs marked as '''R''' are currently running, jobs marked as '''Q''' are waiting to run. The simple.sh job will not take very long to run, so it will not show up in the &amp;lt;code&amp;gt;qstat&amp;lt;/code&amp;gt; output unless other jobs are already running. We can submit a script that will take 10 seconds to run, which should give us enough time to see it in the queue.&lt;br /&gt;
&lt;br /&gt;
 # cat simple_sleep.sh&lt;br /&gt;
 sleep 10&lt;br /&gt;
 hostname&lt;br /&gt;
&lt;br /&gt;
Submitting this job and then calling &amp;lt;code&amp;gt;qstat&amp;lt;/code&amp;gt; immediately should allow us to see the job in the queue.&lt;br /&gt;
&lt;br /&gt;
 # qsub simple_sleep.sh&lt;br /&gt;
 # qstat&lt;br /&gt;
 Job id                    Name             User            Time Use S Queue&lt;br /&gt;
 ------------------------- ---------------- --------------- -------- - -----&lt;br /&gt;
 453.localhost              simple_sleep.sh  laser                  0 R test&lt;br /&gt;
&lt;br /&gt;
This job will &amp;quot;run&amp;quot; for 10 seconds and then finish.&lt;br /&gt;
&lt;br /&gt;
Notice that the &amp;lt;code&amp;gt;hostname&amp;lt;/code&amp;gt; command prints the machines hostname to the screen (standard output), but the hostname is not printed to the screen when we submit the job. This is because the scheduler redirects the scripts standard output to a file automatically. If we list the directories contents, we see that four new files have been created.&lt;br /&gt;
&lt;br /&gt;
 #ls&lt;br /&gt;
 simple.sh  simple.sh.e452  simple.sh.o452  simple_sleep.sh  simple_sleep.sh.e453  simple_sleep.sh.o453&lt;br /&gt;
&lt;br /&gt;
The files ending in numbers were created by the scheduler, and contain the standard output (o) or standard error (e). The scheduler creates a file based on the submit scripts name and the job ID received by the job.&lt;br /&gt;
&lt;br /&gt;
These two examples have just called commands that exist on the system, but we are allowed to call any executable, such as one we have created ourselves. Here is an example that will run &amp;lt;code&amp;gt;BTECthermal&amp;lt;/code&amp;gt; for a configuration stored in Retina-IR.btec. BTEC will output its data to files prefixed with OUTPUT. The script also calls the date command before and after running BTEC, which will allow us to see how long the run took.&lt;br /&gt;
&lt;br /&gt;
 # cat BTEC_submit.sh&lt;br /&gt;
 &lt;br /&gt;
 #! /bin/bash&lt;br /&gt;
 &lt;br /&gt;
 date&lt;br /&gt;
 ./BTECthermal -v 0 ./Retina-IR.btec OUTPUT&lt;br /&gt;
 date&lt;br /&gt;
&lt;br /&gt;
We submit this job the same as before,&lt;br /&gt;
&lt;br /&gt;
 # qsub BTEC_submit.sh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Running multiple configurations for a single executable===&lt;br /&gt;
&lt;br /&gt;
Notice that if we want to run multiple versions of the same simulation for different configurations, we must be able configure out code without recompiling.&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Data_Analysis&amp;diff=361</id>
		<title>Data Analysis</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Data_Analysis&amp;diff=361"/>
				<updated>2012-03-29T14:50:48Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Evaluating and Expressing Uncertainty in Measurements (Lecture Slides)&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Link:  [[File:Uncertainty_Lecture.pdf]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NIST Guide for Uncertainty of Measurement&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Link:  [[http://physics.nist.gov/cuu/Uncertainty/  http://physics.nist.gov/cuu/Uncertainty/]]&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Data_Analysis&amp;diff=360</id>
		<title>Data Analysis</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Data_Analysis&amp;diff=360"/>
				<updated>2012-03-29T14:50:12Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Evaluating and Expressing Uncertainty in Measurements (Lecture Slides)&lt;br /&gt;
&lt;br /&gt;
Link:  [[File:Uncertainty_Lecture.pdf]]&lt;br /&gt;
&lt;br /&gt;
NIST Guide for Uncertainty of Measurement&lt;br /&gt;
&lt;br /&gt;
Link:  [[http://physics.nist.gov/cuu/Uncertainty/  http://physics.nist.gov/cuu/Uncertainty/]]&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Data_Analysis&amp;diff=359</id>
		<title>Data Analysis</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Data_Analysis&amp;diff=359"/>
				<updated>2012-03-29T14:44:47Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Experimental Data Analysis&lt;br /&gt;
&lt;br /&gt;
Evaluating and Expressing Uncertainty in Measurements (Lecture Slides)&lt;br /&gt;
&lt;br /&gt;
Link:  [[File:Uncertainty_Lecture.pdf]]&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=File:Uncertainty_Lecture.pdf&amp;diff=358</id>
		<title>File:Uncertainty Lecture.pdf</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=File:Uncertainty_Lecture.pdf&amp;diff=358"/>
				<updated>2012-03-29T14:41:47Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: Data Analysis and Uncertainty Lecture Slides&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Data Analysis and Uncertainty Lecture Slides&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Data_Analysis&amp;diff=357</id>
		<title>Data Analysis</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Data_Analysis&amp;diff=357"/>
				<updated>2012-03-29T14:40:51Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: Created page with &amp;quot;Experimental Data Analysis&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Experimental Data Analysis&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=356</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=356"/>
				<updated>2012-03-29T14:40:19Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: /* Data Analysis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to the FHSU Physics Department Wiki!'''&lt;br /&gt;
&lt;br /&gt;
==Main Topics==&lt;br /&gt;
&lt;br /&gt;
===Modeling &amp;amp; Simulation===&lt;br /&gt;
[[BTEC]]&lt;br /&gt;
&lt;br /&gt;
[[Linux]]&lt;br /&gt;
&lt;br /&gt;
[[Schrodinger]]&lt;br /&gt;
&lt;br /&gt;
===LaTeX===&lt;br /&gt;
[[LaTeX]]&lt;br /&gt;
&lt;br /&gt;
===Gnuplot===&lt;br /&gt;
[[Gnuplot]]&lt;br /&gt;
&lt;br /&gt;
===Robot + Kinect===&lt;br /&gt;
[[Project details]]&lt;br /&gt;
&lt;br /&gt;
===Arduino Interlock===&lt;br /&gt;
[[Project code]]&lt;br /&gt;
&lt;br /&gt;
===High Altitude Ballooning===&lt;br /&gt;
[[Project]]&lt;br /&gt;
&lt;br /&gt;
===Lego Robotics===&lt;br /&gt;
[[Workshop]]&lt;br /&gt;
&lt;br /&gt;
===Data Analysis===&lt;br /&gt;
[[Data Analysis]]&lt;br /&gt;
&lt;br /&gt;
== MediaWiki Information ==&lt;br /&gt;
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.&lt;br /&gt;
&lt;br /&gt;
=== Getting started ===&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=355</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=355"/>
				<updated>2012-03-29T14:40:03Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: /* =Data Analysis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to the FHSU Physics Department Wiki!'''&lt;br /&gt;
&lt;br /&gt;
==Main Topics==&lt;br /&gt;
&lt;br /&gt;
===Modeling &amp;amp; Simulation===&lt;br /&gt;
[[BTEC]]&lt;br /&gt;
&lt;br /&gt;
[[Linux]]&lt;br /&gt;
&lt;br /&gt;
[[Schrodinger]]&lt;br /&gt;
&lt;br /&gt;
===LaTeX===&lt;br /&gt;
[[LaTeX]]&lt;br /&gt;
&lt;br /&gt;
===Gnuplot===&lt;br /&gt;
[[Gnuplot]]&lt;br /&gt;
&lt;br /&gt;
===Robot + Kinect===&lt;br /&gt;
[[Project details]]&lt;br /&gt;
&lt;br /&gt;
===Arduino Interlock===&lt;br /&gt;
[[Project code]]&lt;br /&gt;
&lt;br /&gt;
===High Altitude Ballooning===&lt;br /&gt;
[[Project]]&lt;br /&gt;
&lt;br /&gt;
===Lego Robotics===&lt;br /&gt;
[[Workshop]]&lt;br /&gt;
&lt;br /&gt;
==Data Analysis==&lt;br /&gt;
[[Data Analysis]]&lt;br /&gt;
&lt;br /&gt;
== MediaWiki Information ==&lt;br /&gt;
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.&lt;br /&gt;
&lt;br /&gt;
=== Getting started ===&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=354</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=354"/>
				<updated>2012-03-29T14:39:48Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to the FHSU Physics Department Wiki!'''&lt;br /&gt;
&lt;br /&gt;
==Main Topics==&lt;br /&gt;
&lt;br /&gt;
===Modeling &amp;amp; Simulation===&lt;br /&gt;
[[BTEC]]&lt;br /&gt;
&lt;br /&gt;
[[Linux]]&lt;br /&gt;
&lt;br /&gt;
[[Schrodinger]]&lt;br /&gt;
&lt;br /&gt;
===LaTeX===&lt;br /&gt;
[[LaTeX]]&lt;br /&gt;
&lt;br /&gt;
===Gnuplot===&lt;br /&gt;
[[Gnuplot]]&lt;br /&gt;
&lt;br /&gt;
===Robot + Kinect===&lt;br /&gt;
[[Project details]]&lt;br /&gt;
&lt;br /&gt;
===Arduino Interlock===&lt;br /&gt;
[[Project code]]&lt;br /&gt;
&lt;br /&gt;
===High Altitude Ballooning===&lt;br /&gt;
[[Project]]&lt;br /&gt;
&lt;br /&gt;
===Lego Robotics===&lt;br /&gt;
[[Workshop]]&lt;br /&gt;
&lt;br /&gt;
===Data Analysis==&lt;br /&gt;
[[Data Analysis]]&lt;br /&gt;
&lt;br /&gt;
== MediaWiki Information ==&lt;br /&gt;
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.&lt;br /&gt;
&lt;br /&gt;
=== Getting started ===&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=LaTeX&amp;diff=353</id>
		<title>LaTeX</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=LaTeX&amp;diff=353"/>
				<updated>2012-03-29T13:46:48Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Author: Jack Maseberg&lt;br /&gt;
&lt;br /&gt;
Guide to getting LaTeX running on your computer (Windows, Mac, or Linux)!&lt;br /&gt;
&lt;br /&gt;
1) Install TeX Live:&amp;lt;br /&amp;gt;&lt;br /&gt;
Windows: download and run the install-tl.zip file from here (http://www.tug.org/texlive/acquire-netinstall.html)&amp;lt;br /&amp;gt;&lt;br /&gt;
Macs: (http://www.tug.org/mactex/2011/)&amp;lt;br /&amp;gt;&lt;br /&gt;
Linux (Ubuntu): use synaptic to install the texlive package&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the net installers look deceptively small is size, but the texlive folder on my windows machine is about 2.5 GB in size, so make sure you have HD space before you start!&lt;br /&gt;
&lt;br /&gt;
2) Install a LaTeX editor. I use the cross-platform Texmaker (http://www.xm1math.net/texmaker/)&lt;br /&gt;
&lt;br /&gt;
3) Install REVTeX https://authors.aps.org/revtex4/&lt;br /&gt;
&lt;br /&gt;
It may be useful to refer to this site: [http://www.math.uiuc.edu/~hildebr/tex/tips-customstyles.html http://www.math.uiuc.edu/~hildebr/tex/tips-customstyles.html] when installing the custom styles and bibliography formats.&lt;br /&gt;
&lt;br /&gt;
4) Get this example template: [[File:Advanced lab.tar]] (Use 7-Zip, http://www.7-zip.org/, on Windows to extract this .tar file.)&lt;br /&gt;
&lt;br /&gt;
5) Configure Texmaker: go to toolbar, choose options/quick build/User, add the following text&lt;br /&gt;
&lt;br /&gt;
latex -interaction=nonstopmode %.tex|bibtex %.aux|latex -interaction=nonstopmode %.tex|latex -interaction=nonstopmode %.tex|dvips -t letter %.dvi -o %.ps|ps2pdf -dPDFSETTINGS=/prepress %.ps&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=352</id>
		<title>Gnuplot</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=352"/>
				<updated>2012-03-27T19:33:28Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: /* Getting Started */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Gnuplot is a terminal based plotting application. This means that you interact with gnuplot by ''typing commands at a prompt''. This turns out to be very convenient, because it means that you can always save or create a gnuplot configuration into a plain text file.&lt;br /&gt;
==Installation==&lt;br /&gt;
If gnuplot is not already installed on your system, you need to install it. The method of install will depend on your OS and distribution. A few common examples are&lt;br /&gt;
&lt;br /&gt;
;Gentoo&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; emerge gnuplot&lt;br /&gt;
&lt;br /&gt;
;Ubuntu&lt;br /&gt;
 &amp;gt; sudo apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Fedora&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; yum install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Debian&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Windows&lt;br /&gt;
: A windows install file can be downloaded from the gnuplot sourceforge page [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. &lt;br /&gt;
&lt;br /&gt;
;Mac OS X&lt;br /&gt;
: First, download XQuartz from [http://xquartz.macosforge.org/landing/ here] and install. Then download the &amp;lt;code&amp;gt;gnuplot-4.6.0.tar.gz&amp;lt;/code&amp;gt; from [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. Now you will just unpack, configure, build and install gnuplot from source.&lt;br /&gt;
  &amp;gt; tar xzf gnuplot-4.6.0.tar.gz&lt;br /&gt;
  &amp;gt; cd gnuplot-4.6.0&lt;br /&gt;
  &amp;gt; ./configure&lt;br /&gt;
  &amp;gt; make&lt;br /&gt;
  &amp;gt; make install     # run as root.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Other&lt;br /&gt;
: Of course, gnuplot can be built from source on any other Unix based machine such as Mac OS X and Linux.&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
Several good tutorial references exist for gnuplot.  &lt;br /&gt;
&lt;br /&gt;
Gnuplot Official Site (Tutorial/User Manual PDF): [http://www.gnuplot.info/ http://www.gnuplot.info/]&lt;br /&gt;
&lt;br /&gt;
Gnuplot Not So Frequently Asked Questions: [http://t16web.lanl.gov/Kawano/gnuplot/index-e.html http://t16web.lanl.gov/Kawano/gnuplot/index-e.html]&lt;br /&gt;
&lt;br /&gt;
The book, Gnuplot in Action: [http://www.manning.com/janert/ http://www.manning.com/janert/]&lt;br /&gt;
 &lt;br /&gt;
===Plotting===&lt;br /&gt;
gnuplot is a program created to plot stuff. You can plot functions or data. There are two commands for plotting, &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt;. &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; is used to plot 2D functions while &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt; is used to plot 3D functions. &lt;br /&gt;
&lt;br /&gt;
===Plotting Functions===&lt;br /&gt;
The &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command has the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [ function | 'filename' datafile-modifiers ]&lt;br /&gt;
&lt;br /&gt;
gnuplot has great support for all common (and many uncommon) functions. For example, to plot sin(x),&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_001.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; is a special variable that gnuplot reconizes as the dependent variable. Multiple functions can be plotted on the same graph, just separate each with a comma&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x), cos(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_002.png|400px]]&lt;br /&gt;
&lt;br /&gt;
We control the what and how our plot is displayed by setting ''options''. Options are set with the &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt; command. For example, to set the graph title, we set the &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt; option to a string containing the title.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set title &amp;quot;Sine and Cosine&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Notice that the graph does not change after you set the title option. gnuplot will not redraw the graph until we either issue another &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command, or tell it to ''replot'' what we previously plotted with the ...&amp;lt;code&amp;gt;replot&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; replot  # redraw the previous plot with new options&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_003.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Other important options include &amp;lt;code&amp;gt;xlabel&amp;lt;/code&amp;gt; (the x-axis label), &amp;lt;code&amp;gt;ylabel&amp;lt;/code&amp;gt; (the y-axis label) and &amp;lt;code&amp;gt;key&amp;lt;/code&amp;gt; (sets the position of the legend). The legend is located in the top-right corner of the graph by default, which is in the way in the example above. To label the axis and move the key,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel &amp;quot;time (s)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set ylabel &amp;quot;current (A)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set key top left&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_004.png|400px]]&lt;br /&gt;
&lt;br /&gt;
By default, gnuplot will &amp;quot;autoscale&amp;quot; the y axis (when plotting data from a file, the x axis is autoscaled too). To set the x and y axis ranges, set the &amp;lt;code&amp;gt;xrange&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;yrange&amp;lt;/code&amp;gt; options.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; xrange[0:10]&lt;br /&gt;
 gnuplot&amp;gt; yrange[-2:2]&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_005.png|400px]]&lt;br /&gt;
&lt;br /&gt;
You can also set the range directly in the plot command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [x=0:10] sin(x)&lt;br /&gt;
&lt;br /&gt;
Autoscaling can always be re-enabled by setting the &amp;lt;code&amp;gt;autoscale&amp;lt;/code&amp;gt; option&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale&lt;br /&gt;
&lt;br /&gt;
or, to enable autoscaling for the x or y axis individually,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale x   # autoscale the x axis&lt;br /&gt;
 gnuplot&amp;gt; set autoscale y   # autoscale the y axis&lt;br /&gt;
&lt;br /&gt;
gnuplot allows aritrarly complex functions to be plotted. These can either be built directly in the &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
&lt;br /&gt;
or you can define a function and plot it&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; f(x) = sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
 gnuplot&amp;gt; plot f(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_006.png|400px]]&lt;br /&gt;
&lt;br /&gt;
====user-defined functions====&lt;br /&gt;
gnuplot allows the user to define arbitrary functions. Function definitions have the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; function_name(arg1, [arg2, ...] ) = expression&lt;br /&gt;
&lt;br /&gt;
In the example above, we defined a function &amp;lt;code&amp;gt;f(x)&amp;lt;/code&amp;gt; that was a function of only one variable. However, we can define function of multiple variables. This can be very handy if we would like to plot a function with a variable parameter. For example, we may want to plot a Gaussian, but allow the center and width to be changed. We could define a Gauss function,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; gauss(sigma, x0, x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
To plot this function for different values of &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt;, we just provide values directly in the plot command&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,0,x), gauss(0.5,1,x), gausss(1.0,1,x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_007.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that, while we used the variable &amp;lt;code&amp;gt;x&amp;lt;\code&amp;gt; in the definition of &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt;, it is not required. More importantly, we can plot a function agains ''any'' of its arguments.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,x,1)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_008.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot also also supports variables. You can set a variable, and then use it in plot commands or even function definitions. For example, we could set the width and position of a Gaussian function through two variables.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; x0 = 1.5&lt;br /&gt;
 gnuplot&amp;gt; sigma = 0.75&lt;br /&gt;
 gnuplot&amp;gt; gauss2(x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
This function will use the values stored in &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; when it is evaluated. Note that the &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; in the function &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt; will '''not''' use the variables. Function argument names will &amp;quot;hide&amp;quot; variable names. In other words, gnuplot variables have ''scope''.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5, 1, x), gauss2(x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_009.png|400px]]&lt;br /&gt;
&lt;br /&gt;
===plotting data from a file===&lt;br /&gt;
&lt;br /&gt;
We often need to plot data that is stored in a file. Typically this has either been generated from a computer model, or collected in an experiment. gnuplot has a very powerful set of utilities for plotting data from a file. The data files used in the examples that follow can be downloaded here.&lt;br /&gt;
&lt;br /&gt;
[[Media:simple.txt|simple.txt]]&lt;br /&gt;
&lt;br /&gt;
gnuplot reads plain text files in table format: one row per line with columns separated by white space. Each row in the table is used to create ''one'' data point on the graph. The simplest file that gnuplot can read contains just two columns of data points,&lt;br /&gt;
 &amp;gt; cat simple.txt&lt;br /&gt;
   0.0  1.1&lt;br /&gt;
   0.1  1.3&lt;br /&gt;
   0.2  1.4&lt;br /&gt;
   0.3  1.9&lt;br /&gt;
&lt;br /&gt;
gnuplot can plot this file directly,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple.txt'  # note the quote marks&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_010.png|400px]]&lt;br /&gt;
&lt;br /&gt;
This turns out to be fairly convenient because it is not very difficult to write code to write files in this format&lt;br /&gt;
&lt;br /&gt;
  // C&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    printf( fp, &amp;quot;%f %f\n&amp;quot;, x[i], y[i] );&lt;br /&gt;
  &lt;br /&gt;
  // C++&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    std::cout&amp;lt;&amp;lt;x[i]&amp;lt;&amp;lt;&amp;quot; &amp;quot;&amp;lt;&amp;lt;y[i]&amp;lt;&amp;lt;std::endl;&lt;br /&gt;
&lt;br /&gt;
When analyzing data, this is often all that is required to see trends. However, if we are going to show out graph to anybody else, we will certainly want to fix it up.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel 'x (arbitrary)'  # arbitrary units on the x-axis&lt;br /&gt;
 gnuplot&amp;gt; set ylabel 'y (arbitrary)'  # arbitrary units on the y-axis&lt;br /&gt;
 gnuplot&amp;gt; set title 'Simple Graph'&lt;br /&gt;
 gnuplot&amp;gt; set xrange[-.1:.4]          # widen xrange to see endpoints&lt;br /&gt;
 gnuplot&amp;gt; set yrange[1:2]             # same for yrange&lt;br /&gt;
 gnuplot&amp;gt; set key left                # move key to left, out of the way&lt;br /&gt;
 gnuplot&amp;gt; replot                      # dont' forget to replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_011.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot can display data points as points (as above), lines, or points connected by lines. This is controlled by setting the &amp;lt;code&amp;gt;style&amp;lt;/code&amp;gt; option for &amp;lt;code&amp;gt;data&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data lines&lt;br /&gt;
 gnuplot&amp;gt; rep                   # rep is shorthand for replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data linespoints&lt;br /&gt;
 gnuplot&amp;gt; rep&lt;br /&gt;
&lt;br /&gt;
=====choosing and manipulating data=====&lt;br /&gt;
The data we want to plot may be in a file with multiple columns. By default, gnuplot will read the file and use only the first two columns. The first column is used for the x coordinate, the second column is used for y.&lt;br /&gt;
 &lt;br /&gt;
 &amp;gt; cat simple2.txt&lt;br /&gt;
 0.0  1.1  2.4  5.4&lt;br /&gt;
 0.1  1.3  2.7  6.3&lt;br /&gt;
 0.2  1.4  2.9  7.5&lt;br /&gt;
 0.3  1.9  3.1  9.1&lt;br /&gt;
&lt;br /&gt;
Plotting this file will give the same graph as the previous file. However, to plot the 3rd column of data, we add the &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple2.txt' using 1:3&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier selects the columns to use in the plot. As expected, the above plot command selects the first and third columns.&lt;br /&gt;
&lt;br /&gt;
;using&lt;br /&gt;
: select columns from&lt;br /&gt;
&lt;br /&gt;
====lines vs. points====&lt;br /&gt;
By default, gnuplot will plot data as ''points''. To change this, we can set the data style to ''lines'' or ''linespoints'' (actually, other styles exist, but are much less common).&lt;br /&gt;
&lt;br /&gt;
==Creating Pictures==&lt;br /&gt;
gnuplot separates the concept of ''creating'' a plot and ''outputting'' a plot. Basically, all of the work required to construct a plot (reading in data points from a file, evaluating functions, etc) is independent of how the plot will be displayed. For example, you may want to the plot to be displayed on the screen, or written to a jpg. gnuplot uses the idea of ''terminals'' to support outputting plots to multiple formats. To output a plot to a jpeg, you tell gnuplot to write to the jpeg terminal type. To output a plot a png, you tell gnuplot to write to the png terminal type. You get the idea.&lt;br /&gt;
&lt;br /&gt;
To change the terminal type, set the &amp;lt;code&amp;gt;terminal&amp;lt;/code&amp;gt; option. For example, to create a png, set the terminal type to png.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set terminal png&lt;br /&gt;
&lt;br /&gt;
==Gnuplot Scripts==&lt;br /&gt;
The commands for creation of a gnuplot graph can be assembled as a text file and run as a gnuplot script by&lt;br /&gt;
executing a command:&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;gnuplot &amp;quot;script_file_name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Gnuplot will execute the commands within the file.  Here, the common use is to set the output terminal to postscript or some other format and viewed by an external viewer, like Okular.  &lt;br /&gt;
&lt;br /&gt;
A second method is to load a file from within gnuplot with the load command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &amp;quot;script_file-name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Using this method, additional changes may be made to the graph with the interactive command line.&lt;br /&gt;
&lt;br /&gt;
==Graphical Interfaces==&lt;br /&gt;
A number of graphical user interfaces exist for gnuplot.  A common interface within Linux is &amp;lt;b&amp;gt;grace&amp;lt;/b&amp;gt;.  The &amp;lt;b&amp;gt;grace&amp;lt;/b&amp;gt; package can typically be found along with gnuplot and installed in a similar fashion as described above.&lt;br /&gt;
&lt;br /&gt;
Graphical interfaces are categorically frowned upon by this Department and its collaborators.&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=351</id>
		<title>Gnuplot</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=351"/>
				<updated>2012-03-27T19:26:08Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: /* Graphical Interfaces */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Gnuplot is a terminal based plotting application. This means that you interact with gnuplot by ''typing commands at a prompt''. This turns out to be very convenient, because it means that you can always save or create a gnuplot configuration into a plain text file.&lt;br /&gt;
==Installation==&lt;br /&gt;
If gnuplot is not already installed on your system, you need to install it. The method of install will depend on your OS and distribution. A few common examples are&lt;br /&gt;
&lt;br /&gt;
;Gentoo&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; emerge gnuplot&lt;br /&gt;
&lt;br /&gt;
;Ubuntu&lt;br /&gt;
 &amp;gt; sudo apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Fedora&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; yum install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Debian&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Windows&lt;br /&gt;
: A windows install file can be downloaded from the gnuplot sourceforge page [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. &lt;br /&gt;
&lt;br /&gt;
;Mac OS X&lt;br /&gt;
: First, download XQuartz from [http://xquartz.macosforge.org/landing/ here] and install. Then download the &amp;lt;code&amp;gt;gnuplot-4.6.0.tar.gz&amp;lt;/code&amp;gt; from [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. Now you will just unpack, configure, build and install gnuplot from source.&lt;br /&gt;
  &amp;gt; tar xzf gnuplot-4.6.0.tar.gz&lt;br /&gt;
  &amp;gt; cd gnuplot-4.6.0&lt;br /&gt;
  &amp;gt; ./configure&lt;br /&gt;
  &amp;gt; make&lt;br /&gt;
  &amp;gt; make install     # run as root.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Other&lt;br /&gt;
: Of course, gnuplot can be built from source on any other Unix based machine such as Mac OS X and Linux.&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
Several good tutorial references exist for gnuplot.  &lt;br /&gt;
&lt;br /&gt;
Gnuplot Not So Frequently Asked Questions: [http://t16web.lanl.gov/Kawano/gnuplot/index-e.html http://t16web.lanl.gov/Kawano/gnuplot/index-e.html]&lt;br /&gt;
&lt;br /&gt;
The book, Gnuplot in Action: [http://www.manning.com/janert/ http://www.manning.com/janert/]&lt;br /&gt;
 &lt;br /&gt;
===Plotting===&lt;br /&gt;
gnuplot is a program created to plot stuff. You can plot functions or data. There are two commands for plotting, &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt;. &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; is used to plot 2D functions while &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt; is used to plot 3D functions. &lt;br /&gt;
&lt;br /&gt;
===Plotting Functions===&lt;br /&gt;
The &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command has the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [ function | 'filename' datafile-modifiers ]&lt;br /&gt;
&lt;br /&gt;
gnuplot has great support for all common (and many uncommon) functions. For example, to plot sin(x),&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_001.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; is a special variable that gnuplot reconizes as the dependent variable. Multiple functions can be plotted on the same graph, just separate each with a comma&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x), cos(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_002.png|400px]]&lt;br /&gt;
&lt;br /&gt;
We control the what and how our plot is displayed by setting ''options''. Options are set with the &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt; command. For example, to set the graph title, we set the &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt; option to a string containing the title.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set title &amp;quot;Sine and Cosine&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Notice that the graph does not change after you set the title option. gnuplot will not redraw the graph until we either issue another &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command, or tell it to ''replot'' what we previously plotted with the ...&amp;lt;code&amp;gt;replot&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; replot  # redraw the previous plot with new options&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_003.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Other important options include &amp;lt;code&amp;gt;xlabel&amp;lt;/code&amp;gt; (the x-axis label), &amp;lt;code&amp;gt;ylabel&amp;lt;/code&amp;gt; (the y-axis label) and &amp;lt;code&amp;gt;key&amp;lt;/code&amp;gt; (sets the position of the legend). The legend is located in the top-right corner of the graph by default, which is in the way in the example above. To label the axis and move the key,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel &amp;quot;time (s)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set ylabel &amp;quot;current (A)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set key top left&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_004.png|400px]]&lt;br /&gt;
&lt;br /&gt;
By default, gnuplot will &amp;quot;autoscale&amp;quot; the y axis (when plotting data from a file, the x axis is autoscaled too). To set the x and y axis ranges, set the &amp;lt;code&amp;gt;xrange&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;yrange&amp;lt;/code&amp;gt; options.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; xrange[0:10]&lt;br /&gt;
 gnuplot&amp;gt; yrange[-2:2]&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_005.png|400px]]&lt;br /&gt;
&lt;br /&gt;
You can also set the range directly in the plot command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [x=0:10] sin(x)&lt;br /&gt;
&lt;br /&gt;
Autoscaling can always be re-enabled by setting the &amp;lt;code&amp;gt;autoscale&amp;lt;/code&amp;gt; option&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale&lt;br /&gt;
&lt;br /&gt;
or, to enable autoscaling for the x or y axis individually,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale x   # autoscale the x axis&lt;br /&gt;
 gnuplot&amp;gt; set autoscale y   # autoscale the y axis&lt;br /&gt;
&lt;br /&gt;
gnuplot allows aritrarly complex functions to be plotted. These can either be built directly in the &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
&lt;br /&gt;
or you can define a function and plot it&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; f(x) = sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
 gnuplot&amp;gt; plot f(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_006.png|400px]]&lt;br /&gt;
&lt;br /&gt;
====user-defined functions====&lt;br /&gt;
gnuplot allows the user to define arbitrary functions. Function definitions have the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; function_name(arg1, [arg2, ...] ) = expression&lt;br /&gt;
&lt;br /&gt;
In the example above, we defined a function &amp;lt;code&amp;gt;f(x)&amp;lt;/code&amp;gt; that was a function of only one variable. However, we can define function of multiple variables. This can be very handy if we would like to plot a function with a variable parameter. For example, we may want to plot a Gaussian, but allow the center and width to be changed. We could define a Gauss function,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; gauss(sigma, x0, x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
To plot this function for different values of &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt;, we just provide values directly in the plot command&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,0,x), gauss(0.5,1,x), gausss(1.0,1,x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_007.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that, while we used the variable &amp;lt;code&amp;gt;x&amp;lt;\code&amp;gt; in the definition of &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt;, it is not required. More importantly, we can plot a function agains ''any'' of its arguments.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,x,1)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_008.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot also also supports variables. You can set a variable, and then use it in plot commands or even function definitions. For example, we could set the width and position of a Gaussian function through two variables.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; x0 = 1.5&lt;br /&gt;
 gnuplot&amp;gt; sigma = 0.75&lt;br /&gt;
 gnuplot&amp;gt; gauss2(x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
This function will use the values stored in &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; when it is evaluated. Note that the &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; in the function &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt; will '''not''' use the variables. Function argument names will &amp;quot;hide&amp;quot; variable names. In other words, gnuplot variables have ''scope''.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5, 1, x), gauss2(x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_009.png|400px]]&lt;br /&gt;
&lt;br /&gt;
===plotting data from a file===&lt;br /&gt;
&lt;br /&gt;
We often need to plot data that is stored in a file. Typically this has either been generated from a computer model, or collected in an experiment. gnuplot has a very powerful set of utilities for plotting data from a file. The data files used in the examples that follow can be downloaded here.&lt;br /&gt;
&lt;br /&gt;
[[Media:simple.txt|simple.txt]]&lt;br /&gt;
&lt;br /&gt;
gnuplot reads plain text files in table format: one row per line with columns separated by white space. Each row in the table is used to create ''one'' data point on the graph. The simplest file that gnuplot can read contains just two columns of data points,&lt;br /&gt;
 &amp;gt; cat simple.txt&lt;br /&gt;
   0.0  1.1&lt;br /&gt;
   0.1  1.3&lt;br /&gt;
   0.2  1.4&lt;br /&gt;
   0.3  1.9&lt;br /&gt;
&lt;br /&gt;
gnuplot can plot this file directly,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple.txt'  # note the quote marks&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_010.png|400px]]&lt;br /&gt;
&lt;br /&gt;
This turns out to be fairly convenient because it is not very difficult to write code to write files in this format&lt;br /&gt;
&lt;br /&gt;
  // C&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    printf( fp, &amp;quot;%f %f\n&amp;quot;, x[i], y[i] );&lt;br /&gt;
  &lt;br /&gt;
  // C++&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    std::cout&amp;lt;&amp;lt;x[i]&amp;lt;&amp;lt;&amp;quot; &amp;quot;&amp;lt;&amp;lt;y[i]&amp;lt;&amp;lt;std::endl;&lt;br /&gt;
&lt;br /&gt;
When analyzing data, this is often all that is required to see trends. However, if we are going to show out graph to anybody else, we will certainly want to fix it up.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel 'x (arbitrary)'  # arbitrary units on the x-axis&lt;br /&gt;
 gnuplot&amp;gt; set ylabel 'y (arbitrary)'  # arbitrary units on the y-axis&lt;br /&gt;
 gnuplot&amp;gt; set title 'Simple Graph'&lt;br /&gt;
 gnuplot&amp;gt; set xrange[-.1:.4]          # widen xrange to see endpoints&lt;br /&gt;
 gnuplot&amp;gt; set yrange[1:2]             # same for yrange&lt;br /&gt;
 gnuplot&amp;gt; set key left                # move key to left, out of the way&lt;br /&gt;
 gnuplot&amp;gt; replot                      # dont' forget to replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_011.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot can display data points as points (as above), lines, or points connected by lines. This is controlled by setting the &amp;lt;code&amp;gt;style&amp;lt;/code&amp;gt; option for &amp;lt;code&amp;gt;data&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data lines&lt;br /&gt;
 gnuplot&amp;gt; rep                   # rep is shorthand for replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data linespoints&lt;br /&gt;
 gnuplot&amp;gt; rep&lt;br /&gt;
&lt;br /&gt;
=====choosing and manipulating data=====&lt;br /&gt;
The data we want to plot may be in a file with multiple columns. By default, gnuplot will read the file and use only the first two columns. The first column is used for the x coordinate, the second column is used for y.&lt;br /&gt;
 &lt;br /&gt;
 &amp;gt; cat simple2.txt&lt;br /&gt;
 0.0  1.1  2.4  5.4&lt;br /&gt;
 0.1  1.3  2.7  6.3&lt;br /&gt;
 0.2  1.4  2.9  7.5&lt;br /&gt;
 0.3  1.9  3.1  9.1&lt;br /&gt;
&lt;br /&gt;
Plotting this file will give the same graph as the previous file. However, to plot the 3rd column of data, we add the &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple2.txt' using 1:3&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier selects the columns to use in the plot. As expected, the above plot command selects the first and third columns.&lt;br /&gt;
&lt;br /&gt;
;using&lt;br /&gt;
: select columns from&lt;br /&gt;
&lt;br /&gt;
====lines vs. points====&lt;br /&gt;
By default, gnuplot will plot data as ''points''. To change this, we can set the data style to ''lines'' or ''linespoints'' (actually, other styles exist, but are much less common).&lt;br /&gt;
&lt;br /&gt;
==Creating Pictures==&lt;br /&gt;
gnuplot separates the concept of ''creating'' a plot and ''outputting'' a plot. Basically, all of the work required to construct a plot (reading in data points from a file, evaluating functions, etc) is independent of how the plot will be displayed. For example, you may want to the plot to be displayed on the screen, or written to a jpg. gnuplot uses the idea of ''terminals'' to support outputting plots to multiple formats. To output a plot to a jpeg, you tell gnuplot to write to the jpeg terminal type. To output a plot a png, you tell gnuplot to write to the png terminal type. You get the idea.&lt;br /&gt;
&lt;br /&gt;
To change the terminal type, set the &amp;lt;code&amp;gt;terminal&amp;lt;/code&amp;gt; option. For example, to create a png, set the terminal type to png.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set terminal png&lt;br /&gt;
&lt;br /&gt;
==Gnuplot Scripts==&lt;br /&gt;
The commands for creation of a gnuplot graph can be assembled as a text file and run as a gnuplot script by&lt;br /&gt;
executing a command:&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;gnuplot &amp;quot;script_file_name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Gnuplot will execute the commands within the file.  Here, the common use is to set the output terminal to postscript or some other format and viewed by an external viewer, like Okular.  &lt;br /&gt;
&lt;br /&gt;
A second method is to load a file from within gnuplot with the load command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &amp;quot;script_file-name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Using this method, additional changes may be made to the graph with the interactive command line.&lt;br /&gt;
&lt;br /&gt;
==Graphical Interfaces==&lt;br /&gt;
A number of graphical user interfaces exist for gnuplot.  A common interface within Linux is &amp;lt;b&amp;gt;grace&amp;lt;/b&amp;gt;.  The &amp;lt;b&amp;gt;grace&amp;lt;/b&amp;gt; package can typically be found along with gnuplot and installed in a similar fashion as described above.&lt;br /&gt;
&lt;br /&gt;
Graphical interfaces are categorically frowned upon by this Department and its collaborators.&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=350</id>
		<title>Gnuplot</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=350"/>
				<updated>2012-03-27T19:24:37Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Gnuplot is a terminal based plotting application. This means that you interact with gnuplot by ''typing commands at a prompt''. This turns out to be very convenient, because it means that you can always save or create a gnuplot configuration into a plain text file.&lt;br /&gt;
==Installation==&lt;br /&gt;
If gnuplot is not already installed on your system, you need to install it. The method of install will depend on your OS and distribution. A few common examples are&lt;br /&gt;
&lt;br /&gt;
;Gentoo&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; emerge gnuplot&lt;br /&gt;
&lt;br /&gt;
;Ubuntu&lt;br /&gt;
 &amp;gt; sudo apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Fedora&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; yum install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Debian&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Windows&lt;br /&gt;
: A windows install file can be downloaded from the gnuplot sourceforge page [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. &lt;br /&gt;
&lt;br /&gt;
;Mac OS X&lt;br /&gt;
: First, download XQuartz from [http://xquartz.macosforge.org/landing/ here] and install. Then download the &amp;lt;code&amp;gt;gnuplot-4.6.0.tar.gz&amp;lt;/code&amp;gt; from [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. Now you will just unpack, configure, build and install gnuplot from source.&lt;br /&gt;
  &amp;gt; tar xzf gnuplot-4.6.0.tar.gz&lt;br /&gt;
  &amp;gt; cd gnuplot-4.6.0&lt;br /&gt;
  &amp;gt; ./configure&lt;br /&gt;
  &amp;gt; make&lt;br /&gt;
  &amp;gt; make install     # run as root.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Other&lt;br /&gt;
: Of course, gnuplot can be built from source on any other Unix based machine such as Mac OS X and Linux.&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
Several good tutorial references exist for gnuplot.  &lt;br /&gt;
&lt;br /&gt;
Gnuplot Not So Frequently Asked Questions: [http://t16web.lanl.gov/Kawano/gnuplot/index-e.html http://t16web.lanl.gov/Kawano/gnuplot/index-e.html]&lt;br /&gt;
&lt;br /&gt;
The book, Gnuplot in Action: [http://www.manning.com/janert/ http://www.manning.com/janert/]&lt;br /&gt;
 &lt;br /&gt;
===Plotting===&lt;br /&gt;
gnuplot is a program created to plot stuff. You can plot functions or data. There are two commands for plotting, &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt;. &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; is used to plot 2D functions while &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt; is used to plot 3D functions. &lt;br /&gt;
&lt;br /&gt;
===Plotting Functions===&lt;br /&gt;
The &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command has the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [ function | 'filename' datafile-modifiers ]&lt;br /&gt;
&lt;br /&gt;
gnuplot has great support for all common (and many uncommon) functions. For example, to plot sin(x),&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_001.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; is a special variable that gnuplot reconizes as the dependent variable. Multiple functions can be plotted on the same graph, just separate each with a comma&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x), cos(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_002.png|400px]]&lt;br /&gt;
&lt;br /&gt;
We control the what and how our plot is displayed by setting ''options''. Options are set with the &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt; command. For example, to set the graph title, we set the &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt; option to a string containing the title.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set title &amp;quot;Sine and Cosine&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Notice that the graph does not change after you set the title option. gnuplot will not redraw the graph until we either issue another &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command, or tell it to ''replot'' what we previously plotted with the ...&amp;lt;code&amp;gt;replot&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; replot  # redraw the previous plot with new options&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_003.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Other important options include &amp;lt;code&amp;gt;xlabel&amp;lt;/code&amp;gt; (the x-axis label), &amp;lt;code&amp;gt;ylabel&amp;lt;/code&amp;gt; (the y-axis label) and &amp;lt;code&amp;gt;key&amp;lt;/code&amp;gt; (sets the position of the legend). The legend is located in the top-right corner of the graph by default, which is in the way in the example above. To label the axis and move the key,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel &amp;quot;time (s)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set ylabel &amp;quot;current (A)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set key top left&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_004.png|400px]]&lt;br /&gt;
&lt;br /&gt;
By default, gnuplot will &amp;quot;autoscale&amp;quot; the y axis (when plotting data from a file, the x axis is autoscaled too). To set the x and y axis ranges, set the &amp;lt;code&amp;gt;xrange&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;yrange&amp;lt;/code&amp;gt; options.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; xrange[0:10]&lt;br /&gt;
 gnuplot&amp;gt; yrange[-2:2]&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_005.png|400px]]&lt;br /&gt;
&lt;br /&gt;
You can also set the range directly in the plot command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [x=0:10] sin(x)&lt;br /&gt;
&lt;br /&gt;
Autoscaling can always be re-enabled by setting the &amp;lt;code&amp;gt;autoscale&amp;lt;/code&amp;gt; option&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale&lt;br /&gt;
&lt;br /&gt;
or, to enable autoscaling for the x or y axis individually,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale x   # autoscale the x axis&lt;br /&gt;
 gnuplot&amp;gt; set autoscale y   # autoscale the y axis&lt;br /&gt;
&lt;br /&gt;
gnuplot allows aritrarly complex functions to be plotted. These can either be built directly in the &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
&lt;br /&gt;
or you can define a function and plot it&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; f(x) = sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
 gnuplot&amp;gt; plot f(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_006.png|400px]]&lt;br /&gt;
&lt;br /&gt;
====user-defined functions====&lt;br /&gt;
gnuplot allows the user to define arbitrary functions. Function definitions have the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; function_name(arg1, [arg2, ...] ) = expression&lt;br /&gt;
&lt;br /&gt;
In the example above, we defined a function &amp;lt;code&amp;gt;f(x)&amp;lt;/code&amp;gt; that was a function of only one variable. However, we can define function of multiple variables. This can be very handy if we would like to plot a function with a variable parameter. For example, we may want to plot a Gaussian, but allow the center and width to be changed. We could define a Gauss function,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; gauss(sigma, x0, x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
To plot this function for different values of &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt;, we just provide values directly in the plot command&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,0,x), gauss(0.5,1,x), gausss(1.0,1,x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_007.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that, while we used the variable &amp;lt;code&amp;gt;x&amp;lt;\code&amp;gt; in the definition of &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt;, it is not required. More importantly, we can plot a function agains ''any'' of its arguments.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,x,1)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_008.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot also also supports variables. You can set a variable, and then use it in plot commands or even function definitions. For example, we could set the width and position of a Gaussian function through two variables.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; x0 = 1.5&lt;br /&gt;
 gnuplot&amp;gt; sigma = 0.75&lt;br /&gt;
 gnuplot&amp;gt; gauss2(x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
This function will use the values stored in &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; when it is evaluated. Note that the &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; in the function &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt; will '''not''' use the variables. Function argument names will &amp;quot;hide&amp;quot; variable names. In other words, gnuplot variables have ''scope''.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5, 1, x), gauss2(x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_009.png|400px]]&lt;br /&gt;
&lt;br /&gt;
===plotting data from a file===&lt;br /&gt;
&lt;br /&gt;
We often need to plot data that is stored in a file. Typically this has either been generated from a computer model, or collected in an experiment. gnuplot has a very powerful set of utilities for plotting data from a file. The data files used in the examples that follow can be downloaded here.&lt;br /&gt;
&lt;br /&gt;
[[Media:simple.txt|simple.txt]]&lt;br /&gt;
&lt;br /&gt;
gnuplot reads plain text files in table format: one row per line with columns separated by white space. Each row in the table is used to create ''one'' data point on the graph. The simplest file that gnuplot can read contains just two columns of data points,&lt;br /&gt;
 &amp;gt; cat simple.txt&lt;br /&gt;
   0.0  1.1&lt;br /&gt;
   0.1  1.3&lt;br /&gt;
   0.2  1.4&lt;br /&gt;
   0.3  1.9&lt;br /&gt;
&lt;br /&gt;
gnuplot can plot this file directly,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple.txt'  # note the quote marks&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_010.png|400px]]&lt;br /&gt;
&lt;br /&gt;
This turns out to be fairly convenient because it is not very difficult to write code to write files in this format&lt;br /&gt;
&lt;br /&gt;
  // C&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    printf( fp, &amp;quot;%f %f\n&amp;quot;, x[i], y[i] );&lt;br /&gt;
  &lt;br /&gt;
  // C++&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    std::cout&amp;lt;&amp;lt;x[i]&amp;lt;&amp;lt;&amp;quot; &amp;quot;&amp;lt;&amp;lt;y[i]&amp;lt;&amp;lt;std::endl;&lt;br /&gt;
&lt;br /&gt;
When analyzing data, this is often all that is required to see trends. However, if we are going to show out graph to anybody else, we will certainly want to fix it up.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel 'x (arbitrary)'  # arbitrary units on the x-axis&lt;br /&gt;
 gnuplot&amp;gt; set ylabel 'y (arbitrary)'  # arbitrary units on the y-axis&lt;br /&gt;
 gnuplot&amp;gt; set title 'Simple Graph'&lt;br /&gt;
 gnuplot&amp;gt; set xrange[-.1:.4]          # widen xrange to see endpoints&lt;br /&gt;
 gnuplot&amp;gt; set yrange[1:2]             # same for yrange&lt;br /&gt;
 gnuplot&amp;gt; set key left                # move key to left, out of the way&lt;br /&gt;
 gnuplot&amp;gt; replot                      # dont' forget to replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_011.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot can display data points as points (as above), lines, or points connected by lines. This is controlled by setting the &amp;lt;code&amp;gt;style&amp;lt;/code&amp;gt; option for &amp;lt;code&amp;gt;data&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data lines&lt;br /&gt;
 gnuplot&amp;gt; rep                   # rep is shorthand for replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data linespoints&lt;br /&gt;
 gnuplot&amp;gt; rep&lt;br /&gt;
&lt;br /&gt;
=====choosing and manipulating data=====&lt;br /&gt;
The data we want to plot may be in a file with multiple columns. By default, gnuplot will read the file and use only the first two columns. The first column is used for the x coordinate, the second column is used for y.&lt;br /&gt;
 &lt;br /&gt;
 &amp;gt; cat simple2.txt&lt;br /&gt;
 0.0  1.1  2.4  5.4&lt;br /&gt;
 0.1  1.3  2.7  6.3&lt;br /&gt;
 0.2  1.4  2.9  7.5&lt;br /&gt;
 0.3  1.9  3.1  9.1&lt;br /&gt;
&lt;br /&gt;
Plotting this file will give the same graph as the previous file. However, to plot the 3rd column of data, we add the &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple2.txt' using 1:3&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier selects the columns to use in the plot. As expected, the above plot command selects the first and third columns.&lt;br /&gt;
&lt;br /&gt;
;using&lt;br /&gt;
: select columns from&lt;br /&gt;
&lt;br /&gt;
====lines vs. points====&lt;br /&gt;
By default, gnuplot will plot data as ''points''. To change this, we can set the data style to ''lines'' or ''linespoints'' (actually, other styles exist, but are much less common).&lt;br /&gt;
&lt;br /&gt;
==Creating Pictures==&lt;br /&gt;
gnuplot separates the concept of ''creating'' a plot and ''outputting'' a plot. Basically, all of the work required to construct a plot (reading in data points from a file, evaluating functions, etc) is independent of how the plot will be displayed. For example, you may want to the plot to be displayed on the screen, or written to a jpg. gnuplot uses the idea of ''terminals'' to support outputting plots to multiple formats. To output a plot to a jpeg, you tell gnuplot to write to the jpeg terminal type. To output a plot a png, you tell gnuplot to write to the png terminal type. You get the idea.&lt;br /&gt;
&lt;br /&gt;
To change the terminal type, set the &amp;lt;code&amp;gt;terminal&amp;lt;/code&amp;gt; option. For example, to create a png, set the terminal type to png.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set terminal png&lt;br /&gt;
&lt;br /&gt;
==Gnuplot Scripts==&lt;br /&gt;
The commands for creation of a gnuplot graph can be assembled as a text file and run as a gnuplot script by&lt;br /&gt;
executing a command:&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;gnuplot &amp;quot;script_file_name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Gnuplot will execute the commands within the file.  Here, the common use is to set the output terminal to postscript or some other format and viewed by an external viewer, like Okular.  &lt;br /&gt;
&lt;br /&gt;
A second method is to load a file from within gnuplot with the load command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &amp;quot;script_file-name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Using this method, additional changes may be made to the graph with the interactive command line.&lt;br /&gt;
&lt;br /&gt;
==Graphical Interfaces==&lt;br /&gt;
A number of graphical user interfaces exist for gnuplot.  A common interface within Linux is grace.  The graace package can typically be found along with gnuplot and installed in a similar fashion as described above.&lt;br /&gt;
&lt;br /&gt;
Graphical interfaces are categorically frowned upon by this Department and its collaborators.&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=349</id>
		<title>Gnuplot</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=349"/>
				<updated>2012-03-27T19:22:23Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: /* Gnuplot Scripts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Gnuplot is a terminal based plotting application. This means that you interact with gnuplot by ''typing commands at a prompt''. This turns out to be very convenient, because it means that you can always save or create a gnuplot configuration into a plain text file.&lt;br /&gt;
==Installation==&lt;br /&gt;
If gnuplot is not already installed on your system, you need to install it. The method of install will depend on your OS and distribution. A few common examples are&lt;br /&gt;
&lt;br /&gt;
;Gentoo&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; emerge gnuplot&lt;br /&gt;
&lt;br /&gt;
;Ubuntu&lt;br /&gt;
 &amp;gt; sudo apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Fedora&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; yum install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Debian&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Windows&lt;br /&gt;
: A windows install file can be downloaded from the gnuplot sourceforge page [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. &lt;br /&gt;
&lt;br /&gt;
;Mac OS X&lt;br /&gt;
: First, download XQuartz from [http://xquartz.macosforge.org/landing/ here] and install. Then download the &amp;lt;code&amp;gt;gnuplot-4.6.0.tar.gz&amp;lt;/code&amp;gt; from [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. Now you will just unpack, configure, build and install gnuplot from source.&lt;br /&gt;
  &amp;gt; tar xzf gnuplot-4.6.0.tar.gz&lt;br /&gt;
  &amp;gt; cd gnuplot-4.6.0&lt;br /&gt;
  &amp;gt; ./configure&lt;br /&gt;
  &amp;gt; make&lt;br /&gt;
  &amp;gt; make install     # run as root.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Other&lt;br /&gt;
: Of course, gnuplot can be built from source on any other Unix based machine such as Mac OS X and Linux.&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
Several good tutorial references exist for gnuplot.  &lt;br /&gt;
&lt;br /&gt;
Gnuplot Not So Frequently Asked Questions: [http://t16web.lanl.gov/Kawano/gnuplot/index-e.html http://t16web.lanl.gov/Kawano/gnuplot/index-e.html]&lt;br /&gt;
&lt;br /&gt;
The book, Gnuplot in Action: [http://www.manning.com/janert/ http://www.manning.com/janert/]&lt;br /&gt;
 &lt;br /&gt;
===Plotting===&lt;br /&gt;
gnuplot is a program created to plot stuff. You can plot functions or data. There are two commands for plotting, &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt;. &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; is used to plot 2D functions while &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt; is used to plot 3D functions. &lt;br /&gt;
&lt;br /&gt;
===Plotting Functions===&lt;br /&gt;
The &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command has the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [ function | 'filename' datafile-modifiers ]&lt;br /&gt;
&lt;br /&gt;
gnuplot has great support for all common (and many uncommon) functions. For example, to plot sin(x),&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_001.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; is a special variable that gnuplot reconizes as the dependent variable. Multiple functions can be plotted on the same graph, just separate each with a comma&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x), cos(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_002.png|400px]]&lt;br /&gt;
&lt;br /&gt;
We control the what and how our plot is displayed by setting ''options''. Options are set with the &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt; command. For example, to set the graph title, we set the &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt; option to a string containing the title.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set title &amp;quot;Sine and Cosine&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Notice that the graph does not change after you set the title option. gnuplot will not redraw the graph until we either issue another &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command, or tell it to ''replot'' what we previously plotted with the ...&amp;lt;code&amp;gt;replot&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; replot  # redraw the previous plot with new options&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_003.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Other important options include &amp;lt;code&amp;gt;xlabel&amp;lt;/code&amp;gt; (the x-axis label), &amp;lt;code&amp;gt;ylabel&amp;lt;/code&amp;gt; (the y-axis label) and &amp;lt;code&amp;gt;key&amp;lt;/code&amp;gt; (sets the position of the legend). The legend is located in the top-right corner of the graph by default, which is in the way in the example above. To label the axis and move the key,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel &amp;quot;time (s)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set ylabel &amp;quot;current (A)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set key top left&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_004.png|400px]]&lt;br /&gt;
&lt;br /&gt;
By default, gnuplot will &amp;quot;autoscale&amp;quot; the y axis (when plotting data from a file, the x axis is autoscaled too). To set the x and y axis ranges, set the &amp;lt;code&amp;gt;xrange&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;yrange&amp;lt;/code&amp;gt; options.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; xrange[0:10]&lt;br /&gt;
 gnuplot&amp;gt; yrange[-2:2]&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_005.png|400px]]&lt;br /&gt;
&lt;br /&gt;
You can also set the range directly in the plot command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [x=0:10] sin(x)&lt;br /&gt;
&lt;br /&gt;
Autoscaling can always be re-enabled by setting the &amp;lt;code&amp;gt;autoscale&amp;lt;/code&amp;gt; option&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale&lt;br /&gt;
&lt;br /&gt;
or, to enable autoscaling for the x or y axis individually,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale x   # autoscale the x axis&lt;br /&gt;
 gnuplot&amp;gt; set autoscale y   # autoscale the y axis&lt;br /&gt;
&lt;br /&gt;
gnuplot allows aritrarly complex functions to be plotted. These can either be built directly in the &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
&lt;br /&gt;
or you can define a function and plot it&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; f(x) = sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
 gnuplot&amp;gt; plot f(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_006.png|400px]]&lt;br /&gt;
&lt;br /&gt;
====user-defined functions====&lt;br /&gt;
gnuplot allows the user to define arbitrary functions. Function definitions have the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; function_name(arg1, [arg2, ...] ) = expression&lt;br /&gt;
&lt;br /&gt;
In the example above, we defined a function &amp;lt;code&amp;gt;f(x)&amp;lt;/code&amp;gt; that was a function of only one variable. However, we can define function of multiple variables. This can be very handy if we would like to plot a function with a variable parameter. For example, we may want to plot a Gaussian, but allow the center and width to be changed. We could define a Gauss function,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; gauss(sigma, x0, x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
To plot this function for different values of &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt;, we just provide values directly in the plot command&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,0,x), gauss(0.5,1,x), gausss(1.0,1,x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_007.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that, while we used the variable &amp;lt;code&amp;gt;x&amp;lt;\code&amp;gt; in the definition of &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt;, it is not required. More importantly, we can plot a function agains ''any'' of its arguments.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,x,1)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_008.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot also also supports variables. You can set a variable, and then use it in plot commands or even function definitions. For example, we could set the width and position of a Gaussian function through two variables.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; x0 = 1.5&lt;br /&gt;
 gnuplot&amp;gt; sigma = 0.75&lt;br /&gt;
 gnuplot&amp;gt; gauss2(x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
This function will use the values stored in &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; when it is evaluated. Note that the &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; in the function &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt; will '''not''' use the variables. Function argument names will &amp;quot;hide&amp;quot; variable names. In other words, gnuplot variables have ''scope''.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5, 1, x), gauss2(x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_009.png|400px]]&lt;br /&gt;
&lt;br /&gt;
===plotting data from a file===&lt;br /&gt;
&lt;br /&gt;
We often need to plot data that is stored in a file. Typically this has either been generated from a computer model, or collected in an experiment. gnuplot has a very powerful set of utilities for plotting data from a file. The data files used in the examples that follow can be downloaded here.&lt;br /&gt;
&lt;br /&gt;
[[Media:simple.txt|simple.txt]]&lt;br /&gt;
&lt;br /&gt;
gnuplot reads plain text files in table format: one row per line with columns separated by white space. Each row in the table is used to create ''one'' data point on the graph. The simplest file that gnuplot can read contains just two columns of data points,&lt;br /&gt;
 &amp;gt; cat simple.txt&lt;br /&gt;
   0.0  1.1&lt;br /&gt;
   0.1  1.3&lt;br /&gt;
   0.2  1.4&lt;br /&gt;
   0.3  1.9&lt;br /&gt;
&lt;br /&gt;
gnuplot can plot this file directly,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple.txt'  # note the quote marks&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_010.png|400px]]&lt;br /&gt;
&lt;br /&gt;
This turns out to be fairly convenient because it is not very difficult to write code to write files in this format&lt;br /&gt;
&lt;br /&gt;
  // C&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    printf( fp, &amp;quot;%f %f\n&amp;quot;, x[i], y[i] );&lt;br /&gt;
  &lt;br /&gt;
  // C++&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    std::cout&amp;lt;&amp;lt;x[i]&amp;lt;&amp;lt;&amp;quot; &amp;quot;&amp;lt;&amp;lt;y[i]&amp;lt;&amp;lt;std::endl;&lt;br /&gt;
&lt;br /&gt;
When analyzing data, this is often all that is required to see trends. However, if we are going to show out graph to anybody else, we will certainly want to fix it up.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel 'x (arbitrary)'  # arbitrary units on the x-axis&lt;br /&gt;
 gnuplot&amp;gt; set ylabel 'y (arbitrary)'  # arbitrary units on the y-axis&lt;br /&gt;
 gnuplot&amp;gt; set title 'Simple Graph'&lt;br /&gt;
 gnuplot&amp;gt; set xrange[-.1:.4]          # widen xrange to see endpoints&lt;br /&gt;
 gnuplot&amp;gt; set yrange[1:2]             # same for yrange&lt;br /&gt;
 gnuplot&amp;gt; set key left                # move key to left, out of the way&lt;br /&gt;
 gnuplot&amp;gt; replot                      # dont' forget to replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_011.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot can display data points as points (as above), lines, or points connected by lines. This is controlled by setting the &amp;lt;code&amp;gt;style&amp;lt;/code&amp;gt; option for &amp;lt;code&amp;gt;data&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data lines&lt;br /&gt;
 gnuplot&amp;gt; rep                   # rep is shorthand for replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data linespoints&lt;br /&gt;
 gnuplot&amp;gt; rep&lt;br /&gt;
&lt;br /&gt;
=====choosing and manipulating data=====&lt;br /&gt;
The data we want to plot may be in a file with multiple columns. By default, gnuplot will read the file and use only the first two columns. The first column is used for the x coordinate, the second column is used for y.&lt;br /&gt;
 &lt;br /&gt;
 &amp;gt; cat simple2.txt&lt;br /&gt;
 0.0  1.1  2.4  5.4&lt;br /&gt;
 0.1  1.3  2.7  6.3&lt;br /&gt;
 0.2  1.4  2.9  7.5&lt;br /&gt;
 0.3  1.9  3.1  9.1&lt;br /&gt;
&lt;br /&gt;
Plotting this file will give the same graph as the previous file. However, to plot the 3rd column of data, we add the &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple2.txt' using 1:3&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier selects the columns to use in the plot. As expected, the above plot command selects the first and third columns.&lt;br /&gt;
&lt;br /&gt;
;using&lt;br /&gt;
: select columns from&lt;br /&gt;
&lt;br /&gt;
====lines vs. points====&lt;br /&gt;
By default, gnuplot will plot data as ''points''. To change this, we can set the data style to ''lines'' or ''linespoints'' (actually, other styles exist, but are much less common).&lt;br /&gt;
&lt;br /&gt;
==Creating Pictures==&lt;br /&gt;
gnuplot separates the concept of ''creating'' a plot and ''outputting'' a plot. Basically, all of the work required to construct a plot (reading in data points from a file, evaluating functions, etc) is independent of how the plot will be displayed. For example, you may want to the plot to be displayed on the screen, or written to a jpg. gnuplot uses the idea of ''terminals'' to support outputting plots to multiple formats. To output a plot to a jpeg, you tell gnuplot to write to the jpeg terminal type. To output a plot a png, you tell gnuplot to write to the png terminal type. You get the idea.&lt;br /&gt;
&lt;br /&gt;
To change the terminal type, set the &amp;lt;code&amp;gt;terminal&amp;lt;/code&amp;gt; option. For example, to create a png, set the terminal type to png.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set terminal png&lt;br /&gt;
&lt;br /&gt;
==Gnuplot Scripts==&lt;br /&gt;
The commands for creation of a gnuplot graph can be assembled as a text file and run as a gnuplot script by&lt;br /&gt;
executing a command:&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;gnuplot &amp;quot;script_file_name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Gnuplot will execute the commands within the file.  Here, the common use is to set the output terminal to postscript or some other format and viewed by an external viewer, like Okular.  &lt;br /&gt;
&lt;br /&gt;
A second method is to load a file from within gnuplot with the load command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &amp;quot;script_file-name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Using this method, additional changes may be made to the graph with the interactive command line.&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=348</id>
		<title>Gnuplot</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=348"/>
				<updated>2012-03-27T19:21:02Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: /* Gnuplot Scripts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Gnuplot is a terminal based plotting application. This means that you interact with gnuplot by ''typing commands at a prompt''. This turns out to be very convenient, because it means that you can always save or create a gnuplot configuration into a plain text file.&lt;br /&gt;
==Installation==&lt;br /&gt;
If gnuplot is not already installed on your system, you need to install it. The method of install will depend on your OS and distribution. A few common examples are&lt;br /&gt;
&lt;br /&gt;
;Gentoo&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; emerge gnuplot&lt;br /&gt;
&lt;br /&gt;
;Ubuntu&lt;br /&gt;
 &amp;gt; sudo apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Fedora&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; yum install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Debian&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Windows&lt;br /&gt;
: A windows install file can be downloaded from the gnuplot sourceforge page [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. &lt;br /&gt;
&lt;br /&gt;
;Mac OS X&lt;br /&gt;
: First, download XQuartz from [http://xquartz.macosforge.org/landing/ here] and install. Then download the &amp;lt;code&amp;gt;gnuplot-4.6.0.tar.gz&amp;lt;/code&amp;gt; from [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. Now you will just unpack, configure, build and install gnuplot from source.&lt;br /&gt;
  &amp;gt; tar xzf gnuplot-4.6.0.tar.gz&lt;br /&gt;
  &amp;gt; cd gnuplot-4.6.0&lt;br /&gt;
  &amp;gt; ./configure&lt;br /&gt;
  &amp;gt; make&lt;br /&gt;
  &amp;gt; make install     # run as root.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Other&lt;br /&gt;
: Of course, gnuplot can be built from source on any other Unix based machine such as Mac OS X and Linux.&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
Several good tutorial references exist for gnuplot.  &lt;br /&gt;
&lt;br /&gt;
Gnuplot Not So Frequently Asked Questions: [http://t16web.lanl.gov/Kawano/gnuplot/index-e.html http://t16web.lanl.gov/Kawano/gnuplot/index-e.html]&lt;br /&gt;
&lt;br /&gt;
The book, Gnuplot in Action: [http://www.manning.com/janert/ http://www.manning.com/janert/]&lt;br /&gt;
 &lt;br /&gt;
===Plotting===&lt;br /&gt;
gnuplot is a program created to plot stuff. You can plot functions or data. There are two commands for plotting, &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt;. &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; is used to plot 2D functions while &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt; is used to plot 3D functions. &lt;br /&gt;
&lt;br /&gt;
===Plotting Functions===&lt;br /&gt;
The &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command has the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [ function | 'filename' datafile-modifiers ]&lt;br /&gt;
&lt;br /&gt;
gnuplot has great support for all common (and many uncommon) functions. For example, to plot sin(x),&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_001.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; is a special variable that gnuplot reconizes as the dependent variable. Multiple functions can be plotted on the same graph, just separate each with a comma&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x), cos(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_002.png|400px]]&lt;br /&gt;
&lt;br /&gt;
We control the what and how our plot is displayed by setting ''options''. Options are set with the &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt; command. For example, to set the graph title, we set the &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt; option to a string containing the title.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set title &amp;quot;Sine and Cosine&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Notice that the graph does not change after you set the title option. gnuplot will not redraw the graph until we either issue another &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command, or tell it to ''replot'' what we previously plotted with the ...&amp;lt;code&amp;gt;replot&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; replot  # redraw the previous plot with new options&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_003.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Other important options include &amp;lt;code&amp;gt;xlabel&amp;lt;/code&amp;gt; (the x-axis label), &amp;lt;code&amp;gt;ylabel&amp;lt;/code&amp;gt; (the y-axis label) and &amp;lt;code&amp;gt;key&amp;lt;/code&amp;gt; (sets the position of the legend). The legend is located in the top-right corner of the graph by default, which is in the way in the example above. To label the axis and move the key,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel &amp;quot;time (s)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set ylabel &amp;quot;current (A)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set key top left&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_004.png|400px]]&lt;br /&gt;
&lt;br /&gt;
By default, gnuplot will &amp;quot;autoscale&amp;quot; the y axis (when plotting data from a file, the x axis is autoscaled too). To set the x and y axis ranges, set the &amp;lt;code&amp;gt;xrange&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;yrange&amp;lt;/code&amp;gt; options.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; xrange[0:10]&lt;br /&gt;
 gnuplot&amp;gt; yrange[-2:2]&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_005.png|400px]]&lt;br /&gt;
&lt;br /&gt;
You can also set the range directly in the plot command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [x=0:10] sin(x)&lt;br /&gt;
&lt;br /&gt;
Autoscaling can always be re-enabled by setting the &amp;lt;code&amp;gt;autoscale&amp;lt;/code&amp;gt; option&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale&lt;br /&gt;
&lt;br /&gt;
or, to enable autoscaling for the x or y axis individually,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale x   # autoscale the x axis&lt;br /&gt;
 gnuplot&amp;gt; set autoscale y   # autoscale the y axis&lt;br /&gt;
&lt;br /&gt;
gnuplot allows aritrarly complex functions to be plotted. These can either be built directly in the &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
&lt;br /&gt;
or you can define a function and plot it&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; f(x) = sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
 gnuplot&amp;gt; plot f(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_006.png|400px]]&lt;br /&gt;
&lt;br /&gt;
====user-defined functions====&lt;br /&gt;
gnuplot allows the user to define arbitrary functions. Function definitions have the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; function_name(arg1, [arg2, ...] ) = expression&lt;br /&gt;
&lt;br /&gt;
In the example above, we defined a function &amp;lt;code&amp;gt;f(x)&amp;lt;/code&amp;gt; that was a function of only one variable. However, we can define function of multiple variables. This can be very handy if we would like to plot a function with a variable parameter. For example, we may want to plot a Gaussian, but allow the center and width to be changed. We could define a Gauss function,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; gauss(sigma, x0, x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
To plot this function for different values of &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt;, we just provide values directly in the plot command&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,0,x), gauss(0.5,1,x), gausss(1.0,1,x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_007.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that, while we used the variable &amp;lt;code&amp;gt;x&amp;lt;\code&amp;gt; in the definition of &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt;, it is not required. More importantly, we can plot a function agains ''any'' of its arguments.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,x,1)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_008.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot also also supports variables. You can set a variable, and then use it in plot commands or even function definitions. For example, we could set the width and position of a Gaussian function through two variables.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; x0 = 1.5&lt;br /&gt;
 gnuplot&amp;gt; sigma = 0.75&lt;br /&gt;
 gnuplot&amp;gt; gauss2(x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
This function will use the values stored in &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; when it is evaluated. Note that the &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; in the function &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt; will '''not''' use the variables. Function argument names will &amp;quot;hide&amp;quot; variable names. In other words, gnuplot variables have ''scope''.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5, 1, x), gauss2(x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_009.png|400px]]&lt;br /&gt;
&lt;br /&gt;
===plotting data from a file===&lt;br /&gt;
&lt;br /&gt;
We often need to plot data that is stored in a file. Typically this has either been generated from a computer model, or collected in an experiment. gnuplot has a very powerful set of utilities for plotting data from a file. The data files used in the examples that follow can be downloaded here.&lt;br /&gt;
&lt;br /&gt;
[[Media:simple.txt|simple.txt]]&lt;br /&gt;
&lt;br /&gt;
gnuplot reads plain text files in table format: one row per line with columns separated by white space. Each row in the table is used to create ''one'' data point on the graph. The simplest file that gnuplot can read contains just two columns of data points,&lt;br /&gt;
 &amp;gt; cat simple.txt&lt;br /&gt;
   0.0  1.1&lt;br /&gt;
   0.1  1.3&lt;br /&gt;
   0.2  1.4&lt;br /&gt;
   0.3  1.9&lt;br /&gt;
&lt;br /&gt;
gnuplot can plot this file directly,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple.txt'  # note the quote marks&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_010.png|400px]]&lt;br /&gt;
&lt;br /&gt;
This turns out to be fairly convenient because it is not very difficult to write code to write files in this format&lt;br /&gt;
&lt;br /&gt;
  // C&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    printf( fp, &amp;quot;%f %f\n&amp;quot;, x[i], y[i] );&lt;br /&gt;
  &lt;br /&gt;
  // C++&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    std::cout&amp;lt;&amp;lt;x[i]&amp;lt;&amp;lt;&amp;quot; &amp;quot;&amp;lt;&amp;lt;y[i]&amp;lt;&amp;lt;std::endl;&lt;br /&gt;
&lt;br /&gt;
When analyzing data, this is often all that is required to see trends. However, if we are going to show out graph to anybody else, we will certainly want to fix it up.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel 'x (arbitrary)'  # arbitrary units on the x-axis&lt;br /&gt;
 gnuplot&amp;gt; set ylabel 'y (arbitrary)'  # arbitrary units on the y-axis&lt;br /&gt;
 gnuplot&amp;gt; set title 'Simple Graph'&lt;br /&gt;
 gnuplot&amp;gt; set xrange[-.1:.4]          # widen xrange to see endpoints&lt;br /&gt;
 gnuplot&amp;gt; set yrange[1:2]             # same for yrange&lt;br /&gt;
 gnuplot&amp;gt; set key left                # move key to left, out of the way&lt;br /&gt;
 gnuplot&amp;gt; replot                      # dont' forget to replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_011.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot can display data points as points (as above), lines, or points connected by lines. This is controlled by setting the &amp;lt;code&amp;gt;style&amp;lt;/code&amp;gt; option for &amp;lt;code&amp;gt;data&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data lines&lt;br /&gt;
 gnuplot&amp;gt; rep                   # rep is shorthand for replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data linespoints&lt;br /&gt;
 gnuplot&amp;gt; rep&lt;br /&gt;
&lt;br /&gt;
=====choosing and manipulating data=====&lt;br /&gt;
The data we want to plot may be in a file with multiple columns. By default, gnuplot will read the file and use only the first two columns. The first column is used for the x coordinate, the second column is used for y.&lt;br /&gt;
 &lt;br /&gt;
 &amp;gt; cat simple2.txt&lt;br /&gt;
 0.0  1.1  2.4  5.4&lt;br /&gt;
 0.1  1.3  2.7  6.3&lt;br /&gt;
 0.2  1.4  2.9  7.5&lt;br /&gt;
 0.3  1.9  3.1  9.1&lt;br /&gt;
&lt;br /&gt;
Plotting this file will give the same graph as the previous file. However, to plot the 3rd column of data, we add the &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple2.txt' using 1:3&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier selects the columns to use in the plot. As expected, the above plot command selects the first and third columns.&lt;br /&gt;
&lt;br /&gt;
;using&lt;br /&gt;
: select columns from&lt;br /&gt;
&lt;br /&gt;
====lines vs. points====&lt;br /&gt;
By default, gnuplot will plot data as ''points''. To change this, we can set the data style to ''lines'' or ''linespoints'' (actually, other styles exist, but are much less common).&lt;br /&gt;
&lt;br /&gt;
==Creating Pictures==&lt;br /&gt;
gnuplot separates the concept of ''creating'' a plot and ''outputting'' a plot. Basically, all of the work required to construct a plot (reading in data points from a file, evaluating functions, etc) is independent of how the plot will be displayed. For example, you may want to the plot to be displayed on the screen, or written to a jpg. gnuplot uses the idea of ''terminals'' to support outputting plots to multiple formats. To output a plot to a jpeg, you tell gnuplot to write to the jpeg terminal type. To output a plot a png, you tell gnuplot to write to the png terminal type. You get the idea.&lt;br /&gt;
&lt;br /&gt;
To change the terminal type, set the &amp;lt;code&amp;gt;terminal&amp;lt;/code&amp;gt; option. For example, to create a png, set the terminal type to png.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set terminal png&lt;br /&gt;
&lt;br /&gt;
==Gnuplot Scripts==&lt;br /&gt;
The commands for creation of a gnuplot graph can be assembled as a text file and run as a gnuplot script by&lt;br /&gt;
executing a command:&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;gnuplot &amp;quot;script_file_name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Gnuplot will execute the commands within the file.  Here, the common use is to set the output terminal to postscript or some other format and viewed by an external viewer, like Okular.  &lt;br /&gt;
&lt;br /&gt;
A second method is to load a file from within gnuplot with the load command.&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=347</id>
		<title>Gnuplot</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=347"/>
				<updated>2012-03-27T18:42:37Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: /* Getting Started */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Gnuplot is a terminal based plotting application. This means that you interact with gnuplot by ''typing commands at a prompt''. This turns out to be very convenient, because it means that you can always save or create a gnuplot configuration into a plain text file.&lt;br /&gt;
==Installation==&lt;br /&gt;
If gnuplot is not already installed on your system, you need to install it. The method of install will depend on your OS and distribution. A few common examples are&lt;br /&gt;
&lt;br /&gt;
;Gentoo&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; emerge gnuplot&lt;br /&gt;
&lt;br /&gt;
;Ubuntu&lt;br /&gt;
 &amp;gt; sudo apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Fedora&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; yum install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Debian&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Windows&lt;br /&gt;
: A windows install file can be downloaded from the gnuplot sourceforge page [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. &lt;br /&gt;
&lt;br /&gt;
;Mac OS X&lt;br /&gt;
: First, download XQuartz from [http://xquartz.macosforge.org/landing/ here] and install. Then download the &amp;lt;code&amp;gt;gnuplot-4.6.0.tar.gz&amp;lt;/code&amp;gt; from [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. Now you will just unpack, configure, build and install gnuplot from source.&lt;br /&gt;
  &amp;gt; tar xzf gnuplot-4.6.0.tar.gz&lt;br /&gt;
  &amp;gt; cd gnuplot-4.6.0&lt;br /&gt;
  &amp;gt; ./configure&lt;br /&gt;
  &amp;gt; make&lt;br /&gt;
  &amp;gt; make install     # run as root.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Other&lt;br /&gt;
: Of course, gnuplot can be built from source on any other Unix based machine such as Mac OS X and Linux.&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
Several good tutorial references exist for gnuplot.  &lt;br /&gt;
&lt;br /&gt;
Gnuplot Not So Frequently Asked Questions: [http://t16web.lanl.gov/Kawano/gnuplot/index-e.html http://t16web.lanl.gov/Kawano/gnuplot/index-e.html]&lt;br /&gt;
&lt;br /&gt;
The book, Gnuplot in Action: [http://www.manning.com/janert/ http://www.manning.com/janert/]&lt;br /&gt;
 &lt;br /&gt;
===Plotting===&lt;br /&gt;
gnuplot is a program created to plot stuff. You can plot functions or data. There are two commands for plotting, &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt;. &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; is used to plot 2D functions while &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt; is used to plot 3D functions. &lt;br /&gt;
&lt;br /&gt;
===Plotting Functions===&lt;br /&gt;
The &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command has the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [ function | 'filename' datafile-modifiers ]&lt;br /&gt;
&lt;br /&gt;
gnuplot has great support for all common (and many uncommon) functions. For example, to plot sin(x),&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_001.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; is a special variable that gnuplot reconizes as the dependent variable. Multiple functions can be plotted on the same graph, just separate each with a comma&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x), cos(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_002.png|400px]]&lt;br /&gt;
&lt;br /&gt;
We control the what and how our plot is displayed by setting ''options''. Options are set with the &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt; command. For example, to set the graph title, we set the &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt; option to a string containing the title.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set title &amp;quot;Sine and Cosine&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Notice that the graph does not change after you set the title option. gnuplot will not redraw the graph until we either issue another &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command, or tell it to ''replot'' what we previously plotted with the ...&amp;lt;code&amp;gt;replot&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; replot  # redraw the previous plot with new options&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_003.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Other important options include &amp;lt;code&amp;gt;xlabel&amp;lt;/code&amp;gt; (the x-axis label), &amp;lt;code&amp;gt;ylabel&amp;lt;/code&amp;gt; (the y-axis label) and &amp;lt;code&amp;gt;key&amp;lt;/code&amp;gt; (sets the position of the legend). The legend is located in the top-right corner of the graph by default, which is in the way in the example above. To label the axis and move the key,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel &amp;quot;time (s)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set ylabel &amp;quot;current (A)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set key top left&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_004.png|400px]]&lt;br /&gt;
&lt;br /&gt;
By default, gnuplot will &amp;quot;autoscale&amp;quot; the y axis (when plotting data from a file, the x axis is autoscaled too). To set the x and y axis ranges, set the &amp;lt;code&amp;gt;xrange&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;yrange&amp;lt;/code&amp;gt; options.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; xrange[0:10]&lt;br /&gt;
 gnuplot&amp;gt; yrange[-2:2]&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_005.png|400px]]&lt;br /&gt;
&lt;br /&gt;
You can also set the range directly in the plot command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [x=0:10] sin(x)&lt;br /&gt;
&lt;br /&gt;
Autoscaling can always be re-enabled by setting the &amp;lt;code&amp;gt;autoscale&amp;lt;/code&amp;gt; option&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale&lt;br /&gt;
&lt;br /&gt;
or, to enable autoscaling for the x or y axis individually,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale x   # autoscale the x axis&lt;br /&gt;
 gnuplot&amp;gt; set autoscale y   # autoscale the y axis&lt;br /&gt;
&lt;br /&gt;
gnuplot allows aritrarly complex functions to be plotted. These can either be built directly in the &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
&lt;br /&gt;
or you can define a function and plot it&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; f(x) = sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
 gnuplot&amp;gt; plot f(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_006.png|400px]]&lt;br /&gt;
&lt;br /&gt;
====user-defined functions====&lt;br /&gt;
gnuplot allows the user to define arbitrary functions. Function definitions have the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; function_name(arg1, [arg2, ...] ) = expression&lt;br /&gt;
&lt;br /&gt;
In the example above, we defined a function &amp;lt;code&amp;gt;f(x)&amp;lt;/code&amp;gt; that was a function of only one variable. However, we can define function of multiple variables. This can be very handy if we would like to plot a function with a variable parameter. For example, we may want to plot a Gaussian, but allow the center and width to be changed. We could define a Gauss function,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; gauss(sigma, x0, x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
To plot this function for different values of &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt;, we just provide values directly in the plot command&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,0,x), gauss(0.5,1,x), gausss(1.0,1,x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_007.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that, while we used the variable &amp;lt;code&amp;gt;x&amp;lt;\code&amp;gt; in the definition of &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt;, it is not required. More importantly, we can plot a function agains ''any'' of its arguments.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,x,1)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_008.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot also also supports variables. You can set a variable, and then use it in plot commands or even function definitions. For example, we could set the width and position of a Gaussian function through two variables.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; x0 = 1.5&lt;br /&gt;
 gnuplot&amp;gt; sigma = 0.75&lt;br /&gt;
 gnuplot&amp;gt; gauss2(x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
This function will use the values stored in &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; when it is evaluated. Note that the &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; in the function &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt; will '''not''' use the variables. Function argument names will &amp;quot;hide&amp;quot; variable names. In other words, gnuplot variables have ''scope''.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5, 1, x), gauss2(x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_009.png|400px]]&lt;br /&gt;
&lt;br /&gt;
===plotting data from a file===&lt;br /&gt;
&lt;br /&gt;
We often need to plot data that is stored in a file. Typically this has either been generated from a computer model, or collected in an experiment. gnuplot has a very powerful set of utilities for plotting data from a file. The data files used in the examples that follow can be downloaded here.&lt;br /&gt;
&lt;br /&gt;
[[Media:simple.txt|simple.txt]]&lt;br /&gt;
&lt;br /&gt;
gnuplot reads plain text files in table format: one row per line with columns separated by white space. Each row in the table is used to create ''one'' data point on the graph. The simplest file that gnuplot can read contains just two columns of data points,&lt;br /&gt;
 &amp;gt; cat simple.txt&lt;br /&gt;
   0.0  1.1&lt;br /&gt;
   0.1  1.3&lt;br /&gt;
   0.2  1.4&lt;br /&gt;
   0.3  1.9&lt;br /&gt;
&lt;br /&gt;
gnuplot can plot this file directly,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple.txt'  # note the quote marks&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_010.png|400px]]&lt;br /&gt;
&lt;br /&gt;
This turns out to be fairly convenient because it is not very difficult to write code to write files in this format&lt;br /&gt;
&lt;br /&gt;
  // C&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    printf( fp, &amp;quot;%f %f\n&amp;quot;, x[i], y[i] );&lt;br /&gt;
  &lt;br /&gt;
  // C++&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    std::cout&amp;lt;&amp;lt;x[i]&amp;lt;&amp;lt;&amp;quot; &amp;quot;&amp;lt;&amp;lt;y[i]&amp;lt;&amp;lt;std::endl;&lt;br /&gt;
&lt;br /&gt;
When analyzing data, this is often all that is required to see trends. However, if we are going to show out graph to anybody else, we will certainly want to fix it up.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel 'x (arbitrary)'  # arbitrary units on the x-axis&lt;br /&gt;
 gnuplot&amp;gt; set ylabel 'y (arbitrary)'  # arbitrary units on the y-axis&lt;br /&gt;
 gnuplot&amp;gt; set title 'Simple Graph'&lt;br /&gt;
 gnuplot&amp;gt; set xrange[-.1:.4]          # widen xrange to see endpoints&lt;br /&gt;
 gnuplot&amp;gt; set yrange[1:2]             # same for yrange&lt;br /&gt;
 gnuplot&amp;gt; set key left                # move key to left, out of the way&lt;br /&gt;
 gnuplot&amp;gt; replot                      # dont' forget to replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_011.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot can display data points as points (as above), lines, or points connected by lines. This is controlled by setting the &amp;lt;code&amp;gt;style&amp;lt;/code&amp;gt; option for &amp;lt;code&amp;gt;data&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data lines&lt;br /&gt;
 gnuplot&amp;gt; rep                   # rep is shorthand for replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data linespoints&lt;br /&gt;
 gnuplot&amp;gt; rep&lt;br /&gt;
&lt;br /&gt;
=====choosing and manipulating data=====&lt;br /&gt;
The data we want to plot may be in a file with multiple columns. By default, gnuplot will read the file and use only the first two columns. The first column is used for the x coordinate, the second column is used for y.&lt;br /&gt;
 &lt;br /&gt;
 &amp;gt; cat simple2.txt&lt;br /&gt;
 0.0  1.1  2.4  5.4&lt;br /&gt;
 0.1  1.3  2.7  6.3&lt;br /&gt;
 0.2  1.4  2.9  7.5&lt;br /&gt;
 0.3  1.9  3.1  9.1&lt;br /&gt;
&lt;br /&gt;
Plotting this file will give the same graph as the previous file. However, to plot the 3rd column of data, we add the &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple2.txt' using 1:3&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier selects the columns to use in the plot. As expected, the above plot command selects the first and third columns.&lt;br /&gt;
&lt;br /&gt;
;using&lt;br /&gt;
: select columns from&lt;br /&gt;
&lt;br /&gt;
====lines vs. points====&lt;br /&gt;
By default, gnuplot will plot data as ''points''. To change this, we can set the data style to ''lines'' or ''linespoints'' (actually, other styles exist, but are much less common).&lt;br /&gt;
&lt;br /&gt;
==Creating Pictures==&lt;br /&gt;
gnuplot separates the concept of ''creating'' a plot and ''outputting'' a plot. Basically, all of the work required to construct a plot (reading in data points from a file, evaluating functions, etc) is independent of how the plot will be displayed. For example, you may want to the plot to be displayed on the screen, or written to a jpg. gnuplot uses the idea of ''terminals'' to support outputting plots to multiple formats. To output a plot to a jpeg, you tell gnuplot to write to the jpeg terminal type. To output a plot a png, you tell gnuplot to write to the png terminal type. You get the idea.&lt;br /&gt;
&lt;br /&gt;
To change the terminal type, set the &amp;lt;code&amp;gt;terminal&amp;lt;/code&amp;gt; option. For example, to create a png, set the terminal type to png.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set terminal png&lt;br /&gt;
&lt;br /&gt;
==Gnuplot Scripts==&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=346</id>
		<title>Gnuplot</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Gnuplot&amp;diff=346"/>
				<updated>2012-03-27T18:40:24Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: /* Plotting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Gnuplot is a terminal based plotting application. This means that you interact with gnuplot by ''typing commands at a prompt''. This turns out to be very convenient, because it means that you can always save or create a gnuplot configuration into a plain text file.&lt;br /&gt;
==Installation==&lt;br /&gt;
If gnuplot is not already installed on your system, you need to install it. The method of install will depend on your OS and distribution. A few common examples are&lt;br /&gt;
&lt;br /&gt;
;Gentoo&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; emerge gnuplot&lt;br /&gt;
&lt;br /&gt;
;Ubuntu&lt;br /&gt;
 &amp;gt; sudo apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Fedora&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; yum install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Debian&lt;br /&gt;
 # must run as root&lt;br /&gt;
 &amp;gt; apt-get install gnuplot&lt;br /&gt;
&lt;br /&gt;
;Windows&lt;br /&gt;
: A windows install file can be downloaded from the gnuplot sourceforge page [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. &lt;br /&gt;
&lt;br /&gt;
;Mac OS X&lt;br /&gt;
: First, download XQuartz from [http://xquartz.macosforge.org/landing/ here] and install. Then download the &amp;lt;code&amp;gt;gnuplot-4.6.0.tar.gz&amp;lt;/code&amp;gt; from [http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/ here]. Now you will just unpack, configure, build and install gnuplot from source.&lt;br /&gt;
  &amp;gt; tar xzf gnuplot-4.6.0.tar.gz&lt;br /&gt;
  &amp;gt; cd gnuplot-4.6.0&lt;br /&gt;
  &amp;gt; ./configure&lt;br /&gt;
  &amp;gt; make&lt;br /&gt;
  &amp;gt; make install     # run as root.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Other&lt;br /&gt;
: Of course, gnuplot can be built from source on any other Unix based machine such as Mac OS X and Linux.&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
Several good tutorial references exist for gnuplot.  &lt;br /&gt;
&lt;br /&gt;
Gnuplot Not So Frequently Asked Questions [http://t16web.lanl.gov/Kawano/gnuplot/index-e.html http://t16web.lanl.gov/Kawano/gnuplot/index-e.html]&lt;br /&gt;
&lt;br /&gt;
===Plotting===&lt;br /&gt;
gnuplot is a program created to plot stuff. You can plot functions or data. There are two commands for plotting, &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt;. &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; is used to plot 2D functions while &amp;lt;code&amp;gt;splot&amp;lt;/code&amp;gt; is used to plot 3D functions. &lt;br /&gt;
&lt;br /&gt;
===Plotting Functions===&lt;br /&gt;
The &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command has the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [ function | 'filename' datafile-modifiers ]&lt;br /&gt;
&lt;br /&gt;
gnuplot has great support for all common (and many uncommon) functions. For example, to plot sin(x),&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_001.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; is a special variable that gnuplot reconizes as the dependent variable. Multiple functions can be plotted on the same graph, just separate each with a comma&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x), cos(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_002.png|400px]]&lt;br /&gt;
&lt;br /&gt;
We control the what and how our plot is displayed by setting ''options''. Options are set with the &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt; command. For example, to set the graph title, we set the &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt; option to a string containing the title.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set title &amp;quot;Sine and Cosine&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Notice that the graph does not change after you set the title option. gnuplot will not redraw the graph until we either issue another &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command, or tell it to ''replot'' what we previously plotted with the ...&amp;lt;code&amp;gt;replot&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; replot  # redraw the previous plot with new options&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_003.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Other important options include &amp;lt;code&amp;gt;xlabel&amp;lt;/code&amp;gt; (the x-axis label), &amp;lt;code&amp;gt;ylabel&amp;lt;/code&amp;gt; (the y-axis label) and &amp;lt;code&amp;gt;key&amp;lt;/code&amp;gt; (sets the position of the legend). The legend is located in the top-right corner of the graph by default, which is in the way in the example above. To label the axis and move the key,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel &amp;quot;time (s)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set ylabel &amp;quot;current (A)&amp;quot;&lt;br /&gt;
 gnuplot&amp;gt; set key top left&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_004.png|400px]]&lt;br /&gt;
&lt;br /&gt;
By default, gnuplot will &amp;quot;autoscale&amp;quot; the y axis (when plotting data from a file, the x axis is autoscaled too). To set the x and y axis ranges, set the &amp;lt;code&amp;gt;xrange&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;yrange&amp;lt;/code&amp;gt; options.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; xrange[0:10]&lt;br /&gt;
 gnuplot&amp;gt; yrange[-2:2]&lt;br /&gt;
 gnuplot&amp;gt; replot&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_005.png|400px]]&lt;br /&gt;
&lt;br /&gt;
You can also set the range directly in the plot command.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot [x=0:10] sin(x)&lt;br /&gt;
&lt;br /&gt;
Autoscaling can always be re-enabled by setting the &amp;lt;code&amp;gt;autoscale&amp;lt;/code&amp;gt; option&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale&lt;br /&gt;
&lt;br /&gt;
or, to enable autoscaling for the x or y axis individually,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set autoscale x   # autoscale the x axis&lt;br /&gt;
 gnuplot&amp;gt; set autoscale y   # autoscale the y axis&lt;br /&gt;
&lt;br /&gt;
gnuplot allows aritrarly complex functions to be plotted. These can either be built directly in the &amp;lt;code&amp;gt;plot&amp;lt;/code&amp;gt; command,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
&lt;br /&gt;
or you can define a function and plot it&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; f(x) = sin(x) + cos(2*x) + 3*sin(4*x)&lt;br /&gt;
 gnuplot&amp;gt; plot f(x)&lt;br /&gt;
&lt;br /&gt;
[[File:gnuplot_tutorial_pic_006.png|400px]]&lt;br /&gt;
&lt;br /&gt;
====user-defined functions====&lt;br /&gt;
gnuplot allows the user to define arbitrary functions. Function definitions have the following form&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; function_name(arg1, [arg2, ...] ) = expression&lt;br /&gt;
&lt;br /&gt;
In the example above, we defined a function &amp;lt;code&amp;gt;f(x)&amp;lt;/code&amp;gt; that was a function of only one variable. However, we can define function of multiple variables. This can be very handy if we would like to plot a function with a variable parameter. For example, we may want to plot a Gaussian, but allow the center and width to be changed. We could define a Gauss function,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; gauss(sigma, x0, x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
To plot this function for different values of &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt;, we just provide values directly in the plot command&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,0,x), gauss(0.5,1,x), gausss(1.0,1,x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_007.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Note that, while we used the variable &amp;lt;code&amp;gt;x&amp;lt;\code&amp;gt; in the definition of &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt;, it is not required. More importantly, we can plot a function agains ''any'' of its arguments.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5,x,1)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_008.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot also also supports variables. You can set a variable, and then use it in plot commands or even function definitions. For example, we could set the width and position of a Gaussian function through two variables.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; x0 = 1.5&lt;br /&gt;
 gnuplot&amp;gt; sigma = 0.75&lt;br /&gt;
 gnuplot&amp;gt; gauss2(x) = exp( - (x - x0)**2 / (2*sigma*sigma))&lt;br /&gt;
&lt;br /&gt;
This function will use the values stored in &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; when it is evaluated. Note that the &amp;lt;code&amp;gt;x0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; in the function &amp;lt;code&amp;gt;gauss&amp;lt;/code&amp;gt; will '''not''' use the variables. Function argument names will &amp;quot;hide&amp;quot; variable names. In other words, gnuplot variables have ''scope''.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot gauss(0.5, 1, x), gauss2(x)&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_009.png|400px]]&lt;br /&gt;
&lt;br /&gt;
===plotting data from a file===&lt;br /&gt;
&lt;br /&gt;
We often need to plot data that is stored in a file. Typically this has either been generated from a computer model, or collected in an experiment. gnuplot has a very powerful set of utilities for plotting data from a file. The data files used in the examples that follow can be downloaded here.&lt;br /&gt;
&lt;br /&gt;
[[Media:simple.txt|simple.txt]]&lt;br /&gt;
&lt;br /&gt;
gnuplot reads plain text files in table format: one row per line with columns separated by white space. Each row in the table is used to create ''one'' data point on the graph. The simplest file that gnuplot can read contains just two columns of data points,&lt;br /&gt;
 &amp;gt; cat simple.txt&lt;br /&gt;
   0.0  1.1&lt;br /&gt;
   0.1  1.3&lt;br /&gt;
   0.2  1.4&lt;br /&gt;
   0.3  1.9&lt;br /&gt;
&lt;br /&gt;
gnuplot can plot this file directly,&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple.txt'  # note the quote marks&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_010.png|400px]]&lt;br /&gt;
&lt;br /&gt;
This turns out to be fairly convenient because it is not very difficult to write code to write files in this format&lt;br /&gt;
&lt;br /&gt;
  // C&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    printf( fp, &amp;quot;%f %f\n&amp;quot;, x[i], y[i] );&lt;br /&gt;
  &lt;br /&gt;
  // C++&lt;br /&gt;
  &lt;br /&gt;
  for(i = 0; i &amp;lt; n; i++)&lt;br /&gt;
    std::cout&amp;lt;&amp;lt;x[i]&amp;lt;&amp;lt;&amp;quot; &amp;quot;&amp;lt;&amp;lt;y[i]&amp;lt;&amp;lt;std::endl;&lt;br /&gt;
&lt;br /&gt;
When analyzing data, this is often all that is required to see trends. However, if we are going to show out graph to anybody else, we will certainly want to fix it up.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set xlabel 'x (arbitrary)'  # arbitrary units on the x-axis&lt;br /&gt;
 gnuplot&amp;gt; set ylabel 'y (arbitrary)'  # arbitrary units on the y-axis&lt;br /&gt;
 gnuplot&amp;gt; set title 'Simple Graph'&lt;br /&gt;
 gnuplot&amp;gt; set xrange[-.1:.4]          # widen xrange to see endpoints&lt;br /&gt;
 gnuplot&amp;gt; set yrange[1:2]             # same for yrange&lt;br /&gt;
 gnuplot&amp;gt; set key left                # move key to left, out of the way&lt;br /&gt;
 gnuplot&amp;gt; replot                      # dont' forget to replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[file:gnuplot_tutorial_pic_011.png|400px]]&lt;br /&gt;
&lt;br /&gt;
gnuplot can display data points as points (as above), lines, or points connected by lines. This is controlled by setting the &amp;lt;code&amp;gt;style&amp;lt;/code&amp;gt; option for &amp;lt;code&amp;gt;data&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data lines&lt;br /&gt;
 gnuplot&amp;gt; rep                   # rep is shorthand for replot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set style data linespoints&lt;br /&gt;
 gnuplot&amp;gt; rep&lt;br /&gt;
&lt;br /&gt;
=====choosing and manipulating data=====&lt;br /&gt;
The data we want to plot may be in a file with multiple columns. By default, gnuplot will read the file and use only the first two columns. The first column is used for the x coordinate, the second column is used for y.&lt;br /&gt;
 &lt;br /&gt;
 &amp;gt; cat simple2.txt&lt;br /&gt;
 0.0  1.1  2.4  5.4&lt;br /&gt;
 0.1  1.3  2.7  6.3&lt;br /&gt;
 0.2  1.4  2.9  7.5&lt;br /&gt;
 0.3  1.9  3.1  9.1&lt;br /&gt;
&lt;br /&gt;
Plotting this file will give the same graph as the previous file. However, to plot the 3rd column of data, we add the &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; plot 'simple2.txt' using 1:3&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;using&amp;lt;/code&amp;gt; modifier selects the columns to use in the plot. As expected, the above plot command selects the first and third columns.&lt;br /&gt;
&lt;br /&gt;
;using&lt;br /&gt;
: select columns from&lt;br /&gt;
&lt;br /&gt;
====lines vs. points====&lt;br /&gt;
By default, gnuplot will plot data as ''points''. To change this, we can set the data style to ''lines'' or ''linespoints'' (actually, other styles exist, but are much less common).&lt;br /&gt;
&lt;br /&gt;
==Creating Pictures==&lt;br /&gt;
gnuplot separates the concept of ''creating'' a plot and ''outputting'' a plot. Basically, all of the work required to construct a plot (reading in data points from a file, evaluating functions, etc) is independent of how the plot will be displayed. For example, you may want to the plot to be displayed on the screen, or written to a jpg. gnuplot uses the idea of ''terminals'' to support outputting plots to multiple formats. To output a plot to a jpeg, you tell gnuplot to write to the jpeg terminal type. To output a plot a png, you tell gnuplot to write to the png terminal type. You get the idea.&lt;br /&gt;
&lt;br /&gt;
To change the terminal type, set the &amp;lt;code&amp;gt;terminal&amp;lt;/code&amp;gt; option. For example, to create a png, set the terminal type to png.&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; set terminal png&lt;br /&gt;
&lt;br /&gt;
==Gnuplot Scripts==&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=345</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=345"/>
				<updated>2012-03-27T18:32:01Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to the FHSU Physics Department Wiki!'''&lt;br /&gt;
&lt;br /&gt;
==Main Topics==&lt;br /&gt;
&lt;br /&gt;
===Modeling &amp;amp; Simulation===&lt;br /&gt;
[[BTEC]]&lt;br /&gt;
&lt;br /&gt;
[[Linux]]&lt;br /&gt;
&lt;br /&gt;
[[Schrodinger]]&lt;br /&gt;
&lt;br /&gt;
===LaTeX===&lt;br /&gt;
[[LaTeX]]&lt;br /&gt;
&lt;br /&gt;
===Gnuplot===&lt;br /&gt;
[[Gnuplot]]&lt;br /&gt;
&lt;br /&gt;
===Robot + Kinect===&lt;br /&gt;
[[Project details]]&lt;br /&gt;
&lt;br /&gt;
===Arduino Interlock===&lt;br /&gt;
[[Project code]]&lt;br /&gt;
&lt;br /&gt;
===High Altitude Ballooning===&lt;br /&gt;
[[Project]]&lt;br /&gt;
&lt;br /&gt;
===Lego Robotics===&lt;br /&gt;
[[Workshop]]&lt;br /&gt;
&lt;br /&gt;
== MediaWiki Information ==&lt;br /&gt;
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.&lt;br /&gt;
&lt;br /&gt;
=== Getting started ===&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=24</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=24"/>
				<updated>2011-09-04T19:23:19Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to the FHSU Physics Department Wiki!'''&lt;br /&gt;
&lt;br /&gt;
Link to main topic pages:&lt;br /&gt;
&lt;br /&gt;
[[BTEC]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MediaWiki Information ==&lt;br /&gt;
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.&lt;br /&gt;
&lt;br /&gt;
=== Getting started ===&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=BTEC&amp;diff=23</id>
		<title>BTEC</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=BTEC&amp;diff=23"/>
				<updated>2011-09-04T19:05:55Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: Created page with &amp;quot;==Getting== ==Building== ==Running== ===Output Files===&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Getting==&lt;br /&gt;
==Building==&lt;br /&gt;
==Running==&lt;br /&gt;
===Output Files===&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=22</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=Main_Page&amp;diff=22"/>
				<updated>2011-09-04T19:04:43Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to the FHSU Physics Department Wiki!'''&lt;br /&gt;
&lt;br /&gt;
[[BTEC]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MediaWiki Information ==&lt;br /&gt;
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.&lt;br /&gt;
&lt;br /&gt;
=== Getting started ===&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=21</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=21"/>
				<updated>2011-09-04T19:03:04Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
!        display: block;&lt;br /&gt;
!        height: 155px;&lt;br /&gt;
!        width: 12.2em;&lt;br /&gt;
!        background-repeat: no-repeat;&lt;br /&gt;
!        background-position: 10% 20% !important;&lt;br /&gt;
        background-size: 100%;&lt;br /&gt;
!        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=20</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=20"/>
				<updated>2011-09-04T19:02:46Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
!        display: block;&lt;br /&gt;
!        height: 155px;&lt;br /&gt;
!        width: 12.2em;&lt;br /&gt;
!        background-repeat: no-repeat;&lt;br /&gt;
!        background-position: 10% 20% !important;&lt;br /&gt;
!        background-size: 95%;&lt;br /&gt;
!        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=19</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=19"/>
				<updated>2011-09-04T19:02:19Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
!        display: block;&lt;br /&gt;
!        height: 155px;&lt;br /&gt;
!        width: 12.2em;&lt;br /&gt;
!        background-repeat: no-repeat;&lt;br /&gt;
!        background-position: 10% 20% !important;&lt;br /&gt;
        background-size: 95%;&lt;br /&gt;
!        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=18</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=18"/>
				<updated>2011-09-04T19:01:59Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
!        display: block;&lt;br /&gt;
!        height: 155px;&lt;br /&gt;
!        width: 12.2em;&lt;br /&gt;
!        background-repeat: no-repeat;&lt;br /&gt;
!        background-position: 10% 20% !important;&lt;br /&gt;
        background-size: 90%;&lt;br /&gt;
!        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=17</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=17"/>
				<updated>2011-09-04T19:01:35Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
        display: block;&lt;br /&gt;
        height: 155px;&lt;br /&gt;
        width: 12.2em;&lt;br /&gt;
        background-repeat: no-repeat;&lt;br /&gt;
        background-position: 10% 20% !important;&lt;br /&gt;
        background-size: 90%;&lt;br /&gt;
        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=16</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=16"/>
				<updated>2011-09-04T19:01:19Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
        display: block;&lt;br /&gt;
        height: 155px;&lt;br /&gt;
        width: 12.2em;&lt;br /&gt;
        background-repeat: no-repeat;&lt;br /&gt;
        background-position: 10% 20% !important;&lt;br /&gt;
        background-size: 80%;&lt;br /&gt;
        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=15</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=15"/>
				<updated>2011-09-04T19:00:47Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
!#p-logo a,&lt;br /&gt;
!#p-logo a:hover {&lt;br /&gt;
!        display: block;&lt;br /&gt;
!        height: 155px;&lt;br /&gt;
!        width: 12.2em;&lt;br /&gt;
!        background-repeat: no-repeat;&lt;br /&gt;
!        background-position: 10% 20% !important;&lt;br /&gt;
!        background-size: 50%;&lt;br /&gt;
!        text-decoration: none;&lt;br /&gt;
!}&lt;br /&gt;
#p-logo {&lt;br /&gt;
        z-index: 3;&lt;br /&gt;
        position: absolute; /*needed to use z-index */&lt;br /&gt;
        top: 0;&lt;br /&gt;
        left: 0;&lt;br /&gt;
        height: 155px;&lt;br /&gt;
        width: 12em;&lt;br /&gt;
        scale: 50%&lt;br /&gt;
        overflow: visible;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=14</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=14"/>
				<updated>2011-09-04T19:00:15Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
!#p-logo a,&lt;br /&gt;
!#p-logo a:hover {&lt;br /&gt;
!        display: block;&lt;br /&gt;
!        height: 155px;&lt;br /&gt;
!        width: 12.2em;&lt;br /&gt;
!        background-repeat: no-repeat;&lt;br /&gt;
!        background-position: 10% 20% !important;&lt;br /&gt;
!        background-size: 50%;&lt;br /&gt;
!        text-decoration: none;&lt;br /&gt;
!}&lt;br /&gt;
#p-logo {&lt;br /&gt;
        z-index: 3;&lt;br /&gt;
        position: absolute; /*needed to use z-index */&lt;br /&gt;
        top: 0;&lt;br /&gt;
        left: 0;&lt;br /&gt;
        height: 155px;&lt;br /&gt;
        width: 12em;&lt;br /&gt;
        background-size: 50%&lt;br /&gt;
        overflow: visible;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=13</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=13"/>
				<updated>2011-09-04T19:00:00Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
!#p-logo a,&lt;br /&gt;
!#p-logo a:hover {&lt;br /&gt;
!        display: block;&lt;br /&gt;
!        height: 155px;&lt;br /&gt;
!        width: 12.2em;&lt;br /&gt;
!        background-repeat: no-repeat;&lt;br /&gt;
!        background-position: 10% 20% !important;&lt;br /&gt;
!        background-size: 50%;&lt;br /&gt;
!        text-decoration: none;&lt;br /&gt;
!}&lt;br /&gt;
#p-logo {&lt;br /&gt;
        z-index: 3;&lt;br /&gt;
        position: absolute; /*needed to use z-index */&lt;br /&gt;
        top: 0;&lt;br /&gt;
        left: 0;&lt;br /&gt;
        height: 155px;&lt;br /&gt;
        width: 12em;&lt;br /&gt;
        size: 50%&lt;br /&gt;
        overflow: visible;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=12</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=12"/>
				<updated>2011-09-04T18:59:41Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
!#p-logo a,&lt;br /&gt;
!#p-logo a:hover {&lt;br /&gt;
!        display: block;&lt;br /&gt;
!        height: 155px;&lt;br /&gt;
!        width: 12.2em;&lt;br /&gt;
!        background-repeat: no-repeat;&lt;br /&gt;
!        background-position: 10% 20% !important;&lt;br /&gt;
!        background-size: 50%;&lt;br /&gt;
!        text-decoration: none;&lt;br /&gt;
!}&lt;br /&gt;
#p-logo {&lt;br /&gt;
        z-index: 3;&lt;br /&gt;
        position: absolute; /*needed to use z-index */&lt;br /&gt;
        top: 0;&lt;br /&gt;
        left: 0;&lt;br /&gt;
        height: 155px;&lt;br /&gt;
        width: 12em;&lt;br /&gt;
        overflow: visible;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=11</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=11"/>
				<updated>2011-09-04T18:59:03Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
        display: block;&lt;br /&gt;
        height: 155px;&lt;br /&gt;
        width: 12.2em;&lt;br /&gt;
        background-repeat: no-repeat;&lt;br /&gt;
        background-position: 10% 20% !important;&lt;br /&gt;
        background-size: 50%;&lt;br /&gt;
        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=10</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=10"/>
				<updated>2011-09-04T18:58:32Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
        display: block;&lt;br /&gt;
        height: 155px;&lt;br /&gt;
        width: 12.2em;&lt;br /&gt;
        background-repeat: no-repeat;&lt;br /&gt;
        background-position: 10% 20% !important;&lt;br /&gt;
        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=9</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=9"/>
				<updated>2011-09-04T18:58:05Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
        display: block;&lt;br /&gt;
        height: 155px;&lt;br /&gt;
        width: 12.2em;&lt;br /&gt;
        background-repeat: no-repeat;&lt;br /&gt;
        background-position: 5% 50% !important;&lt;br /&gt;
        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=8</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=8"/>
				<updated>2011-09-04T18:56:04Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
        display: block;&lt;br /&gt;
        height: 155px;&lt;br /&gt;
        width: 12.2em;&lt;br /&gt;
        background-repeat: no-repeat;&lt;br /&gt;
        background-position: 35% 50% !important;&lt;br /&gt;
        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=7</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=7"/>
				<updated>2011-09-04T18:55:35Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
        display: block;&lt;br /&gt;
        height: 100px;&lt;br /&gt;
        width: 12.2em;&lt;br /&gt;
        background-repeat: no-repeat;&lt;br /&gt;
        background-position: 35% 50% !important;&lt;br /&gt;
        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=6</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=6"/>
				<updated>2011-09-04T18:55:15Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
&lt;br /&gt;
#p-logo a,&lt;br /&gt;
#p-logo a:hover {&lt;br /&gt;
        display: block;&lt;br /&gt;
        height: 200px;&lt;br /&gt;
        width: 12.2em;&lt;br /&gt;
        background-repeat: no-repeat;&lt;br /&gt;
        background-position: 35% 50% !important;&lt;br /&gt;
        text-decoration: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=5</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=5"/>
				<updated>2011-09-04T18:52:35Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
#p-logo {&lt;br /&gt;
        z-index: 3;&lt;br /&gt;
        position: absolute; /*needed to use z-index */&lt;br /&gt;
        top: 0;&lt;br /&gt;
        left: 0;&lt;br /&gt;
        height: 200px;&lt;br /&gt;
        width: 12em;&lt;br /&gt;
        overflow: visible;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=4</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=4"/>
				<updated>2011-09-04T18:51:36Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
#p-logo {&lt;br /&gt;
        z-index: 3;&lt;br /&gt;
        position: absolute; /*needed to use z-index */&lt;br /&gt;
        top: 0;&lt;br /&gt;
        left: 0;&lt;br /&gt;
        height: 100px;&lt;br /&gt;
        width: 12em;&lt;br /&gt;
        overflow: visible;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=3</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=3"/>
				<updated>2011-09-04T18:50:54Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
#p-logo {&lt;br /&gt;
        z-index: 3;&lt;br /&gt;
        position: absolute; /*needed to use z-index */&lt;br /&gt;
        top: 0;&lt;br /&gt;
        left: 0;&lt;br /&gt;
        height: 150px;&lt;br /&gt;
        width: 12em;&lt;br /&gt;
        overflow: visible;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	<entry>
		<id>http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=2</id>
		<title>MediaWiki:Monobook.css</title>
		<link rel="alternate" type="text/html" href="http://fourier.fhsu.edu/index.php?title=MediaWiki:Monobook.css&amp;diff=2"/>
				<updated>2011-09-04T18:50:15Z</updated>
		
		<summary type="html">&lt;p&gt;Laser: Created page with &amp;quot;/* CSS placed here will affect users of the Monobook skin */ #p-logo {         z-index: 3;         position: absolute; /*needed to use z-index */         top: 0;         left: 0;…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will affect users of the Monobook skin */&lt;br /&gt;
#p-logo {&lt;br /&gt;
        z-index: 3;&lt;br /&gt;
        position: absolute; /*needed to use z-index */&lt;br /&gt;
        top: 0;&lt;br /&gt;
        left: 0;&lt;br /&gt;
        height: 155px;&lt;br /&gt;
        width: 12em;&lt;br /&gt;
        overflow: visible;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Laser</name></author>	</entry>

	</feed>