day2/session1.tex
author Puneeth Chaganti <punchagan@fossee.in>
Fri, 09 Oct 2009 11:52:51 +0530
changeset 78 ec1346330649
parent 76 b24c2560f626
child 95 691608044ae7
permissions -rw-r--r--
Minor edits to Day2 handout.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
     1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
     2
% Tutorial slides on Python.
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
     3
%
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
     4
% Author: Prabhu Ramachandran <prabhu at aero.iitb.ac.in>
46
63704b5650f1 Changed the copyright and Institute for all the sessions.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 44
diff changeset
     5
% Copyright (c) 2005-2009, Prabhu Ramachandran
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
     6
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
     7
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
     8
\documentclass[14pt,compress]{beamer}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
     9
%\documentclass[draft]{beamer}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    10
%\documentclass[compress,handout]{beamer}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    11
%\usepackage{pgfpages} 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    12
%\pgfpagesuselayout{2 on 1}[a4paper,border shrink=5mm]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    13
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    14
% Modified from: generic-ornate-15min-45min.de.tex
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    15
\mode<presentation>
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    16
{
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    17
  \usetheme{Warsaw}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    18
  \useoutertheme{split}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    19
  \setbeamercovered{transparent}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    20
}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    21
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    22
\usepackage[english]{babel}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    23
\usepackage[latin1]{inputenc}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    24
%\usepackage{times}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    25
\usepackage[T1]{fontenc}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    26
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    27
% Taken from Fernando's slides.
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    28
\usepackage{ae,aecompl}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    29
\usepackage{mathpazo,courier,euler}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    30
\usepackage[scaled=.95]{helvet}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    31
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    32
\definecolor{darkgreen}{rgb}{0,0.5,0}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    33
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    34
\usepackage{listings}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    35
\lstset{language=Python,
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    36
    basicstyle=\ttfamily\bfseries,
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    37
    commentstyle=\color{red}\itshape,
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    38
  stringstyle=\color{darkgreen},
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    39
  showstringspaces=false,
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    40
  keywordstyle=\color{blue}\bfseries}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    41
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    42
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    43
% Macros
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    44
\setbeamercolor{emphbar}{bg=blue!20, fg=black}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    45
\newcommand{\emphbar}[1]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    46
{\begin{beamercolorbox}[rounded=true]{emphbar} 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    47
      {#1}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    48
 \end{beamercolorbox}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    49
}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    50
\newcounter{time}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    51
\setcounter{time}{0}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    52
\newcommand{\inctime}[1]{\addtocounter{time}{#1}{\tiny \thetime\ m}}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    53
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
    54
\newcommand{\typ}[1]{\lstinline{#1}}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    55
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    56
\newcommand{\kwrd}[1]{ \texttt{\textbf{\color{blue}{#1}}}  }
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    57
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    58
%%% This is from Fernando's setup.
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    59
% \usepackage{color}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    60
% \definecolor{orange}{cmyk}{0,0.4,0.8,0.2}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    61
% % Use and configure listings package for nicely formatted code
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    62
% \usepackage{listings}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    63
% \lstset{
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    64
%    language=Python,
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    65
%    basicstyle=\small\ttfamily,
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    66
%    commentstyle=\ttfamily\color{blue},
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    67
%    stringstyle=\ttfamily\color{orange},
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    68
%    showstringspaces=false,
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    69
%    breaklines=true,
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    70
%    postbreak = \space\dots
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    71
% }
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    72
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    73
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    74
% Title page
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    75
\title[]{Matrices and Arrays\\ \& \\2D Plotting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    76
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
    77
\author[FOSSEE Team] {Asokan Pichai\\Prabhu Ramachandran}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    78
46
63704b5650f1 Changed the copyright and Institute for all the sessions.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 44
diff changeset
    79
\institute[IIT Bombay] {Department of Aerospace Engineering\\IIT Bombay}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    80
\date[] {11, October 2009}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    81
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    82
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    83
%\pgfdeclareimage[height=0.75cm]{iitmlogo}{iitmlogo}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    84
%\logo{\pgfuseimage{iitmlogo}}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    85
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    86
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    87
%% Delete this, if you do not want the table of contents to pop up at
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    88
%% the beginning of each subsection:
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    89
\AtBeginSubsection[]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    90
{
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    91
  \begin{frame}<beamer>
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    92
    \frametitle{Outline}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    93
    \tableofcontents[currentsection,currentsubsection]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    94
  \end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    95
}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    96
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    97
\AtBeginSection[]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    98
{
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    99
  \begin{frame}<beamer>
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   100
    \frametitle{Outline}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   101
    \tableofcontents[currentsection,currentsubsection]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   102
  \end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   103
}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   104
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   105
% If you wish to uncover everything in a step-wise fashion, uncomment
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   106
% the following command: 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   107
%\beamerdefaultoverlayspecification{<+->}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   108
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   109
%\includeonlyframes{current,current1,current2,current3,current4,current5,current6}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   110
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   111
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   112
% DOCUMENT STARTS
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   113
\begin{document}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   114
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   115
\begin{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   116
  \maketitle
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   117
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   118
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   119
\begin{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   120
  \frametitle{Outline}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   121
  \tableofcontents
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   122
  % You might wish to add the option [pausesections]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   123
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   124
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   125
\section{Matrices and Arrays}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   126
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   127
\subsection{Basic \typ{numpy} }
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   128
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   129
\newcommand{\num}{\texttt{numpy}}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   130
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   131
\begin{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   132
  \frametitle{The \num\ module}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   133
  \begin{itemize}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   134
      \item Why?
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   135
  \item What:
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   136
    \begin{itemize}
78
ec1346330649 Minor edits to Day2 handout.
Puneeth Chaganti <punchagan@fossee.in>
parents: 76
diff changeset
   137
    \item An efficient and powerful array type for various common data types
ec1346330649 Minor edits to Day2 handout.
Puneeth Chaganti <punchagan@fossee.in>
parents: 76
diff changeset
   138
    \item Abstracts out the most commonly used standard operations on arrays
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   139
    \end{itemize}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   140
  \end{itemize}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   141
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   142
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   143
\begin{frame}[fragile]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   144
  \frametitle{Examples of \num}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   145
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   146
# Simple array math example
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   147
>>> import numpy as np
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   148
>>> a = np.array([1,2,3,4])
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   149
>>> b = np.arange(2,6)
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   150
>>> b
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   151
array([2,3,4,5])
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   152
>>> a*2 + b + 1 # Basic math!
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   153
array([5, 8, 11, 14])
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   154
\end{lstlisting}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   155
\end{frame}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   156
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   157
\begin{frame}[fragile]
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   158
  \frametitle{Examples of \num}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   159
\begin{lstlisting}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   160
# Pi and e are defined.
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   161
>>> x = np.linspace(0.0, 10.0, 1000)
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   162
>>> x *= 2*np.pi/10 # inplace.
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   163
# apply functions to array.
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   164
>>> y = np.sin(x)
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   165
>>> z = np.exp(y)
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   166
\end{lstlisting}
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   167
\inctime{5}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   168
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   169
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   170
\begin{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   171
  \frametitle{Basic concepts}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   172
  \begin{itemize}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   173
  \item fixed size (\typ{arr.size});
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   174
  \item Same type (\typ{arr.dtype}) of data
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   175
  \item arbitrary dimensionality
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   176
  \item \typ{arr.shape}: size in each dimension
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   177
  \item \alert{Note:} \typ{len(arr) != arr.size} in general
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   178
  \item \alert{Note:} By default array operations are performed
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   179
    \alert{elementwise}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   180
  \end{itemize}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   181
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   182
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   183
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   184
\begin{frame}[fragile]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   185
  \frametitle{More examples of \num}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   186
\vspace*{-8pt}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   187
\begin{lstlisting}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   188
>>> x = np.array([1., 2, 3, 4])
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   189
>>> np.size(x)
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   190
4
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   191
>>> x.dtype # What is a.dtype?
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   192
dtype('float64')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   193
>>> x.shape
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   194
(4,)
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   195
>>> print np.rank(x), x.itemsize
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   196
1 8
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   197
>>> x[0] = 10
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   198
>>> print x[0], x[-1]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   199
10.0 4.0
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   200
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   201
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   202
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   203
\begin{frame}[fragile]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   204
  \frametitle{Multi-dimensional arrays}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   205
\begin{lstlisting}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   206
>>> a = np.array([[ 0, 1, 2, 3],
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   207
...            [10,11,12,13]])
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   208
>>> a.shape # (rows, columns)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   209
(2, 4)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   210
# Accessing and setting values
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   211
>>> a[1,3] 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   212
13
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   213
>>> a[1,3] = -1
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   214
>>> a[1] # The second row
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   215
array([10,11,12,-1])
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   216
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   217
\end{frame}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   218
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   219
\begin{frame}[fragile]
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   220
  \frametitle{Array math}
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   221
  \begin{itemize}
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   222
  \item Basic \alert{elementwise} math (given two arrays \typ{a, b}):
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   223
      \typ{+, -, *, /, \%}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   224
  \item Inplace operators: \typ{a += b}, or \typ{np.add(a, b, a)} etc. 
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   225
  \item \typ{np.sum(x, axis=0)}, 
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   226
        \typ{np.product(x, axis=0)},
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   227
        \typ{np.dot(a, bp)}   
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   228
  \end{itemize}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   229
\begin{lstlisting}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   230
>>> b=np.array([[0,2,4,2],[1,2,3,4]])
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   231
>>> np.add(a,b,a)
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   232
>>> np.sum(x,axis=1)
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   233
\end{lstlisting}
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   234
\end{frame}
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   235
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   236
\begin{frame}[fragile]
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   237
  \frametitle{Array math cont.}
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   238
  \begin{itemize}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   239
  \item Logical operations: \typ{np.equal (==)}, \typ{np.not\_equal (!=)},
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   240
    \typ{np.less (<)}, \typ{np.greater (>)} etc.
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   241
  \item Trig and other functions: \typ{np.sin(x),}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   242
        \typ{np.arcsin(x), np.sinh(x),}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   243
      \typ{np.exp(x), np.sqrt(x)} etc.
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   244
  \end{itemize}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   245
\begin{lstlisting}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   246
>>> np.greater(a,4)
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   247
>>> np.sqrt(a)
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   248
\end{lstlisting}
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   249
\inctime{10}
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   250
\end{frame}
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   251
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   252
\subsection{Array Creation \& Slicing, Striding Arrays}
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   253
\begin{frame}[fragile]
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   254
  \frametitle{Array creation functions}
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   255
  \begin{itemize}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   256
    \item {\typ{np.array(object,dtype=None,...)}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   257
    \begin{lstlisting}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   258
>>> np.array([2,3,4])  
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   259
array([2, 3, 4])
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   260
    \end{lstlisting}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   261
    \item \typ{np.linspace(start,stop,...)}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   262
    \begin{lstlisting}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   263
>>> np.linspace(0, 2, 4)   
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   264
array([0.,0.6666667,1.3333333,2.])
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   265
    \end{lstlisting}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   266
    \item Also try \typ{np.arange}
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   267
  \end{itemize}
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   268
\end{frame}
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   269
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   270
\begin{frame}[fragile]
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   271
  \frametitle{Array creation functions cont.}
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   272
  \begin{itemize}  
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   273
  \item \typ{np.ones(shape, dtype=None, ...)}  
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   274
  \begin{lstlisting} 
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   275
>>>np.ones([2,2])
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   276
array([[ 1.,  1.],
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   277
     [ 1.,  1.]])
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   278
  \end{lstlisting}  
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   279
  \item \typ{np.identity(n)} 
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   280
  \item \typ{np.ones\_like(x)}  
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   281
  \begin{lstlisting} 
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   282
>>>a = np.array([[1,2,3],[4,5,6]])
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   283
>>>np.ones_like(a)
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   284
array([[1, 1, 1],
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   285
       [1, 1, 1]])
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   286
  \end{lstlisting}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   287
  \item Also try \typ{zeros, zeros\_like, empty}
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   288
  \end{itemize}
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   289
\end{frame}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   290
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   291
\begin{frame}[fragile]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   292
  \frametitle{Slicing arrays}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   293
\begin{lstlisting}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   294
>>> a = np.array([[1,2,3], [4,5,6], 
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   295
               [7,8,9]])
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   296
>>> a[0,1:3]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   297
array([2, 3])
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   298
>>> a[1:,1:]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   299
array([[5, 6],
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   300
       [8, 9]])
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   301
>>> a[:,2]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   302
array([3, 6, 9])
9
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   303
>>> a[...,2]
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   304
array([3, 6, 9])
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   305
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   306
\end{frame}
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   307
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   308
\begin{frame}[fragile]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   309
  \frametitle{Striding arrays}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   310
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   311
>>> a[0::2,0::2]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   312
array([[1, 3],
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   313
       [7, 9]])
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   314
# Slices are references to the 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   315
# same memory!
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   316
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   317
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   318
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   319
\begin{frame}[fragile]
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   320
\frametitle{Random Numbers}
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   321
\begin{lstlisting}
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   322
>>> np.random.rand(3,2)
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   323
array([[ 0.96276665,  0.77174861],
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   324
       [ 0.35138557,  0.61462271],
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   325
       [ 0.16789255,  0.43848811]])
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   326
>>> np.random.randint(1,100)
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   327
42
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   328
\end{lstlisting}
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   329
\inctime{15}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   330
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   331
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   332
\begin{frame}[fragile]
6
1f9492506ba2 Added a problem after initial numpy section in session1.
Puneeth Chaganti <punchagan@fossee.in>
parents: 4
diff changeset
   333
  \frametitle{Problem Set}
1f9492506ba2 Added a problem after initial numpy section in session1.
Puneeth Chaganti <punchagan@fossee.in>
parents: 4
diff changeset
   334
  \begin{lstlisting}
1f9492506ba2 Added a problem after initial numpy section in session1.
Puneeth Chaganti <punchagan@fossee.in>
parents: 4
diff changeset
   335
    >>> from scipy import misc
1f9492506ba2 Added a problem after initial numpy section in session1.
Puneeth Chaganti <punchagan@fossee.in>
parents: 4
diff changeset
   336
    >>> A=misc.imread(name)
1f9492506ba2 Added a problem after initial numpy section in session1.
Puneeth Chaganti <punchagan@fossee.in>
parents: 4
diff changeset
   337
    >>> misc.imshow(A)
1f9492506ba2 Added a problem after initial numpy section in session1.
Puneeth Chaganti <punchagan@fossee.in>
parents: 4
diff changeset
   338
  \end{lstlisting}
1f9492506ba2 Added a problem after initial numpy section in session1.
Puneeth Chaganti <punchagan@fossee.in>
parents: 4
diff changeset
   339
    \begin{enumerate}
1f9492506ba2 Added a problem after initial numpy section in session1.
Puneeth Chaganti <punchagan@fossee.in>
parents: 4
diff changeset
   340
    \item Convert an RGB image to Grayscale. $ Y = 0.5R + 0.25G + 0.25B $
9
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   341
    \item Scale the image to 50\%
34
5218871f98f4 Edited image processing example.
Puneeth Chaganti <punchagan@fossee.in>
parents: 20
diff changeset
   342
    \item Introduce some random noise
5218871f98f4 Edited image processing example.
Puneeth Chaganti <punchagan@fossee.in>
parents: 20
diff changeset
   343
    \item Smooth the image using a mean filter
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   344
      \\\small{Each element in the array is replaced by mean of all the neighbouring elements}
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   345
      \\\small{How fast does your code run?}
6
1f9492506ba2 Added a problem after initial numpy section in session1.
Puneeth Chaganti <punchagan@fossee.in>
parents: 4
diff changeset
   346
    \end{enumerate}
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   347
\inctime{15}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   348
\end{frame}
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   349
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   350
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   351
\section{2D Plotting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   352
\subsection{Getting Started}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   353
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   354
\begin{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   355
    {IPython's \typ{pylab} mode}
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   356
\begin{block}{Immediate use:}
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   357
 \typ{\$ ipython -pylab}
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   358
\end{block}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   359
\begin{itemize}
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   360
    \item \typ{pylab}: convenient 2D plotting interface to MPL    
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   361
    \item Imports all of pylab for you!
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   362
    \item Allows for interactive plotting
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   363
\end{itemize}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   364
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   365
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   366
\begin{frame}[fragile]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   367
    \frametitle{Basic 2D plotting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   368
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   369
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   370
>>> x = linspace(0, 2*pi, 1000)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   371
>>> plot(x, sin(x)) 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   372
>>> plot(x, sin(x), 'ro')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   373
>>> xlabel(r'$\chi$', color='g')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   374
# LaTeX markup!
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   375
>>> ylabel(r'sin($\chi$)', color='r')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   376
>>> title('Simple figure', fontsize=20)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   377
>>> savefig('/tmp/test.eps')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   378
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   379
\begin{itemize}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   380
  \item Also: PNG, PDF, PS, EPS, SVG, PDF
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   381
\end{itemize}
12
996fb264fbe2 Corrected screwed up merge.
Shantanu <shantanu@fossee.in>
parents: 10
diff changeset
   382
\inctime{5}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   383
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   384
       
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   385
\subsection{Plots - Lines, Labels and Legends}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   386
\begin{frame}[fragile]
12
996fb264fbe2 Corrected screwed up merge.
Shantanu <shantanu@fossee.in>
parents: 10
diff changeset
   387
  \frametitle{Tweaking plots}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   388
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   389
# Set properties of objects:
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   390
>>> l, = plot(x, sin(x))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   391
# Why "l,"?
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   392
>>> setp(l, linewidth=2.0, color='r')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   393
>>> l.set_linewidth(2.0)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   394
>>> draw() # Redraw.
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   395
>>> setp(l) # Print properties.
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   396
>>> clf() # Clear figure.
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   397
>>> close() # Close figure.
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   398
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   399
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   400
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   401
\begin{frame}[fragile]
10
84c3f600045f Merged Heads.
Puneeth Chaganti <punchagan@fossee.in>
parents: 9 8
diff changeset
   402
   \frametitle{Working with text \ldots}
7
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   403
%\begin{itemize}
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   404
%  \item We already saw LaTeX markup support!
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   405
%\end{itemize}
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   406
\begin{lstlisting}
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   407
>>> w = arange(-2,2,.1)
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   408
>>> plot(w,exp(-(w*w))*cos)
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   409
>>> ylabel('$f(\omega)$')
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   410
>>> xlabel('$\omega$')
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   411
>>> title(r"$f(\omega)=e^{-\omega^2}
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   412
            cos({\omega^2})$")
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   413
>>> annotate('maxima',xy=(0, 1), 
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   414
             xytext=(1, 0.8), 
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   415
             arrowprops=dict(
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   416
             facecolor='black', 
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   417
             shrink=0.05))
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   418
\end{lstlisting}
10
84c3f600045f Merged Heads.
Puneeth Chaganti <punchagan@fossee.in>
parents: 9 8
diff changeset
   419
    
7
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   420
\end{frame}
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   421
adcc40e2bf70 Made changes in plotting section.
Shantanu <shantanu@fossee.in>
parents: 6
diff changeset
   422
\begin{frame}[fragile]
8
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   423
  \frametitle{Legends}
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   424
\begin{lstlisting}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   425
>>> x = linspace(0, 2*np.pi, 1000)
8
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   426
>>> plot(x, cos(5*x), 'r--', 
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   427
         label='cosine')
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   428
>>> plot(x, sin(5*x), 'g--', 
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   429
         label='sine')
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   430
>>> legend() 
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   431
# Or use:
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   432
>>> legend(['cosine', 'sine'])
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   433
\end{lstlisting}
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   434
\end{frame}
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   435
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   436
\begin{frame}[fragile]
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   437
    \frametitle{Multiple figures}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   438
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   439
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   440
>>> figure(1)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   441
>>> plot(x, sin(x))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   442
>>> figure(2)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   443
>>> plot(x, tanh(x))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   444
>>> figure(1)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   445
>>> title('Easy as 1,2,3')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   446
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   447
    
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   448
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   449
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   450
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   451
\begin{frame}[fragile]
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   452
    \frametitle{\typ{pylab} in Python scripts}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   453
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   454
import pylab
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   455
x = pylab.linspace(0, 20, 1000)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   456
pylab.plot(x, pylab.sin(x))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   457
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   458
# Can also use:
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   459
from pylab import linspace, sin, plot
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   460
\end{lstlisting}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   461
\inctime{10}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   462
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   463
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   464
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   465
\subsection{Types of Plots}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   466
\begin{frame}[fragile]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   467
  \frametitle{X-Y plot}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   468
  \begin{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   469
    \column{0.5\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   470
    \hspace*{-0.5in}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   471
    \includegraphics[height=2in, interpolate=true]{data/xyplot}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   472
    \column{0.45\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   473
    \begin{block}{Example code}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   474
    \tiny
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   475
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   476
t1 = arange(0.0, 5.0, 0.1)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   477
t2 = arange(0.0, 5.0, 0.02)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   478
t3 = arange(0.0, 2.0, 0.01)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   479
subplot(211)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   480
plot(t1, cos(2*pi*t1)*exp(-t1), 'bo', 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   481
     t2, cos(2*pi*t2)*exp(-t2), 'k')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   482
grid(True)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   483
title('A tale of 2 subplots')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   484
ylabel('Damped')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   485
subplot(212)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   486
plot(t3, cos(2*pi*t3), 'r--')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   487
grid(True)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   488
xlabel('time (s)')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   489
ylabel('Undamped')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   490
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   491
    \end{block}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   492
  \end{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   493
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   494
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   495
\begin{frame}[fragile] \frametitle{Semi-log and log-log plots}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   496
  \begin{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   497
    \column{0.5\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   498
    \hspace*{-0.5in}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   499
  \includegraphics[height=2in, interpolate=true]{data/log}  
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   500
    \column{0.45\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   501
    \begin{block}{Example code}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   502
    \tiny
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   503
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   504
dt = 0.01
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   505
t = arange(dt, 20.0, dt)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   506
subplot(311)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   507
semilogy(t, exp(-t/5.0))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   508
ylabel('semilogy')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   509
grid(True)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   510
subplot(312)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   511
semilogx(t, sin(2*pi*t))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   512
ylabel('semilogx')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   513
grid(True)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   514
# minor grid on too
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   515
gca().xaxis.grid(True, which='minor')  
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   516
subplot(313)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   517
loglog(t, 20*exp(-t/10.0), basex=4)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   518
grid(True)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   519
ylabel('loglog base 4 on x')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   520
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   521
  \end{block}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   522
\end{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   523
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   524
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   525
\begin{frame}[fragile] \frametitle{Errorbar}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   526
  \begin{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   527
    \column{0.5\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   528
    \hspace*{-0.5in}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   529
  \includegraphics[height=2in, interpolate=true]{data/errorbar}  
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   530
    \column{0.45\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   531
    \begin{block}{Example code}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   532
    \tiny
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   533
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   534
t = arange(0.1, 4, 0.1)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   535
s = exp(-t)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   536
e = 0.1*abs(randn(len(s)))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   537
f = 0.1*abs(randn(len(s)))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   538
g = 2*e
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   539
h = 2*f
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   540
errorbar(t, s, [e,g], f, fmt='o')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   541
xlabel('Distance (m)')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   542
ylabel('Height (m)')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   543
title('Mean and standard error '\
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   544
      'as a function of distance')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   545
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   546
  \end{block}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   547
\end{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   548
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   549
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   550
\begin{frame}[fragile] \frametitle{Histogram}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   551
  \begin{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   552
    \column{0.5\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   553
    \hspace*{-0.5in}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   554
  \includegraphics[height=2in, interpolate=true]{data/histogram}  
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   555
    \column{0.45\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   556
    \begin{block}{Example code}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   557
    \tiny
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   558
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   559
mu, sigma = 100, 15
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   560
x = mu + sigma*randn(10000)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   561
# the histogram of the data
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   562
n, bins, patches = hist(x, 100, normed=1)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   563
# add a 'best fit' line
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   564
y = normpdf( bins, mu, sigma)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   565
l = plot(bins, y, 'r--', linewidth=2)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   566
xlim(40, 160)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   567
xlabel('Smarts')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   568
ylabel('P')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   569
title(r'$\rm{IQ:}\/ \mu=100,\/ \sigma=15$')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   570
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   571
  \end{block}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   572
\end{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   573
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   574
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   575
\begin{frame}[fragile] \frametitle{Bar charts}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   576
  \begin{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   577
    \column{0.5\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   578
    \hspace*{-0.5in}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   579
  \includegraphics[height=2in, interpolate=true]{data/barchart}  
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   580
    \column{0.45\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   581
    \begin{block}{Example code}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   582
    \tiny
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   583
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   584
N = 5
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   585
menMeans = (20, 35, 30, 35, 27)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   586
menStd =   ( 2,  3,  4,  1,  2)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   587
# the x locations for the groups
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   588
ind = arange(N) 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   589
# the width of the bars
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   590
width = 0.35       
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   591
p1 = bar(ind, menMeans, width, 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   592
         color='r', yerr=menStd)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   593
womenMeans = (25, 32, 34, 20, 25)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   594
womenStd =   ( 3,  5,  2,  3,  3)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   595
p2 = bar(ind+width, womenMeans, width, 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   596
         color='y', yerr=womenStd)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   597
ylabel('Scores')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   598
title('Scores by group and gender')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   599
xticks(ind+width, 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   600
       ('G1', 'G2', 'G3', 'G4', 'G5'))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   601
xlim(-width,len(ind))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   602
yticks(arange(0,41,10))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   603
legend((p1[0], p2[0]), 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   604
       ('Men', 'Women'), shadow=True)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   605
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   606
  \end{block}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   607
\end{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   608
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   609
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   610
\begin{frame}[fragile] \frametitle{Pie charts}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   611
  \begin{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   612
    \column{0.5\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   613
    \hspace*{-0.4in}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   614
  \includegraphics[height=2.0in, interpolate=true]{data/piechart}  
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   615
    \column{0.45\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   616
    \begin{block}{Example code}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   617
    \tiny
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   618
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   619
# make a square figure and axes
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   620
figure(1, figsize=(8,8))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   621
ax = axes([0.1, 0.1, 0.8, 0.8])
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   622
labels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   623
fracs = [15,30,45, 10]
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   624
explode=(0, 0.05, 0, 0)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   625
pie(fracs, explode=explode, labels=labels, 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   626
    autopct='%1.1f%%', shadow=True)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   627
title('Raining Hogs and Dogs', 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   628
      bbox={'facecolor':'0.8', 'pad':5})
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   629
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   630
  \end{block}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   631
\end{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   632
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   633
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   634
\begin{frame}[fragile] \frametitle{Scatter plots}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   635
  \begin{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   636
    \column{0.5\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   637
    \hspace*{-0.4in}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   638
  \includegraphics[height=2in, interpolate=true]{data/scatter}  
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   639
    \column{0.45\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   640
    \begin{block}{Example code}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   641
    \tiny
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   642
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   643
N = 30
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   644
x = 0.9*rand(N)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   645
y = 0.9*rand(N)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   646
# 0 to 10 point radiuses
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   647
area = pi*(10 * rand(N))**2 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   648
volume = 400 + rand(N)*450
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   649
scatter(x,y,s=area, marker='o', c=volume, 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   650
        alpha=0.75)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   651
xlabel(r'$\Delta_i$', size='x-large')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   652
ylabel(r'$\Delta_{i+1}$', size='x-large')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   653
title(r'Volume and percent change')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   654
grid(True)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   655
colorbar()
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   656
savefig('scatter')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   657
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   658
  \end{block}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   659
\end{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   660
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   661
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   662
\begin{frame}[fragile] \frametitle{Polar}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   663
  \begin{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   664
    \column{0.5\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   665
    \hspace*{-0.5in}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   666
  \includegraphics[height=2in, interpolate=true]{data/polar}  
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   667
    \column{0.45\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   668
    \begin{block}{Example code}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   669
    \tiny
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   670
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   671
figure(figsize=(8,8))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   672
ax = axes([0.1, 0.1, 0.8, 0.8], 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   673
          polar=True, 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   674
          axisbg='#d5de9c')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   675
r = arange(0,1,0.001)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   676
theta = 2*2*pi*r
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   677
polar(theta, r, color='#ee8d18', lw=3)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   678
# the radius of the grid labels
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   679
setp(ax.thetagridlabels, y=1.075) 
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   680
title(r'$\theta=4\pi r$', fontsize=20)
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   681
\end{lstlisting}
4
e5047bcbb608 Moved Array Math, Creation slides around; Added time counters.
Puneeth Chaganti <punchagan@fossee.in>
parents: 3
diff changeset
   682
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   683
  \end{block}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   684
\end{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   685
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   686
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   687
\begin{frame}[fragile] \frametitle{Contours}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   688
  \begin{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   689
    \column{0.45\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   690
    \hspace*{-0.5in}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   691
  \includegraphics[height=2in, interpolate=true]{data/contour}  
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   692
    \column{0.525\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   693
    \begin{block}{Example code}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   694
    \tiny
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   695
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   696
x = arange(-3.0, 3.0, 0.025)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   697
y = arange(-2.0, 2.0, 0.025)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   698
X, Y = meshgrid(x, y)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   699
Z1 = bivariate_normal(X, Y, 1.0, 1.0, 0.0, 0.0)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   700
Z2 = bivariate_normal(X, Y, 1.5, 0.5, 1, 1)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   701
# difference of Gaussians
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   702
Z = 10.0 * (Z2 - Z1)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   703
im = imshow(Z, interpolation='bilinear', 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   704
            origin='lower',
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   705
            cmap=cm.gray, extent=(-3,3,-2,2))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   706
levels = arange(-1.2, 1.6, 0.2)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   707
# label every second level
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   708
clabel(CS, levels[1::2],  inline=1,
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   709
       fmt='%1.1f', fontsize=14)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   710
CS = contour(Z, levels,
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   711
             origin='lower',
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   712
             linewidths=2,
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   713
             extent=(-3,3,-2,2))
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   714
# make a colorbar for the contour lines
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   715
CB = colorbar(CS, shrink=0.8, extend='both')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   716
title('Lines with colorbar')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   717
hot(); flag()
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   718
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   719
  \end{block}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   720
\end{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   721
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   722
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   723
\begin{frame}[fragile] \frametitle{Velocity vectors}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   724
  \begin{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   725
    \column{0.5\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   726
    \hspace*{-0.5in}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   727
  \includegraphics[height=2in, interpolate=true]{data/quiver}  
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   728
    \column{0.45\textwidth}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   729
    \begin{block}{Example code}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   730
    \tiny
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   731
\begin{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   732
X,Y = meshgrid(arange(0,2*pi,.2),
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   733
               arange(0,2*pi,.2) )
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   734
U = cos(X)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   735
V = sin(Y)
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   736
Q = quiver(X[::3, ::3], Y[::3, ::3], 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   737
           U[::3, ::3], V[::3, ::3],
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   738
           color='r', units='x', 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   739
           linewidths=(2,), 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   740
           edgecolors=('k'), 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   741
           headaxislength=5 )
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   742
qk = quiverkey(Q, 0.5, 0.03, 1, '1 m/s', 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   743
               fontproperties=
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   744
               {'weight': 'bold'})
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   745
axis([-1, 7, -1, 7])
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   746
title('triangular head; scale '\
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   747
      'with x view; black edges')
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   748
\end{lstlisting}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   749
  \end{block}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   750
\end{columns}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   751
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   752
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   753
\begin{frame}[fragile] \frametitle{Maps}
8
41bdf277c755 Added legend() section.
Shantanu <shantanu@fossee.in>
parents: 7
diff changeset
   754
  \includegraphics[height=2.3in, interpolate=true]{data/plotmap}  
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   755
  \begin{center}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   756
    \tiny
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   757
    For details see \url{http://matplotlib.sourceforge.net/screenshots/plotmap.py}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   758
  \end{center}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   759
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   760
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   761
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   762
\begin{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   763
  \frametitle{More information}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   764
  \begin{itemize}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   765
  \item More information here: \url{http://matplotlib.sf.net}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   766
  \item \url{http://matplotlib.sf.net/tutorial.html}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   767
  \item \url{http://matplotlib.sf.net/screenshots.html}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   768
  \end{itemize}
66
523f788d2147 Minor edits to Day2 Session2.
Puneeth Chaganti <punchagan@fossee.in>
parents: 46
diff changeset
   769
\inctime{5}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   770
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   771
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   772
\begin{frame}
9
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   773
  \frametitle{Problem Set}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   774
  \begin{enumerate}
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   775
      \item Write a function that plots any regular n-gon given \typ{n}.
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   776
      \item Consider the logistic map, $f(x) = kx(1-x)$, plot it for
20
84458ebb6951 Modified numpy array parts.
Shantanu <shantanu@fossee.in>
parents: 12
diff changeset
   777
          $k=2.5, 3.5$ and $4$ in the same plot.
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   778
\end{enumerate}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   779
\end{frame}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   780
9
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   781
\begin{frame}[fragile] 
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   782
\frametitle{Problem Set}
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   783
  \begin{columns}
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   784
    \column{0.6\textwidth}
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   785
    \small{
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   786
    \begin{enumerate}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   787
      \item Consider the iteration $x_{n+1} = f(x_n)$ where $f(x) =
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   788
          kx(1-x)$.  Plot the successive iterates of this process.
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   789
      \item Plot this using a cobweb plot as follows:
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   790
          \begin{enumerate}
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   791
              \item Start at $(x_0, 0)$
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   792
              \item Draw line to $(x_i, f(x_i))$; 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   793
              \item Set $x_{i+1} = f(x_i)$
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   794
              \item Draw line to $(x_i, x_i)$
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   795
              \item Repeat from 2 for as long as you want 
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   796
          \end{enumerate}
9
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   797
    \end{enumerate}}
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   798
    \column{0.35\textwidth}
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   799
    \hspace*{-0.5in}
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   800
  \includegraphics[height=1.6in, interpolate=true]{data/cobweb}  
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   801
\end{columns}
2281002b579b Edited Problem Sets - Added cobweb plot; Removed Koch.
Puneeth Chaganti <punchagan@fossee.in>
parents: 6
diff changeset
   802
\inctime{20}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   803
\end{frame}
76
b24c2560f626 Added links.tex, compilation of various links.
Shantanu <shantanu@fossee.in>
parents: 66
diff changeset
   804
\begin{frame}{Summary}
b24c2560f626 Added links.tex, compilation of various links.
Shantanu <shantanu@fossee.in>
parents: 66
diff changeset
   805
  \begin{itemize}
b24c2560f626 Added links.tex, compilation of various links.
Shantanu <shantanu@fossee.in>
parents: 66
diff changeset
   806
  \item Basics of Numpy.
b24c2560f626 Added links.tex, compilation of various links.
Shantanu <shantanu@fossee.in>
parents: 66
diff changeset
   807
  \item Array operations.
b24c2560f626 Added links.tex, compilation of various links.
Shantanu <shantanu@fossee.in>
parents: 66
diff changeset
   808
  \item Plotting in 2D.
b24c2560f626 Added links.tex, compilation of various links.
Shantanu <shantanu@fossee.in>
parents: 66
diff changeset
   809
  \end{itemize}
b24c2560f626 Added links.tex, compilation of various links.
Shantanu <shantanu@fossee.in>
parents: 66
diff changeset
   810
\end{frame}
3
18a010e4caa0 Added day2 session1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   811
\end{document}