File: geda-data_plotting_improvements.html

package info (click to toggle)
lepton-eda 1.9.18-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 41,024 kB
  • sloc: ansic: 66,688; lisp: 29,508; sh: 6,792; makefile: 3,111; perl: 1,404; pascal: 1,161; lex: 887; sed: 16; cpp: 8
file content (150 lines) | stat: -rw-r--r-- 7,767 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
  <link rel="stylesheet" media="screen" type="text/css" href="./style.css" />
  <link rel="stylesheet" media="screen" type="text/css" href="./design.css" />
  <link rel="stylesheet" media="print" type="text/css" href="./print.css" />

  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<div class="dokuwiki export">

<p>
<em>Translations of this page are also available in the following languages:</em> <a href="geda-data_plotting_improvements.ru.html" class="wikilink1" title="geda-data_plotting_improvements.ru.html">Русский</a>.
</p>

<h1 class="sectionedit1"><a name="simulation_data_plotting" id="simulation_data_plotting">Simulation Data Plotting</a></h1>
<div class="level1">

</div>
<!-- EDIT1 SECTION "Simulation Data Plotting" [129-169] -->
<h2 class="sectionedit2"><a name="rationale" id="rationale">Rationale</a></h2>
<div class="level2">

<p>
This article discusses on how data plotting can be improved.
There are various programs out there, each has it&#039;s own pros and cons:
</p>
<ul>
<li class="level1"><div class="li"> <a href="http://home.nc.rr.com/gtkwave/" class="urlextern" title="http://home.nc.rr.com/gtkwave/"  rel="nofollow"> gtkwave</a>: a great viewer for digital simulation data</div>
</li>
<li class="level1"><div class="li"> <a href="http://www.telltronics.org/software/gwave/" class="urlextern" title="http://www.telltronics.org/software/gwave/"  rel="nofollow"> gwave</a>: analog waveform viewer</div>
</li>
<li class="level1"><div class="li"> <a href="http://sourceforge.net/projects/kjwaves" class="urlextern" title="http://sourceforge.net/projects/kjwaves"  rel="nofollow"> KJWaves</a>: simulation frontend with plotting window</div>
</li>
<li class="level1"><div class="li"> buildin plotting functions in ngspice</div>
</li>
<li class="level1"><div class="li"> gnuplot / octave / scipy / … or similar programs as postprocessing script languages</div>
</li>
<li class="level1"><div class="li"> …</div>
</li>
</ul>

<p>
There have been various suggestions on the mailing lists about the feature a plotting program could have:
</p>
<ul>
<li class="level1"><div class="li"> postprocessing: integrate, add, diff, fft, …</div>
</li>
<li class="level1"><div class="li"> view, examine: cursors, multiple windows, …</div>
</li>
<li class="level1"><div class="li"> data import, file format: circuit simulation data (gnucap, spice, …) <a href="http://www.hdfgroup.org/HDF5/" class="urlextern" title="http://www.hdfgroup.org/HDF5/"  rel="nofollow"> hdf5 </a>, measured data from oscilloscopes, spectrum analysers, …</div>
</li>
<li class="level1"><div class="li"> data export, file format: hdf5, pictures (png, ps, …), ascii</div>
</li>
<li class="level1"><div class="li"> communication backends: dbus, …</div>
</li>
<li class="level1"><div class="li"> extension/scripting language</div>
</li>
</ul>

</div>
<!-- EDIT2 SECTION "Rationale" [170-1261] -->
<h2 class="sectionedit3"><a name="draft1extend_gtkwaves" id="draft1extend_gtkwaves">Draft1: Extend gtkwaves</a></h2>
<div class="level2">
<ul>
<li class="level1"><div class="li"> write some import functions for analog data</div>
</li>
</ul>

</div>
<!-- EDIT3 SECTION "Draft1: Extend gtkwaves" [1262-1347] -->
<h2 class="sectionedit4"><a name="draft2improve_gwave" id="draft2improve_gwave">Draft2: improve gwave</a></h2>
<div class="level2">

<p>
gwave requires an old <a href="http://www.gnu.org/software/guile-gtk/" class="urlextern" title="http://www.gnu.org/software/guile-gtk/"  rel="nofollow"> guile-gtk</a> for GTK1.2.
</p>
<ul>
<li class="level1"><div class="li"> port gwave to guile-gtk2.0 for GTK2.x</div>
</li>
<li class="level1"><div class="li"> remove the guile-gtk requirement. Maybe create a native gtk2 application with libglade?</div>
</li>
</ul>

