missing NULL terminator in set_config_x
[geda-gaf.git] / docs / wiki / geda-data_plotting_improvements.html
blob3f0e8c7b15d72ff639f05a4eaa74ec7181f89801
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html>
4 <head>
5 <link rel="stylesheet" media="screen" type="text/css" href="./style.css" />
6 <link rel="stylesheet" media="screen" type="text/css" href="./design.css" />
7 <link rel="stylesheet" media="print" type="text/css" href="./print.css" />
9 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
10 </head>
11 <body>
13 <p>
14 <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>.
15 </p>
17 <h1 class="sectionedit1" id="simulation_data_plotting">Simulation Data Plotting</h1>
18 <div class="level1">
20 </div>
21 <!-- EDIT1 SECTION "Simulation Data Plotting" [129-169] -->
22 <h2 class="sectionedit2" id="rationale">Rationale</h2>
23 <div class="level2">
25 <p>
26 This article discusses on how data plotting can be improved.
27 There are various programs out there, each has it&#039;s own pros and cons:
28 </p>
29 <ul>
30 <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>
31 </li>
32 <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>
33 </li>
34 <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>
35 </li>
36 <li class="level1"><div class="li"> buildin plotting functions in ngspice</div>
37 </li>
38 <li class="level1"><div class="li"> gnuplot / octave / scipy / … or similar programs as postprocessing script languages</div>
39 </li>
40 <li class="level1"><div class="li"></div>
41 </li>
42 </ul>
44 <p>
45 There have been various suggestions on the mailing lists about the feature a plotting program could have:
46 </p>
47 <ul>
48 <li class="level1"><div class="li"> postprocessing: integrate, add, diff, fft, …</div>
49 </li>
50 <li class="level1"><div class="li"> view, examine: cursors, multiple windows, …</div>
51 </li>
52 <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>
53 </li>
54 <li class="level1"><div class="li"> data export, file format: hdf5, pictures (png, ps, …), ascii</div>
55 </li>
56 <li class="level1"><div class="li"> communication backends: dbus, …</div>
57 </li>
58 <li class="level1"><div class="li"> extension/scripting language</div>
59 </li>
60 </ul>
62 </div>
63 <!-- EDIT2 SECTION "Rationale" [170-1261] -->
64 <h2 class="sectionedit3" id="draft1extend_gtkwaves">Draft1: Extend gtkwaves</h2>
65 <div class="level2">
66 <ul>
67 <li class="level1"><div class="li"> write some import functions for analog data</div>
68 </li>
69 </ul>
71 </div>
72 <!-- EDIT3 SECTION "Draft1: Extend gtkwaves" [1262-1347] -->
73 <h2 class="sectionedit4" id="draft2improve_gwave">Draft2: improve gwave</h2>
74 <div class="level2">
76 <p>
77 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.
78 </p>
79 <ul>
80 <li class="level1"><div class="li"> port gwave to guile-gtk2.0 for GTK2.x</div>
81 </li>
82 <li class="level1"><div class="li"> remove the guile-gtk requirement. Maybe create a native gtk2 application with libglade?</div>
83 </li>
84 </ul>
86 <p>
87 A rewrite of gwave:
88 </p>
89 <ul>
90 <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>
91 </li>
92 </ul>
94 </div>
95 <!-- EDIT4 SECTION "Draft2: improve gwave" [1348-1672] -->
96 <h2 class="sectionedit5" id="draft3search_for_existing_data_exploring_programs">Draft3: Search for existing data exploring programs</h2>
97 <div class="level2">
99 <p>
100 Are there any programs out there that can show and postprocess simulation data?
101 If yes, how can they be extended to work as a waveform viewer for the simulators (gnucap, ngspice)?
102 </p>
104 </div>
105 <!-- EDIT5 SECTION "Draft3: Search for existing data exploring programs" [1673-1919] -->
106 <h2 class="sectionedit6" id="draft4a_new_plotting_application">Draft4: A new plotting application</h2>
107 <div class="level2">
110 Some vague notes on how a new plotting application could be written.
111 This notes currently relate on python as programming language.
112 </p>
113 <ul>
114 <li class="level1"><div class="li"> the <abbr title="Graphical User Interface">GUI</abbr> 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>
115 </li>
116 <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>
117 </li>
118 <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>
119 </li>
120 <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>
121 </li>
122 <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>
123 </li>
124 </ul>
127 Disadvantage: This configuration has a huge rucksack of additional required packages.
128 </p>
131 <strong>Update</strong>
132 </p>
135 There are now some programs out there, that use the python, numpy, matplotlib tool chain:
136 </p>
137 <ul>
138 <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>
139 </li>
140 <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>
141 </li>
142 <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>
143 </li>
144 </ul>
146 </div>
147 <!-- EDIT6 SECTION "Draft4: A new plotting application" [1920-] --></body>
148 </html>