day1/cheatsheet2.tex
changeset 313 f5bcb974a665
parent 311 5303c34a3180
child 314 c9f05808e1c4
--- a/day1/cheatsheet2.tex	Wed Nov 18 17:14:54 2009 +0530
+++ b/day1/cheatsheet2.tex	Wed Nov 18 18:37:15 2009 +0530
@@ -34,9 +34,50 @@
 In []: plot(x, y)
 In []: clf()
 In []: plot(x, y, 'o')  # Plotting Circles
-#Dots - '.', #Dashed lines - '--' #Lines - '-'
 \end{lstlisting}
 
+\subsection{Line style/marker}
+\begin{lstlisting}
+The following format string characters are accepted 
+to control the line style or marker:
+    
+    ================    ===============================
+    character           description
+    ================    ===============================
+    '-'                 solid line style
+    '--'                dashed line style
+    '-.'                dash-dot line style
+    ':'                 dotted line style
+    '.'                 point marker
+    ','                 pixel marker
+    'o'                 circle marker
+    'v'                 triangle_down marker
+    '^'                 triangle_up marker
+    '<'                 triangle_left marker
+    '>'                 triangle_right marker
+    '1'                 tri_down marker
+    '2'                 tri_up marker
+    '3'                 tri_left marker
+    '4'                 tri_right marker
+    's'                 square marker
+    'p'                 pentagon marker
+    '*'                 star marker
+    'h'                 hexagon1 marker
+    'H'                 hexagon2 marker
+    '+'                 plus marker
+    'x'                 x marker
+    'D'                 diamond marker
+    'd'                 thin_diamond marker
+    '|'                 vline marker
+    '_'                 hline marker
+    ================    ===============================
+
+\end{lstlisting}
+
+\subsection{Marker combinations}
+\typ{In []: plot(x, y, 'ro')} \\
+This plots figure with red colored filled circles.\\
+Similarly other combination of colors and marker can be used.
 \section{Lists}
 
 Initializing
@@ -52,7 +93,7 @@
 In []: lst[1:-1]
 Out[]: [2, 3, 4]
 \end{lstlisting}
-Appending to lists
+\subsection{Appending to lists}
 \begin{lstlisting}
 In []: a = [ 6, 7, 8, 9]
 In []: b = lst + a
@@ -63,36 +104,47 @@
 In []: lst
 Out[]: [ 1, 2, 3, 4, 5, 6]
 \end{lstlisting}
-Iterating over a List
+\subsection{Iterating over a List}
 \begin{lstlisting}
-In []: for each in b:  # Iterating over the list, element-wise
- ....:     print b       # Print each element
+In []: for element in b:  # Iterating over the list, element-wise
+ ....:     print element       # Print each element
  ....:
 \end{lstlisting}
 
-Splitting Strings
+\section{Strings}
+\subsection{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']
+In []: greet = ``hello world''
+In []: print greet.split()
+Out[]: ['hello', 'world']
+In []: greet = ``hello, world''
+In []: print greet.split(',')
+Out[]: ['hello', ' world'] # Note the whitespace before 'world'
 \end{lstlisting}
+A string can be split based on the delimiter specified within quotes. A combination of more than one delimiter can also be used.\\
+\typ{In []: greet.split(', ')}\\
+\typ{Out[]: ['hello', 'world']}\\Note the whitespace is not there anymore.
 
-Plotting from Files
-\begin{lstlisting}
-In [22]: L = []
-In [23]: T = []
+\section{Plotting from Files}
+\subsection{Opening, reading and writing files}
 
-#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, '.')
+\begin{lstlisting}
+  In []: f = open('datafile.txt') #By default opens in read mode. If file does not exist then it throws an exception
+  In []: f = open('datafile.txt','r') #Specifying the read mode
+  In []: f = open('datafile.txt', 'w') #Opens the file in write mode. If the file already exists, then it deletes all the previous content and opens.
+\end{lstlisting}
+\subsection{Plotting}
+\begin{lstlisting}
+l = []
+t = []
+for line in open('pendulum.txt'):
+    point = line.split()
+    l.append(float(point[0]))
+    t.append(float(point[1]))
+tsq = []
+for time in t:
+    tsq.append(time*time)
+plot(l, tsq, '.')
 \end{lstlisting}
 
 \end{document}