Based on a continuous realtime event stream (where time of every event is easily known, but each event has no value, they are all identical), how program a filter/process th
This can be implemented with a moving average. Take your last N events where N is the size of your averaging window. Compute the time difference between the first and the last of these N events. If you are measuring in seconds and want the rate in event per minute you would then divide 60 seconds by your time difference expressed in seconds and you multiply by N-1.
currentAvgRate = (N-1) * 60 / (time different between last N events)
The greater the value of N the smoother your curve will be, but also the less it will react to local changes.