-
FlexPro
- At a Glance
- Features & Options
- Applications
- All Advantages
- What’s New in FlexPro 2021
- Try FlexPro For Free
- FlexPro View OEM Freeware
- Buying Guide
- Login
- Language
- +49 6894 929600
- infoweisang.com
- Google Maps
- Products
- News
- Support
- Company
- Contact
- Login
- Language
- +49 6894 929600
- infoweisang.com
- Google Maps
Dataset with wrong x-Axis
- This topic has 1 reply, 2 voices, and was last updated 4 years ago by Bernhard Kantz.
-
AuthorPosts
-
November 30, 2020 at 3:53 pm #28485Leon DParticipant
Hello,
I have a signal that has a wrong x-axis. The time intervall between two maximas should be the same, but it isn`t.
To correct this, i tried to use given fpscript formulas and manipulated them. My Idea is to extract maxima, delete x-values in between two maxima and replace the x-values at the maxima with the x-value at the maxima before plus a fixed time intervall. (x_before + 50000s)
The codes are modified fpscript codes from event isolation. I added the_X variable and swapped some things.
This code is supposed to delete all x-values between to maxima and replace the x-value at the maxima with the x-value at the maxima before + 50000s. The deleting of x-values in between works fine, but i have no idea how to replace the maximum values with an ascending value.
Dim _EventResult, _Sig, _Max, _Y, _Event, _X _Y = FloatingPoint64 SourceData.Y _X = FloatingPoint64 SourceData.X _Sig = '2_Temp_Thermistor' _Max = Maximum(_Sig) If DataStructure(_Max) >= STRUCT_DATASERIES Then _Max = Maximum(_Max) End _Event = Extrema(_Sig, 0.01000000000000000 * _Max, EVENT_POSITIVE, EVENT_INDEX) _X[IndexNot(_Event, NumberOfRows(_X))] = ? If DataStructure(SourceData) <= STRUCT_DATAMATRIX Then _EventResult = _Y Else _EventResult = Signal(SourceData.Y, _X, SourceData.Z) End End
Interpolating afterwards works also fine.
Thanks in advance!
December 1, 2020 at 9:34 am #28489Bernhard KantzParticipantThe _Event variable contains a dataset with the indices of the local maximas. Thus _Event[0] marks the first, _Event[1] the second one. Thus
_X[_Event[1]] = _X[_Event[0]] + 50000 s
should do the trick.
-
AuthorPosts
- You must be logged in to reply to this topic.