//Эта страница доступна также на следующих языках:// [[data_plotting_improvements|English]] ====== Построение графиков данных моделирования ====== ===== Обоснование ===== В этой статье обсуждаются варианты улучшения построения графиков данных. Существуют различные программы, и каждая имеет свои «за» и «против». * [[http://home.nc.rr.com/gtkwave/| gtkwave]]: прекрасная программа просмотра данных цифрового моделирования * [[http://www.telltronics.org/software/gwave/| gwave]]: программа просмотра аналоговых сигналов * [[http://sourceforge.net/projects/kjwaves| KJWaves]]: оболочка моделирования с окном построения графиков * встроенные функции вычерчивания графиков в ngspice * gnuplot / octave / scipy / ... или подобные программы как скриптовые языки пост-обработки * ... В списках рассылки были разные предложения о том, какие возможности могла бы иметь программа вывода графиков: * пост-обработка: интегрирование, сложение, дифференцирование, [[http://ru.wikipedia.org/wiki/Быстрое_преобразование_Фурье|БПФ]], ... * просмотр, исследования: курсоры, много окон, ... * импорт данных, формат файла: данные моделирования (gnucap, spice, ...) [[http://www.hdfgroup.org/HDF5/| hdf5 ]], измеренные данные с осциллографов, анализаторов спектра, ... * экспорт данных, формат файла: hdf5, изображения (png, ps, ...), [[gEDA:glossary.ru#ASCII]] * низкоуровневые средства коммуникации: dbus, ... * язык расширений / написания скриптов ===== План 1: расширить возможности gtkwaves ===== * написать несколько функций импорта аналоговых данных ===== План 2: улучшить gwave ===== gwave требует старой версии [[http://www.gnu.org/software/guile-gtk/ | guile-gtk]] для GTK1.2. * перенести gwave на guile-gtk2.0 для GTK2.x * удалить зависимость от guile-gtk. Может быть создать приложение на чистом gtk2 с помощью libglade? Переделанная gwave: * gaw: [[http://www.rvq.fr/linux/gaw.php]] ===== План 3: поискать существующие программы обработки данных ===== Есть ли какие-нибудь программы для отображения и пост-обработки данных моделирования? Если да, как их приспособить для работы в качестве программ просмотра временных диаграмм сигналов для программ моделирования (gnucap, ngspice)? ===== План 4: новое приложение для построения графиков ===== Несколько неясных заметок о возможностях написания нового приложения для построения графиков. В настоящий момент в качестве языка программирования в них предполагается python. * графический интерфейс можно создать с помощью [[http://www.jamesh.id.au/software/libglade/ |libglade]] * форматом хранения данных мог бы быть [[http://www.hdfgroup.org/HDF5/| hdf5 ]], может быть вместе с [[http://www.pytables.org/moin |pytables]] * движком построения графиков может быть [[http://matplotlib.sourceforge.net/ | matplotlib]] (туда входит экспорт PNG и PS) * пост-обработку можно было бы делать с помощью [[http://www.scipy.org | scipy]] * языком для скриптов является python. Поэтому легко может быть написан фильтр импорта в hdf5. Можно даже использовать интегрированную оболочку python. Видел такое на [[http://code.enthought.com/mayavi2-screenshot.shtml | MayaVi 2]] Недостаток: В такой конфигурации требуется огромный рюкзак дополнительных пакетов. **Обновление** Есть несколько программ, использующих такой набор инструментов как python, numpy, matplotlib: * oscopy: [[http://repo.or.cz/w/oscopy.git]] * dataplot: [[http://www.h-renrew.de/h/dataplot/dataplot.html]], [[http://repo.or.cz/w/dataplot.git]] * gsim: [[http://kiwiki.fmtnuni.sk/mediawiki/index.php/Description_of_gsim]]