The purpose of this software is primarily dispaying of measurement data aquired from oscilloscopes from the rigol family. The main data type supported is .csv, because of its simplicity. But future additions for various datatypea is planned and development ongoing.
- Prerequisites
- Qt6 libraries
- Python (if you want to update resources automatically from the materials content)
- CMake
- GCC
- Make Im developing on a linux machine only, so this is basically all working out of the box.
mkdir build && cd build && cmake .. && make -j$nproc
Thats it.
- For Linux machines just run the executable
- For Win-devil, usually you would need the tool provided by qt to generate the required dynamic libraries. This is included in the 'CMakeLists.txt'. It searches for the required libraries (I just hardcoded them :D ) Please be aware, that you need to change/or delete the path to your Qt Libraries (in my case i had to, because it didnt worked as expected.
if(WIN32)
set(Qt6_DIR C:/Qt/6.8.0/mingw_64/lib/cmake/Qt6)
endif()
If on windows the libraries are not found in the build directory, CMake will evoke the command to generate them
windeployqt path/to/QWave.exe
The main window of the application. Files are represented as cyan colored nodes, their schildren are datasets. Each Dataset holds also calculated statistical information. For every file, the x vector to plot the data against needs to be specified. Clicking on a valid node (internally holding the data) the data is plotted on the chart.
Upon hitting'#' and moving around in the Chart, the cursor changes to a crosshair with highlighted x,y coordinates at the axes of the chart. This is useful in case of manual inspection and singal integrity checks. In this mode by LEFT_MOUSE a marker is placed at the current X-Position. This marker pieces trough every series that is present on the chart and displaying their y-values at the current x-position of the marker.
- Reading .csv files, where every colum is treated as a vector of data. The first cell in every colum is the signals name, the second row is the hnit of the signal.
- Simple Add/Remove functionality to quickly examine data
- Various zooming and panning functionality
- Taking a snapshot of the chart (Ctrl+P) exports a direct *.png
- Exporting the chart with its data to an svg
- Exporting the chart to native Latex
- Exporting to matplotlib figure (generating .py file)
- Settings for chart appearance
- Various export formats like *.hdf5, .csv,.json, *.npy ...
- Various other import formats like *.hdf5, json...
- Selection of data points to fit to a physical model
- Settings-file with load and save + apply
- Settings for chart export And possibly some more :)
Oh, hell yeah. Please :)