oscopy_ui: use save_config_path instead of load_first_config
[oscopy/ivan.git] / README
blob90ae33e3d9503e48d4402e61cb6b34d2d456f8f2
1 oscopy -- An interactive program to view electrical results
3 ABOUT OSCOPY
4 ------------
5 This is oscopy, a kind of oscilloscope in python, to view 2D electrical
6 simulation or measurement results.
7 It is designed to easily add new input data file formats and new types of plots.
8 Features highlight:
9   * Post-processing: math expressions, fft, diffs
10   * View, examine: multiple windows, cursors
11   * Data import: gnucap
12   * Data export: gnucap, pictures
13   * Scripting
14   * D-Bus support: update recursively signals
15   * Run netlister and simulator
17 There are two interfaces:
18   * Command-line interface (CLI): oscopy_app.py
19   * Graphical user interface (GUI) fully integrating the CLI: oscopy_ui.py
20 Scripting is supported in both application, although in the GUI some commands are disabled since plots are displayed dynamically.
22 Support for mathematic with signals is implemented. Supported functions:
23 trig, sqrt, log... 
24 Support for (i)fft: fft(v1) + fft(v2) is possible, but please avoid things like ifft(fft(v1) + fft(v2))
25 First order diff is supported: diff(v1) or diff(v1, 1)
26 Access to X axis data is provided through Time and Freq, e.g. sin(Time(vsqu)*1e6)
28 In each plot window, horizontal and vertical cursors can be toggled by using keys '1', '2', '3' and '4'.
30 GETTING THE SOURCE
31 ------------------
32 The source can be downloaded from repo.cz:
33 http://repo.or.cz/w/oscopy.git
35 To download it:
36 $ git clone git://repo.or.cz/oscopy.git 
38 BUILDING FROM SOURCE
39 --------------------
40 Oscopy can work out of the box when downloaded, but it supports also installing on the system using autotools.
41 In the latter case:
42 $ ./autogen.sh && ./configure && make
44 Dependencies:
45   * python
46   * python-numpy
47   * python-matplotlib
48   * python-dbus
50 INSTALLING
51 ----------
52 If you want to install oscopy on a system:
53 # ./autogen.sh && ./configure && make install
54 Note that you might need to update your PYTHONPATH, for example if you install it in ${HOME}/geda, to launch oscopy you might need the following line:
55 PYTHONPATH=${HOME}/geda/lib/python2.5/site-packages:$PYTHONPATH
57 QUICKSTART
58 ----------
59 To run the program, just do ./oscopy_app or ./oscopy_ui.
61 To get any info on available commands, type 'help'.
63 A sample circuit is provided for demonstration purposes.
64 From oscopy directory, prepare the demo circuit files
65 $ cd demo
66 $ gnetlist -g spice-sdb -s -o demo.net demo.sch
67 $ gnucap -b demo.net
68 $ cd ..
70 Using the CLI:
71 $ ./oscopy_app.py -b demo/demo.oscopy
73 Using the GUI:
74 $ ./oscopy_ui.py &
75 then in the terminal window:
76 oscopy> exec demo/demo.oscopy
78 COMMAND REFERENCE
79 -----------------
80 add SIG [, SIG [, SIG]...]
81    Add a graph to the current figure
83 create [SIG [, SIG [, SIG]...]]
84    Create a new figure, set_ it as current, add the signals
86 delete GRAPH#
87    Delete a graph from the current figure
89 destroy FIG#
90    Destroy a figure
92 echo [TEXT]
93    Print text
95 exec FILENAME
96    execute commands from file
98 factors X, Y
99    set the scaling factor of the graph (in power of ten)
100    use 'auto' for automatic scaling factor
101    e.g. factor -3, 6 set the scale factor at 1e-3 and 10e6
103 figlist
104    Print the list of figures
106 freeze SIG [, SIG [, SIG]...]
107    Do not consider signal for subsequent updates
109 insert SIG [, SIG [, SIG]...]
110    Insert a list of signals into the current graph
112 layout horiz|vert|quad
113    Define the layout of the current figure
115 math destsig=mathexpr
116    Define a new signal destsig using mathematical expression
117    destsig=mathexpr is also valid.
119 mode MODE
120    Set the type of the current graph of the current figure
121    Available modes :
122    lin      Linear graph
124 pause
125    Wait for the user to press enter
127 plot
128    Draw and show the figures (disabled in the GUI)
130 range [x|y min max]|[xmin xmax ymin ymax]|[reset]
131    Set the axis range of the current graph of the current figure
133 read DATAFILE
134    read signal file
136 remove SIG [, SIG [, SIG]...]
137    Delete a list of signals into from current graph
139 scale [lin|logx|logy|loglog]
140    Set the axis scale
142 select FIG#-GRAPH#
143    Select the current figure and the current graph
145 siglist
146    List loaded signals
148 unfreeze SIG [, SIG [, SIG]...]
149    Consider signal for subsequent updates
151 unit [XUNIT,] YUNIT
152    Set the unit to be displayed on graph axis
154 update
155    Reread data files
157 write format [(OPTIONS)] FILE SIG [, SIG [, SIG]...]
158    Write signals to file