summaryrefslogtreecommitdiff
path: root/multiple-plots
diff options
context:
space:
mode:
authorPuneeth Chaganti2010-12-01 16:51:35 +0530
committerPuneeth Chaganti2010-12-01 16:51:35 +0530
commitf3a34dfb4e879f3eb7274704f44546aac4add88f (patch)
tree1cb0a8cc5dbd5ee2b374350915ed2addfa0fb447 /multiple-plots
parent347866ed0d29db61ee062563b1e1616cfb85588c (diff)
downloadst-scripts-f3a34dfb4e879f3eb7274704f44546aac4add88f.tar.gz
st-scripts-f3a34dfb4e879f3eb7274704f44546aac4add88f.tar.bz2
st-scripts-f3a34dfb4e879f3eb7274704f44546aac4add88f.zip
Renamed all LOs to match with their names in progress.org.
Diffstat (limited to 'multiple-plots')
-rw-r--r--multiple-plots/script.rst386
-rw-r--r--multiple-plots/slides.org123
-rw-r--r--multiple-plots/slides.tex106
3 files changed, 0 insertions, 615 deletions
diff --git a/multiple-plots/script.rst b/multiple-plots/script.rst
deleted file mode 100644
index 0271b9a..0000000
--- a/multiple-plots/script.rst
+++ /dev/null
@@ -1,386 +0,0 @@
-.. Objectives
-.. ----------
-
-.. * How to draw multiple plots which are overlaid
-.. * the figure command
-.. * the legend command
-.. * how to switch between the plots and perform some operations on each
-.. of them like saving the plots and
-.. * creating and switching between subplots
-
-
-.. Prerequisites
-.. -------------
-
-.. 1. using the plot command interactively
-.. 2. embellishing a plot
-.. 3. saving plots
-
-.. Author : Madhu
- Internal Reviewer 1 : [potential reviewer: Puneeth]
- Internal Reviewer 2 : Nishanth
- External Reviewer :
- Language Reviewer : Bhanukiran
- Checklist OK? : <, not OK> []
-
-
-Script
-------
-
-{{{ Show the slide containing the title }}}
-
-Hello friends. Welcome to this spoken tutorial on Multiple plots.
-
-{{{ Show the slide containing the outline }}}
-
-In this tutorial, we will learn how to draw more than one plot, how to
-add legends to each plot to indicate what each plot represents. We
-will also learn how to switch between the plots and create multiple
-plots with different regular axes which are also called as subplots.
-
-.. #[Nishanth]: See diff - edited a grammatical mistake
-.. #[Madhu: Done]
-
-{{{ Shift to terminal and start ipython -pylab }}}
-
-To begin with let us start ipython with pylab, by typing::
-
- ipython -pylab
-
-on the terminal
-
-Let us first create set of points for our plot. For this we will use
-the command called linspace::
-
- x = linspace(0, 50, 10)
-
-linspace command creates 10 points in the interval between 0 and 50
-both inclusive. We assign these values to a variable called x.
-
-.. #[Nishanth]: pre requisite for this LO is basic plotting which
- covers linspace and plot. So you may not need to
- specify all that again. But not a problem if it is
- there also.
-.. #[Madhu: Since I thought the LOs are disconnected, I thought it is
- better to give a very short intro to it]
-
-Now let us draw a plot simple sine plot using these points::
-
- plot(x, sin(x))
-
-This should give us a nice sine plot.
-
-{{{ Switch to the plot window }}}
-
-Oh! wait! Is that a nice sine plot? Does a sine plot actually look
-like that? We know that a sine plot is a smooth curve. Is it not? What
-really caused this?
-
-.. #[Nishanth]: See diff
-.. #[Madhu: Done]
-
-{{{ pause for a while }}}
-
-A small investigation on linspace tells us that we chose too few
-points in a large interval between 0 and 50 for the curve to be
-smooth. This should also indicate that the plot command actually plots
-the set of points given by x and sin(x) and it doesn't plot the
-analytical function itself i.e. it plots the points given by
-Analytical functions. So now let us use linspace again to get 500
-points between 0 and 100 and draw the sine plot
-
-.. #[Nishanth]: Here specify that when we do plot(x, sin(x)
- it is actually plotting two sets of points
- and not analytical functions. Hence the sharp
- curve.
-.. #[Madhu: Incorporated]
-
-{{{ Switch to ipython andtype }}} ::
-
- y = linspace(0, 50, 500)
- plot(y, sin(y))
-
-{{{ Change to the plot window }}}
-
-Now we see what we remember as a sine plot. A smooth curve. If we
-carefully notice we also have two plots now one overlaid upon
-another. In pylab, by default all the plots are overlaid.
-
-Since we have two plots now overlaid upon each other we would like to
-have a way to indicate what each plot represents to distinguish
-between them. This is accomplished using legends. Equivalently, the
-legend command does this for us
-
-{{{ Switch to ipython }}}::
-
- legend(['sin(x)', 'cos(x)'])
-
-.. #[Nishanth]: This legend may go up in the script. May be before
- introducing the figure command itself.
-.. #[Madhu: brought up]
-
-The legend command takes a single list of parameters where each
-parameter is the text indicating the plots in the order of their
-serial number.
-
-{{{ Switch to plot window }}}
-
-Now we can see the legends being displayed for the respective sine and
-cosine plots on the plot area.
-
-We have learnt quite a lot of things now, so let us take up an
-exercise problem.
-
-%% 1 %% Draw two plots overlaid upon each other, with the first plot
- being a parabola of the form y = 4(x ^ 2) and the second being a
- straight line of the form y = 2x + 3 in the interval -5 to 5. Use
- colors to differentiate between the plots and use legends to
- indicate what each plot is doing.
-
-{{{ pause for a while and continue from paused state }}}
-
-We can obtain the two plots in different colors using the following
-commands::
-
- x = linspace(-5, 5, 100)
- plot(x, 4 * (x * x), 'b')
- plot(x, (2 * x) + 3, 'g')
-
-Now we can use the legend command as::
-
- legend(['Parabola', 'Straight Line'])
-
-Or we can also just give the equations of the plot::
-
- legend(['y = 4(x ^ 2)', 'y = 2x + 3'])
-
-We now know how to draw multiple plots and use legends to indicate
-which plot represents what function, but we would like to have more
-control over the plots we draw. Like switch between them, perform some
-operations or labelling on them individually and so on. Let us see how
-to accomplish this. Before we move on, let us clear our screen.
-
-{{{ Switch to ipython }}}::
-
- clf()
-
-To accomplishing more control over individual plots we use the figure
-command::
-
- x = linspace(0, 50, 500)
- figure(1)
- plot(x, sin(x), 'b')
- figure(2)
- plot(x, cos(x), 'g')
-
-{{{ Switch to plot window }}}
-
-Now we have two plots, a sine plot and a cosine plot in two different
-figures.
-
-.. #[Nishanth]: figure(1) and figure(2) give two different plots.
- The remaining script moves on the fact that they
- give overlaid plots which is not the case.
- So clear the figure and plot cos and sin without
- introducing figure command. Then introduce legend
- and finish off the everything on legend.
- Then introduce figure command.
-
-.. #[Madhu: I have just moved up the text about legend command. I
- think that should take care of what you suggested. If there is
- some mistake with it, Punch please let me know in your next
- review.]
-
-{{{ Have both plot window and ipython side by side }}}
-
-The figure command takes an integer as an argument which is the serial
-number of the plot. This selects the corresponding plot. All the plot
-commands we run after this are applied to the selected plot. In this
-example figure 1 is the sine plot and figure 2 is the cosine plot. We
-can, for example, save each plot separately
-
-{{{ Switch to ipython }}}::
-
- savefig('/home/user/cosine.png')
- figure(1)
- title('sin(y)')
- savefig('/home/user/sine.png')
-
-{{{ Have both plot window and ipython side by side }}}
-
-We also titled our first plot as 'sin(y)' which we did not do for
-the second plot.
-
-Let us attempt another exercise problem
-
-%% 2 %% Draw a line of the form y = x as one figure and another line
- of the form y = 2x + 3. Switch back to the first figure, annotate
- the x and y intercepts. Now switch to the second figure and
- annotate its x and y intercepts. Save each of them.
-
-{{{ Pause for a while and continue from the paused state }}}
-
-To solve this problem we should first create the first figure using
-the figure command. Before that, let us first run clf command to make
-sure all the previous plots are cleared::
-
- clf()
- figure(1)
- x = linspace(-5, 5, 100)
- plot(x, x)
-
-Now we can use figure command to create second plotting area and plot
-the figure::
-
- figure(2)
- plot(x, ((2 * x) + 3))
-
-Now to switch between the figures we can use figure command. So let us
-switch to figure 1. We are asked to annotate x and y intercepts of the
-figure 1 but since figure 1 passes through origin we will have to
-annotate the origin. We will annotate the intercepts for the second
-figure and save them as follows::
-
- figure(1)
- annotate('Origin', xy=(0.0, 0.0)
- figure(2)
- annotate('x-intercept', xy=(0, 3))
- annotate('y-intercept', xy=(0, -1.5))
- savefig('/home/fossee/plot2.png')
- figure(1)
- savefig('/home/fossee/plot1.png')
-
-At times we run into situations where we want to compare two plots and
-in such cases we want to draw both the plots in the same plotting
-area. The situation is such that the two plots have different regular
-axes which means we cannot draw overlaid plots. In such cases we can
-draw subplots.
-
-We use subplot command to accomplish this
-
-{{{ Switch to ipython }}}::
-
- subplot(2, 1, 1)
-
-subplot command takes three arguments, the first being the number of
-rows of subplots that must be created,
-
-{{{ Have both plot window and ipython side by side }}}
-
-in this case we have 2 as the first argument so it spilts the plotting area horizontally for
-two subplots. The second argument specifies the number of coloumns of
-subplots that must be created. We passed 1 as the argument so the
-plotting area won't be split vertically and the last argument
-specifies what subplot must be created now in the order of the serial
-number. In this case we passed 1 as the argument, so the first subplot
-that is top half is created. If we execute the subplot command as
-
-{{{ Switch to ipython }}}::
-
- subplot(2, 1, 2)
-
-{{{ Switch to plot window }}}
-
-The lower subplot is created. Now we can draw plots in each of the
-subplot area using the plot command.
-
-{{{ Switch to ipython }}}::
-
- x = linspace(0, 50, 500)
- plot(x, cos(x))
- subplot(2, 1, 1)
- y = linspace(0, 5, 100)
- plot(y, y ** 2)
-
-{{{ Have both plot window and ipython side by side }}}
-
-This created two plots one in each of the subplot area. The top
-subplot holds a parabola and the bottom subplot holds a cosine
-curve.
-
-As seen here we can use subplot command to switch between the subplot
-as well, but we have to use the same arguments as we used to create
-that subplot, otherwise the previous subplot at that place will be
-automatically erased. It is clear from the two subplots that both have
-different regular axes. For the cosine plot x-axis varies from 0 to
-100 and y-axis varies from 0 to 1 where as for the parabolic plot the
-x-axis varies from 0 to 10 and y-axis varies from 0 to 100
-
-.. #[Nishanth]: stress on the similarity between subplot and figure
- commands
-
-.. #[Madhu: I think they are not really similar. Trying to bring in
- the similarity will confuse people I think.]
-
-%% 3 %% We know that the Pressure, Volume and Temperatures are held by
-the equation PV = nRT where nR is a constant. Let us assume nR = .01
-Joules/Kelvin and T = 200K. V can be in the range from 21cc to
-100cc. Draw two different plots as subplots, one being the Pressure
-versus Volume plot and the other being Pressure versus Temparature
-plot.
-
-{{{ Pause for a while and continue }}}
-
-To start with, we have been given the range of Volume using which we
-can define the variable V::
-
- V = linspace(21, 100, 500)
-
-Now we can create first subplot and draw Pressure versus Volume graph
-using this V. We know that nRT is a constant which is equal to 2.0
-since nR = 0.01 Joules/Kelvin and T = 200 Kelvin::
-
- subplot(2, 1, 1)
- plot(V, 2.0/V)
-
-Now we can create the second subplot and draw the Pressure versus
-Temparature plot as follows::
-
- subplot(2, 1, 2)
- plot(200, 2.0/V)
-
-Unfortunately we have an error now, telling x and y dimensions don't
-match. This is because our V contains a set of values as returned by
-linspace and hence 2.0/V which is the pressure also contains a set of
-values. But the first argument to the plot command is a single
-value. So to plot this data we need to create as many points as there
-are in Pressure or Volume data for Temperature too, all having the
-same value. This can be accomplished using::
-
- T = linspace(200, 200, 500)
-
-We now have 500 values in T each with the value 200 Kelvin. Plotting
-this data we get the required plot::
-
- plot(T, 2.0/V)
-
-It is left as a homework to label both X and Y axes for each of the
-two subplots.
-
-{{{ Show summary slide }}}
-
-.. #[Nishanth]: Exercises are missing in the script
- one exercise for overlaid plot and legend
- one for figure command
- one for subplot must do
-
-This brings us to the end of another session. In this tutorial session
-we learnt
-
- * How to draw multiple plots which are overlaid
- * the figure command
- * the legend command
- * how to switch between the plots and perform some operations on each
- of them like saving the plots and
- * creating and switching between subplots
-
-.. #[Nishanth]: legend command can be told right after overlaid plots
-.. #[Madhu: Incorporated]
-
-{{{ Show the "sponsored by FOSSEE" slide }}}
-
-This tutorial was created as a part of FOSSEE project, NME ICT, MHRD India
-
-Hope you have enjoyed and found it useful.
-Thank you!
-
diff --git a/multiple-plots/slides.org b/multiple-plots/slides.org
deleted file mode 100644
index 5d2ce93..0000000
--- a/multiple-plots/slides.org
+++ /dev/null
@@ -1,123 +0,0 @@
-#+LaTeX_CLASS: beamer
-#+LaTeX_CLASS_OPTIONS: [presentation]
-#+BEAMER_FRAME_LEVEL: 1
-
-#+BEAMER_HEADER_EXTRA: \usetheme{Warsaw}\usecolortheme{default}\useoutertheme{infolines}\setbeamercovered{transparent}
-#+COLUMNS: %45ITEM %10BEAMER_env(Env) %10BEAMER_envargs(Env Args) %4BEAMER_col(Col) %8BEAMER_extra(Extra)
-#+PROPERTY: BEAMER_col_ALL 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 :ETC
-
-#+LaTeX_CLASS: beamer
-#+LaTeX_CLASS_OPTIONS: [presentation]
-
-#+LaTeX_HEADER: \usepackage[english]{babel} \usepackage{ae,aecompl}
-#+LaTeX_HEADER: \usepackage{mathpazo,courier,euler} \usepackage[scaled=.95]{helvet}
-
-#+LaTeX_HEADER: \usepackage{listings}
-
-#+LaTeX_HEADER:\lstset{language=Python, basicstyle=\ttfamily\bfseries,
-#+LaTeX_HEADER: commentstyle=\color{red}\itshape, stringstyle=\color{darkgreen},
-#+LaTeX_HEADER: showstringspaces=false, keywordstyle=\color{blue}\bfseries}
-
-#+TITLE: Accessing parts of arrays
-#+AUTHOR: FOSSEE
-#+EMAIL:
-#+DATE:
-
-#+DESCRIPTION:
-#+KEYWORDS:
-#+LANGUAGE: en
-#+OPTIONS: H:3 num:nil toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
-#+OPTIONS: TeX:t LaTeX:nil skip:nil d:nil todo:nil pri:nil tags:not-in-toc
-
-* Outline
- - Manipulating one and multi dimensional arrays
- - Access and change individual elements
- - Access and change rows and columns
- - Slicing and striding on arrays to access chunks
- - Read images into arrays and manipulations
-* Sample Arrays
- #+begin_src python
- In []: A = array([12, 23, 34, 45, 56])
-
- In []: C = array([[11, 12, 13, 14, 15],
- [21, 22, 23, 24, 25],
- [31, 32, 33, 34, 35],
- [41, 42, 43, 44, 45],
- [51, 52, 53, 54, 55]])
-
- #+end_src
-* Question 1
- Change the last column of ~C~ to zeroes.
-* Solution 1
- #+begin_src python
- In []: C[:, -1] = 0
- #+end_src
-* Question 2
- Change ~A~ to ~[11, 12, 13, 14, 15]~.
-* Solution 2
- #+begin_src python
- In []: A[:] = [11, 12, 13, 14, 15]
- #+end_src
-* squares.png
- #+begin_latex
- \begin{center}
- \includegraphics[scale=0.6]{squares}
- \end{center}
- #+end_latex
-* Question 3
- - obtain ~[22, 23]~ from ~C~.
- - obtain ~[11, 21, 31, 41]~ from ~C~.
- - obtain ~[21, 31, 41, 0]~.
-* Solution 3
- #+begin_src python
- In []: C[1, 1:3]
- In []: C[0:4, 0]
- In []: C[1:5, 0]
- #+end_src
-* Question 4
- Obtain ~[[23, 24], [33, -34]]~ from ~C~
-* Solution 4
- #+begin_src python
- In []: C[1:3, 2:4]
- #+end_src
-* Question 5
- Obtain the square in the center of the image
-* Solution 5
- #+begin_src python
- In []: imshow(I[75:225, 75:225])
- #+end_src
-* Question 6
- Obtain the following
- #+begin_src python
- [[12, 0], [42, 0]]
- [[12, 13, 14], [0, 0, 0]]
- #+end_src
-
-* Solution 6
- #+begin_src python
- In []: C[::3, 1::3]
- In []: C[::4, 1:4]
- #+end_src
-* Summary
- You should now be able to --
- - Manipulate 1D \& Multi dimensional arrays
- - Access and change individual elements
- - Access and change rows and columns
- - Slice and stride on arrays
- - Read images into arrays and manipulate them.
-* Thank you!
-#+begin_latex
- \begin{block}{}
- \begin{center}
- This spoken tutorial has been produced by the
- \textcolor{blue}{FOSSEE} team, which is funded by the
- \end{center}
- \begin{center}
- \textcolor{blue}{National Mission on Education through \\
- Information \& Communication Technology \\
- MHRD, Govt. of India}.
- \end{center}
- \end{block}
-#+end_latex
-
-
diff --git a/multiple-plots/slides.tex b/multiple-plots/slides.tex
deleted file mode 100644
index df1462c..0000000
--- a/multiple-plots/slides.tex
+++ /dev/null
@@ -1,106 +0,0 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%Tutorial slides on Python.
-%
-% Author: FOSSEE
-% Copyright (c) 2009, FOSSEE, IIT Bombay
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\documentclass[14pt,compress]{beamer}
-%\documentclass[draft]{beamer}
-%\documentclass[compress,handout]{beamer}
-%\usepackage{pgfpages}
-%\pgfpagesuselayout{2 on 1}[a4paper,border shrink=5mm]
-
-% Modified from: generic-ornate-15min-45min.de.tex
-\mode<presentation>
-{
- \usetheme{Warsaw}
- \useoutertheme{infolines}
- \setbeamercovered{transparent}
-}
-
-\usepackage[english]{babel}
-\usepackage[latin1]{inputenc}
-%\usepackage{times}
-\usepackage[T1]{fontenc}
-
-\usepackage{ae,aecompl}
-\usepackage{mathpazo,courier,euler}
-\usepackage[scaled=.95]{helvet}
-
-\definecolor{darkgreen}{rgb}{0,0.5,0}
-
-\usepackage{listings}
-\lstset{language=Python,
- basicstyle=\ttfamily\bfseries,
- commentstyle=\color{red}\itshape,
- stringstyle=\color{darkgreen},
- showstringspaces=false,
- keywordstyle=\color{blue}\bfseries}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Macros
-\setbeamercolor{emphbar}{bg=blue!20, fg=black}
-\newcommand{\emphbar}[1]
-{\begin{beamercolorbox}[rounded=true]{emphbar}
- {#1}
- \end{beamercolorbox}
-}
-\newcounter{time}
-\setcounter{time}{0}
-\newcommand{\inctime}[1]{\addtocounter{time}{#1}{\tiny \thetime\ m}}
-
-\newcommand{\typ}[1]{\lstinline{#1}}
-
-\newcommand{\kwrd}[1]{ \texttt{\textbf{\color{blue}{#1}}} }
-
-% Title page
-\title{Your Title Here}
-
-\author[FOSSEE] {FOSSEE}
-
-\institute[IIT Bombay] {Department of Aerospace Engineering\\IIT Bombay}
-\date{}
-
-% DOCUMENT STARTS
-\begin{document}
-
-\begin{frame}
- \maketitle
-\end{frame}
-
-\begin{frame}[fragile]
- \frametitle{Outline}
- \begin{itemize}
- \item
- \end{itemize}
-\end{frame}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% All other slides here. %%
-%% The same slides will be used in a classroom setting. %%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\begin{frame}[fragile]
- \frametitle{Summary}
- \begin{itemize}
- \item
- \end{itemize}
-\end{frame}
-
-\begin{frame}
- \frametitle{Thank you!}
- \begin{block}{}
- \begin{center}
- This spoken tutorial has been produced by the
- \textcolor{blue}{FOSSEE} team, which is funded by the
- \end{center}
- \begin{center}
- \textcolor{blue}{National Mission on Education through \\
- Information \& Communication Technology \\
- MHRD, Govt. of India}.
- \end{center}
- \end{block}
-\end{frame}
-
-\end{document}