Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi all,
Can anyone tell me how to fix the jumping that occurs on my map? When the paths cross a particular longitude there is a "jumping" that occurs and the line wraps the long way around the map. I have applied a transformation to the negative points (adding 360) that someone mentioned here: https://community.qlik.com/t5/Qlik-GeoAnalytics-Discussions/Line-Layer-Behavior-in-the-Pacific/td-p/...
however it appears that this simply changes where the jump occurs. Instead of occurring across the (-180, 180) longitude line (point 2) it occurs accross the (0, 360) line (point 3) as shown in the maps below. The maps show paths consisting of a few points placed at critical longitudes to show where the jump occurs.
The points on the map are given by:
SmallData:
load * inline
[assetid, latitude, longitude, messagetime
2, 46.7522781 , 163.0435627 , 2019-07-26 02:39:16
2, 47.8609425 , 174.934958 , 2019-07-26 02:39:17
2, 47.9432986 , -179.0895877 , 2019-07-26 02:39:17
2, 46.386769 , -161.746896 , 2019-07-26 02:39:18
3, 30.7522781 , 5 , 2019-07-26 02:39:16
3, 30.8609425 , 1 , 2019-07-26 02:39:17
3, 30.9432986 , -1 , 2019-07-26 02:39:17
3, 30.386769 , -5 , 2019-07-26 02:39:18
4, -15.7522781 , 95 , 2019-07-26 02:39:16
4, -15.8609425 , 91 , 2019-07-26 02:39:17
4, -15.9432986 , 89 , 2019-07-26 02:39:17
4, -15.386769 , 85 , 2019-07-26 02:39:18
];
And the paths are constructed with:
Paths:
Load
assetid,
'[' & concat( GeoMakePoint(latitude, if( longitude < 0 , longitude + 360, longitude)) , ',', messagetime ) & ']' as trail
Resident SmallData
Group By assetid;
After applying the transformation: if( longitude < 0 , longitude + 360, longitude))
To make lines continue across the date line and not to wrap around, the coordinates has to "flow past" the date line.
See the app for an example.
Thanks,
Patric