[Qgis-developer] [Qgis-user] Labelling expressions: how to select the 'last' row in a csv dataset

Rémi Bovard remi.bovard at gmail.com
Tue Mar 11 01:41:22 PDT 2014


Hi Gavin,

Create the second CSV file with only one row (the latest one).

Rémi


2014-03-11 9:34 GMT+01:00 Gavin Macaulay <gavin at macaulay.co.nz>:

> Bob,
>
> Thanks for the suggestion. How does one get the csv provider to read just
> the first line?
>
> Gavin
>
>
> On 10/03/2014 10:25 p.m., Basques, Bob (CI-StPaul) wrote:
>
>> Gavin,
>>
>> Set up the CSV file creation to append to the top of the file instead of
>> the bottom, then just read the first line for the special cartography.
>>
>> If you are running on Linux, there are a whole bunch of options with
>> AWK/GREP, etc to get the data outputting in a more favorable fashion for
>> reading.
>>
>> My first thought was to suggest the SQL path though, this gives you lots
>> of options for archiving and looking at the path/trail over time . . .
>>
>> I've just completed doing something similar for a AVL tracking system.
>>
>> Bobb
>>
>>
>>
>> -----Original Message-----
>> From: qgis-user-bounces at lists.osgeo.org [mailto:qgis-user-bounces@
>> lists.osgeo.org] On Behalf Of Gavin Macaulay
>> Sent: Monday, March 10, 2014 3:18 PM
>> To: qgis-user at lists.osgeo.org
>> Subject: [Qgis-user] Labelling expressions: how to select the 'last' row
>> in a csv dataset
>>
>> Hi,
>>
>> I have a csv file that looks like this:
>>
>> datetime, latitude, longitude, speed
>> 2014-03-07T06:11:56.794000, 69.6930, 19.0321, 0.0
>> 2014-03-07T06:12:56.791000, 69.6904, 19.0291, 10.0
>> 2014-03-07T06:13:56.787000, 69.6879, 19.0257, 10.0
>>
>> A new row gets added to the file every second or so. I load this file
>> into QGIS as a csv file with the watch option turned on so that every time
>> the map is refreshed, the map plots any new points that have been added to
>> the file.
>>
>> I would like to have the most recent line in the file plotted with a
>> different symbol to the rest (the data represents realtime data from a
>> moving ship so it's good to highlight the latest position). I can almost do
>> this using the expression based labelling, but not quite (I can get a row
>> number, but not the total number of rows, so can't do something obvious
>> like: $rownum == $numrows, or $id == max($id)).
>>
>> Any suggestions on how I can achieve this? I could move the data into a
>> SQL-based layer and choose the last row using an SQL statement, but the
>> simplicity of generating the csv files is attractive.
>>
>> Thanks
>>
>> Gavin
>> _______________________________________________
>> Qgis-user mailing list
>> Qgis-user at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/qgis-user
>>
>>
>>
> _______________________________________________
> Qgis-user mailing list
> Qgis-user at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-user
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20140311/40c0d1da/attachment.html>


More information about the Qgis-developer mailing list