day1/cheatsheet2.tex
author Santosh G. Vattam <vattam.santosh@gmail.com>
Wed, 11 Nov 2009 12:52:50 +0530
changeset 303 26f5e864a135
parent 300 f87f2a310abe
child 309 0b1f2c378d84
permissions -rwxr-xr-x
Updated session 1 of day 1.

\documentclass[12pt]{article}


\title{Plotting Points}
\author{FOSSEE}
\usepackage{listings}
\lstset{language=Python,
    basicstyle=\ttfamily,
  commentstyle=\itshape\bfseries,
  showstringspaces=false,
}
\newcommand{\typ}[1]{\lstinline{#1}}
\usepackage[english]{babel}
\usepackage[latin1]{inputenc}
\usepackage{times}
\usepackage[T1]{fontenc}
\usepackage{ae,aecompl}
\usepackage{mathpazo,courier,euler}
\usepackage[scaled=.95]{helvet}

\begin{document}
\date{}
\vspace{-1in}
\begin{center}
\LARGE{Plotting Points}\\
\large{FOSSEE}
\end{center}
\section{Plotting from Data files}
\begin{verbatim}
l = [] #Empty List
t = []
for line in open('pendulum.txt'): # Opening & Reading files
    points = line.split() # Splitting a string
    l.append(float(points[0])) # Appending to a list
    t.append(float(points[1]))
tsq = []
for time in t:  #Iterating through lists
    tsq.append(t*t)
plot(l, tsq, '.') # Plotting points
\end{verbatim}
\section{Plotting Points with Lists}

\begin{lstlisting}
In [1]: x = [0, 1, 2, 3]
In [2]: y = [7, 11, 15, 19]
In [3]: plot(x, y)
In [4]: clf()
In [5]: plot(x, y, 'o')  # Plotting Circles
#Dots - '.', #Dashed lines - '--' #Lines - '-'
\end{lstlisting}

\section{Lists}

Initializing
  \begin{lstlisting}
In [10]: mtlist = []      # Empty List
In [11]: lst = [ 1, 2, 3, 4, 5] 
  \end{lstlisting}
Slicing
\begin{lstlisting}
In [12]: lst[1:3]         # A slice.
Out[12]: [2, 3]

In [13]: lst[1:-1]
Out[13]: [2, 3, 4]
\end{lstlisting}
Appending to lists
\begin{lstlisting}
In [14]: a = [ 6, 7, 8, 9]
In [15]: b = lst + a
In [16]: b
Out[16]: [1, 2, 3, 4, 5, 6, 7, 8, 9]

In [17]: lst.append(6)
In [18]: lst
Out[18]: [ 1, 2, 3, 4, 5, 6]
\end{lstlisting}

Iterating over a List
\begin{lstlisting}
In [19]: for each in b:  # Iterating over the list, element-wise
 ....:     print b       # Print each element
 ....:
\end{lstlisting}

Splitting Strings
\begin{lstlisting}
In [20]: line = '1.2000e-01 7.4252e-01'
In [21]: point = line.split()    # Splits the string at the space
Out[21]: ['1.2000e-01', '7.4252e-01']
\end{lstlisting}

Plotting from Files
\begin{lstlisting}
In [22]: L = []
In [23]: T = []

#Open a file & operate on each line
In [24]: for line in open('pendulum.txt'):  
  ....     point = line.split()
  ....     L.append(float(point[0]))
  ....     T.append(float(point[1]))
In [25]: TSq = []
In [26]: for t in T:
 ....:     TSq.append(t*t)
 ....:     
 ....:     
In [27]: plot(L, TSq, '.')
\end{lstlisting}

\end{document}