I have recently started using QGIS 3, at a very basic level really, I am displaying radio coverage drive test logs which are in tab delimited format. I have sucessfully imported the file, and written several expressions saved into a 'style' to display the data on a base map with a different coloured spot for each signal level.

Within the log file are entries for 'call start', 'call end', and 'call drop, I have also written expressions to display each of these on the map as a different symbol. If I click on the log file I imported, and select 'show feature count' I am able to see how many calls were started, how many were completed and how many dropped.

What I now want to do is take these totals, perform simple maths on them to create a percentage of successful calls and then display that onto the map alongside the drive test coverage log, in like a title block if you see what I mean.

Would anyone be able to give me some idea of how I would go about that please? I have tried adding a new scratch layer and then I was hoping to write a similar expression to what I already have but to count the number of call start and call end entries but I cannot see how I reference the data from the previously imported coverage log layer .

This is what the imported log file looks like.

Timestamp   Longitude   Latitude    Level   Qual    EVENT
2018.04.06_09.04.13 -1.138316   52.055508   -92 -10 LOG START
2018.04.06_09.04.13 -1.138316   52.055508   -92 -10 CALL_END
2018.04.06_09.04.13 -1.138316   52.055508   -92 -9  
2018.04.06_09.04.15 -1.138316   52.055508   -92 -9  CALL_START
2018.04.06_09.04.22 -1.138316   52.055508   -92 -9  CALL_END
2018.04.06_09.04.24 -1.138316   52.055508   -91 -8  CALL_START
2018.04.06_09.04.31 -1.138316   52.055508   -87 -10 CALL_END
2018.04.06_09.04.34 -1.138316   52.055508   -85 -9  CALL_START
2018.04.06_09.04.41 -1.138316   52.055508   -85 -9  CALL_END

Apologies for the formatting, but each line represents an 'event' and the GPS location and the event which can be call start, call end, call dropped or call blocked. In the example above, I was not moving which is why the Lan / Lon are all the same.

  • 1
    Hi Kazuhito, Each line of the imported text file contains information specific to the GPs position and call, so there is Lat, Lon, Signal Level and a field called 'Event'. The event field is where I see Call start, Call end or Call Drop. – tsteele Oct 14 '18 at 6:53
  • Hi Kazuhito, this is how it looks Timestamp Longitude Latitude Level Qual EVENT 09.04.13 -2.138316 53.055508 -92 -10 LOG START 09.04.13 -2.138316 53.055508 -92 -10 CALL_END 09.04.13 -2.138316 53.055508 -92 -9 CALL_START – tsteele Oct 14 '18 at 8:31
  • Why does one line miss an event? LOG START is also a call starting? – BERA Oct 14 '18 at 10:28
  • Hi there is only one 'Log Start' that is the first line, at the very end of the file there is also a 'Log End' which is the last line. The log file can be many many lines long, sometimes, depending on the state of the call, i.e. if a call is in progress for example, there will be nothing displayed in the 'event' field. – tsteele Oct 14 '18 at 12:47
  • I know nothing about style expression but what you are asking sounds pretty complicated. I could show you examples how to use python process your data and output what you want as new textfiles which you then can add to the map. – BERA Oct 14 '18 at 13:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.