additional_ipython/script.rst
author Nishanth <nishanth@fossee.in>
Thu, 07 Oct 2010 14:21:53 +0530
changeset 234 2b88724a7ee0
child 271 bb4ed72f3ec6
permissions -rw-r--r--
Converted the additional_ipython script into new template form
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
234
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     1
.. Objectives
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     2
.. ----------
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     3
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     4
.. A - Students and teachers from Science and engineering backgrounds
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     5
   B - 
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     6
   C - 
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     7
   D - 
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     8
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     9
.. Prerequisites
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    10
.. -------------
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    11
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    12
..   1. Embellishing Plots
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    13
     
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    14
.. Author              : Nishanth Amuluru
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    15
   Internal Reviewer   : 
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    16
   External Reviewer   :
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    17
   Checklist OK?       : <put date stamp here, if OK> [2010-10-05]
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    18
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    19
Script
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    20
------
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    21
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    22
Hello friends and welcome to the tutorial on Additional Features of IPython
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    23
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    24
{{{ Show the slide containing title }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    25
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    26
{{{ Show the slide containing the outline slide }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    27
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    28
In this tutorial, we shall look at additional features of IPython that help us
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    29
to retreive the commands that we type on the interpreter and then save them
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    30
into a file and run it.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    31
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    32
Let us start ipython with pylab loaded, by typing
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    33
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    34
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    35
    $ ipython -pylab
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    36
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    37
on the terminal
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    38
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    39
{{{ shit to terminal and type ipython -pylab }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    40
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    41
We shall first make a plot and then view the history and save it.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    42
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    43
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    44
    x = linspace(-2*pi, 2*pi, 100)
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    45
    plot(x, xsinx(x))
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    46
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    47
xsin(x) is actually x * sin(x)
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    48
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    49
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    50
    plot(x, x*sin(x))
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    51
    plot(x, sin(x))
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    52
    xlabel("x")
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    53
    ylabel("$f(x)$")   
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    54
    title("x and xsin")
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    55
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    56
We now have the plot. Let us look at the commands that we have typed in. The
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    57
history can be retreived by using =%hist= command. Type
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    58
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    59
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    60
    %hist
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    61
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    62
As you can see, it displays a list of recent commands that we typed. Every
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    63
command has a number in front, to specify in which order and when it was typed.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    64
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    65
Please note that there is a % sign before the hist command. This implies that 
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    66
%hist is a command that is specific to IPython and not available in vannila 
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    67
Python interpreter. These type of commands are called as magic commands.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    68
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    69
Also note that, the =%hist= itself is a command and is displayed as the most
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    70
recent command. This implies that anything we type in is stored as history, 
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    71
irrespective of whether it is command or an error or IPython magic command.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    72
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    73
If we want only the recent 5 to be displayed, we pass the number as an argument
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    74
to =%hist= command. Hence
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    75
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    76
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    77
    %hist 5 
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    78
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    79
displays the recent 5 commands, inclusive of the =%hist= command.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    80
The default number is 40.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    81
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    82
{{{ Pause here and try out the following exercises }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    83
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    84
%% 1 %% Read through the %hist documenatation and find out how can we list all
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    85
        the commands between 5 and 10
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    86
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    87
{{{ continue from paused state }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    88
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    89
As we can see from =%hist= documentation,
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    90
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    91
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    92
    %hist 5 10
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    93
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    94
displays the commands from 5 to 10
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    95
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    96
Now that we have the history, we would like to save the required line of code
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    97
from history. This is possible by using the =%save= command.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    98
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    99
Before we do that, let us first look at history and identify what lines of code
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   100
we require.Type
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   101
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   102
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   103
    %hist
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   104
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   105
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   106
{{{ point to the lines }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   107
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   108
The first command is linspace. But second command is a command that gave us an
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   109
error. Hence we do not need seconf. The commands from third to sixth are 
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   110
required. The seventh command although is correct, we do not need it since we
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   111
are setting the title correctly in the eigthth command.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   112
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   113
So we need first third to sixth and the eigthth command for our program.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   114
Hence the syntax of =%save= is
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   115
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   116
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   117
    %save /home/fossee/plot_script.py 1 3-6 8
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   118
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   119
{{{ point to the output of the command }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   120
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   121
The command saves first and then third to sixth and eighth lines of code into
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   122
the specified file.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   123
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   124
The first argument to %save is the path of file to save the commands and the
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   125
arguments there after are the commands to be saved in the given order.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   126
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   127
{{{ goto the file and open it and show it }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   128
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   129
{{{ Pause here and try out the following exercises }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   130
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   131
%% 2 %% change the label on y-axis to "y" and save the lines of code
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   132
        accordingly
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   133
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   134
{{{ continue from paused state }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   135
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   136
we use the command =ylabel= on interpreter as
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   137
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   138
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   139
    ylabel("y")
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   140
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   141
and then do
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   142
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   143
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   144
    %save /home/fossee/example_plot.py 1 3-6 10
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   145
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   146
Now that we have the required lines of code in a file, let us learn how to run
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   147
the file as a python script.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   148
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   149
We use the IPython magic command =%run= to do this. Type
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   150
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   151
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   152
   %run -i /home/fossee/plot_script.py
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   153
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   154
The script runs but we do not see the plot. This happens because we are running
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   155
a script and we are not in interactive mode anymore.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   156
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   157
Hence on your terminal type
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   158
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   159
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   160
    show()
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   161
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   162
to show the plot.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   163
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   164
{{{ Pause here and try out the following exercises }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   165
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   166
%% 3 %% Use %hist and %save and create a script that has show in it and run it
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   167
        to produce and show the plot.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   168
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   169
{{{ continue from paused state }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   170
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   171
We first look at the history using
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   172
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   173
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   174
    %hist 20
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   175
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   176
Then save the script using
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   177
::
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   178
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   179
    %save /home/fossee/show_included.py 1 3-6 8 10 13
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   180
    %run -i /home/fossee/show_included.py
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   181
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   182
We get the desired plot.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   183
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   184
The reason for including a -i after run is to tell the interpreter that if any
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   185
name is not found in script, search for it in the interpreter. Hence all these
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   186
sin, plot, pi and show which are not available in script, are taken from the
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   187
interpreter and used to run the script.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   188
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   189
{{{ Pause here and try out the following exercises }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   190
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   191
%% 4 %% Run the script without using the -i option. Do you find any difference?
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   192
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   193
{{{ continue from paused state }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   194
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   195
We see that it raises nameerror saying the name linspace is not found.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   196
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   197
{{{ Show summary slide }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   198
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   199
This brings us to the end of the tutorial.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   200
we have looked at 
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   201
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   202
 * Retreiving history using =%hist= command
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   203
 * Vieweing only a part of history by passing an argument to %hist
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   204
 * saving the required lines of code in required order using %save
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   205
 * using %run -i command to run the saved script
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   206
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   207
{{{ Show the "sponsored by FOSSEE" slide }}}
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   208
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   209
#[Nishanth]: Will add this line after all of us fix on one.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   210
This tutorial was created as a part of FOSSEE project, NME ICT, MHRD India
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   211
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   212
Hope you have enjoyed and found it useful.
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   213
Thankyou
2b88724a7ee0 Converted the additional_ipython script into new template form
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   214