<p>
A rewrite of gwave:
</p>
<ul>
<li class="level1"><div class="li"> gaw: <a href="http://www.rvq.fr/linux/gaw.php" class="urlextern" title="http://www.rvq.fr/linux/gaw.php"  rel="nofollow">http://www.rvq.fr/linux/gaw.php</a></div>
</li>
</ul>

</div>
<!-- EDIT4 SECTION "Draft2: improve gwave" [1348-1672] -->
<h2 class="sectionedit5"><a name="draft3search_for_existing_data_exploring_programs" id="draft3search_for_existing_data_exploring_programs">Draft3: Search for existing data exploring programs</a></h2>
<div class="level2">

<p>
Are there any programs out there that can show and postprocess simulation data?
If yes, how can they be extended to work as a waveform viewer for the simulators (gnucap, ngspice)?
</p>

</div>
<!-- EDIT5 SECTION "Draft3: Search for existing data exploring programs" [1673-1919] -->
<h2 class="sectionedit6"><a name="draft4a_new_plotting_application" id="draft4a_new_plotting_application">Draft4: A new plotting application</a></h2>
<div class="level2">

<p>
Some vague notes on how a new plotting application could be written.
This notes currently relate on python as programming language.
</p>
<ul>
<li class="level1"><div class="li"> the <acronym title="Graphical User Interface">GUI</acronym> could be created with <a href="http://www.jamesh.id.au/software/libglade/" class="urlextern" title="http://www.jamesh.id.au/software/libglade/"  rel="nofollow">libglade</a></div>
</li>
<li class="level1"><div class="li"> the data storage format could be <a href="http://www.hdfgroup.org/HDF5/" class="urlextern" title="http://www.hdfgroup.org/HDF5/"  rel="nofollow"> hdf5 </a>, maybe together with <a href="http://www.pytables.org/moin" class="urlextern" title="http://www.pytables.org/moin"  rel="nofollow">pytables</a></div>
</li>
<li class="level1"><div class="li"> the plotting engine could be <a href="http://matplotlib.sourceforge.net/" class="urlextern" title="http://matplotlib.sourceforge.net/"  rel="nofollow"> matplotlib</a> (png, ps export included)</div>
</li>
<li class="level1"><div class="li"> postprocessing could be done with <a href="http://www.scipy.org/" class="urlextern" title="http://www.scipy.org"  rel="nofollow"> scipy</a></div>
</li>
<li class="level1"><div class="li"> the scripting language is python. Thus import filter to hdf5 can easily be written. Even an integrated python shell would be possible. Seen on <a href="http://code.enthought.com/mayavi2-screenshot.shtml" class="urlextern" title="http://code.enthought.com/mayavi2-screenshot.shtml"  rel="nofollow"> MayaVi 2</a></div>
</li>
</ul>

<p>
Disadvantage: This configuration has a huge rucksack of additional required packages.
</p>

<p>
<strong>Update</strong>
</p>

<p>
There are now some programs out there, that use the python, numpy, matplotlib tool chain:
</p>
<ul>
<li class="level1"><div class="li"> oscopy: <a href="http://repo.or.cz/w/oscopy.git" class="urlextern" title="http://repo.or.cz/w/oscopy.git"  rel="nofollow">http://repo.or.cz/w/oscopy.git</a></div>
</li>
<li class="level1"><div class="li"> dataplot: <a href="http://www.h-renrew.de/h/dataplot/dataplot.html" class="urlextern" title="http://www.h-renrew.de/h/dataplot/dataplot.html"  rel="nofollow">http://www.h-renrew.de/h/dataplot/dataplot.html</a>, <a href="http://repo.or.cz/w/dataplot.git" class="urlextern" title="http://repo.or.cz/w/dataplot.git"  rel="nofollow">http://repo.or.cz/w/dataplot.git</a></div>
</li>
<li class="level1"><div class="li"> gsim: <a href="http://kiwiki.fmtnuni.sk/mediawiki/index.php/Description_of_gsim" class="urlextern" title="http://kiwiki.fmtnuni.sk/mediawiki/index.php/Description_of_gsim"  rel="nofollow">http://kiwiki.fmtnuni.sk/mediawiki/index.php/Description_of_gsim</a></div>
</li>
</ul>

</div>
<!-- EDIT6 SECTION "Draft4: A new plotting application" [1920-] --></div>
</body>
</html>