Blog d’Anita Graser

https://anitagraser.com

  • Docker basics with Geodocker GeoServer 12 juillet 2017
    Today’s post is mostly notes-to-self about using Docker. These steps were tested on a fresh Ubuntu 17.04 install. Install Docker as described in https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu/ “Install using the repository” section. Then add the current user to the docker user group (otherwise, all docker commands have to be prefixed with sudo) $ sudo gpasswd -a $USER docker $ newgrp docker Test run the hello world image $ docker run hello-world For some more Docker basics, see https://github.com/docker/labs/blob/master/beginner/chapters/alpine.md. Pull Geodocker images, for example from https://quay.io/organization/geodocker $ docker pull quay.io/geodocker/base $ docker pull quay.io/geodocker/geoserver Get a list of pulled images $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE quay.io/geodocker/geoserver latest c60753e05956 8 months ago 904MB quay.io/geodocker/base latest 293209905a47 8 months ago 646MB Test run quay.io/geodocker/base $ docker run -it –rm quay.io/geodocker/base:latest java -version java version « 1.8.0_45 » Java(TM) SE Runtime Environment (build 1.8.0_45-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode) Run quay.io/geodoc …
  • Even more aggregations: QGIS point cluster renderer 13 juin 2017
    In the previous post, I demonstrated the aggregation support in QGIS expressions. Another popular request is to aggregate or cluster point features that are close to each other. If you have been following the QGIS project on mailing list or social media, you probably remember the successful cluster renderer crowd-funding campaign by North Road. The point cluster renderer is implemented and can be tested in the current developer version. The renderer is highly customizable, for example, by styling the cluster symbol and adjusting the distance between points that should be in the same cluster: Beyond this basic use case, the point cluster renderer can also be combined with categorized visualizations and clusters symbols can be colored in the corresponding category color and scaled by cluster size, as demoed in this video by the developer Nyall Dawson: …
  • Aggregate all the things! (QGIS expression edition) 8 juin 2017
    In the past, aggregating field values was reserved to databases, virtual layers, or dedicated plugins, but since QGIS 2.16, there is a way to compute aggregates directly in QGIS expressions. This means that we can compute sums, means, counts, minimum and maximum values and more! Here’s a quick tutorial to get you started: Load the airports from the QGIS sample dataset. We’ll use the elevation values in the ELEV field for the following examples: QGIS sample airport dataset – categorized by USE attribute The most straightforward expressions are those that only have one parameter: the name of the field that should be aggregated, for example: mean(ELEV) We can also add a second parameter: a group-by field, for example, to group by the airport usage type, we use: mean(ELEV,USE) To top it all off, we can add a third parameter: a filter expression, for example, to show only military airports, we use: mean(ELEV,USE,USE=’Military’) Last but not least, all this aggregating goodness also works across layers! For example, here is the Alaska layer labeled with the airport layer feature count: aggregate(‘airports’,’count’, »ID ») If you are using relations, you can even go one step further and cal …
  • Upcoming QGIS3 features – exploring the current developer version 23 mai 2017
    There are tons of things going on under the hood of QGIS for the move from version 2 to version 3. Besides other things, we’ll have access to new versions of Qt and Python. If you are using a HiDPI screen, you should see some notable improvements in the user interface of QGIS 3. But of course QGIS 3 is not “just” a move to updated dependencies. Like in any other release, there are many new features that we are looking forward to. This list is only a start, including tools that already landed in the developer version 2.99: Improved geometry editing  When editing geometries, the node tool now behaves more like editing tools in webmaps: instead of double-clicking to add a new node, the tool automatically suggests a new node when the cursor hovers over a line segment. In addition, improvements include an undo and redo panel for quick access to previous versions. Improved Processing dialogs Like many other parts of the QGIS user interface, Processing dialogs now prominently display the function help. In addition, GDAL/OGR tools also show the underlying GDAL/OGR command which can be copy-pasted to use it somewhere else. New symbols and predefined symbol groups The default symbols have be …
  • Movement data in GIS #6: updates from AGILE2017 21 mai 2017
    AGILE 2017 is the annual international conference on Geographic Information Science of the Association of Geographic Information Laboratories in Europe (AGILE) which was established in 1998 to promote academic teaching and research on GIS. This years conference in Wageningen was my time at AGILE.  I had the honor to present our recent work on pedestrian navigation with landmarks [Graser, 2017]. If you are interested in trying it, there is an online demo. The conference also provided numerous pointers toward ideas for future improvements, including [Götze and Boye, 2016] and [Du et al., 2017] natural language from geom relations – would be a good add-on for our navigation instruction generator https://t.co/jO0khPfnHE #agilewag2017 pic.twitter.com/9B5F0jxvkQ — Anita Graser (@underdarkGIS) May 9, 2017 On the issue of movement data in GIS, there weren’t too many talks on this topic at AGILE but on the conceptual side, I really enjoyed David Jonietz’ talk on how to describe trajectory processing steps: Source: [Jonietz and Bucher, 2017] In the pre-conference workshop I attended, there was also an interesting presentation on analyzing trajectory data with PostGIS by Phd candidate Meihan …
  • Report from the Essen dev meeting 6 mai 2017
    From 28th April to 1st May the QGIS project organized another successful developer meeting at the Linuxhotel in Essen, Germany. Here is a quick summary of the key topics I’ve been working on during these days. New logo rollout It’s time to get the QGIS 3 logo out there! We’ve started changing our social media profile pictures and Website headers to the new design:  Resource sharing platform  In QGIS 3, the resource sharing platform will be available by default – just like the plugin manager is today in QGIS 2. We are constantly looking for people to share their mapping resources with the community. During this developer meeting Paolo Cavallini and I added two more SVG collections: Road sign SVGs by Bertrand Bouteilles & Roulex_45 (CC BY-SA 3.0) SVGs by Yury Ryabov & Pavel Sergeev (CC-BY 3.0) Unified Add Layer button We also discussed the unified add layer dialog and are optimistic that it will make its way into 3.0. The required effort for a first version is currently being estimated by the developers at Boundless. TimeManager The new TimeManager version 2.4 fixes a couple of issues related to window resizing and display on HiDPI screens. Additionally, it now saves all label settin …
  • Straight and curved arrows with QGIS 29 avril 2017

    After my previous posts on flow maps, many people asked me how to create the curved arrows that you see in these maps.

    Arrow symbol layers were introduced in QGIS 2.16.

    The following quick screencast shows how it is done. Note how additional nodes are added to make the curved arrows:


  • Better river styles with tapered lines 17 avril 2017
    In 2012 I published a post on mapping the then newly released Tirol river dataset. In the comments, reader Michal Zimmermann asked: Do you think it would be possible to create a river stream which gains width along its way? I mean rivers are usually much narrower on their beginnings, then their width increases and the estuary should be the widest part, right? For a long time, this kind of river style, also known as “tapered lines” could only be created in vector graphics software, such as Inkscape and Illustrator. With the help of geometry generators, we can now achieve this look directly in QGIS: Data cc-by Land Tirol In the river dataset published by the state of Tirol, all rivers are digitized in upstream direction. For this styling to work, it is necessary that the line direction is consistent throughout the whole dataset. We use a geometry generator symbol layer to split the river geometry into its individual segments:   Then we can use the information about the total number of segments (accessible via the expression variable @geometry_part_count) and the individual segment’s number (@geometry_part_num) to calculate the segment’s line width. The stroke width expression further …
  • Quick guide to geometry generator symbol layers 8 avril 2017
    Geometry generator symbol layers are a feature that has been added in QGIS 2.14. They allow using the expression engine to modify geometries or even create new geometries while rendering. Geometry generator symbol layers make it possible to use expression syntax to generate a geometry on the fly during the rendering process. The resulting geometry does not have to match with the original geometry type and we can add several differently modified symbol layers on top of each other. The latest version of the QGIS user manual provides some example expressions, which served as a basis for the following examples: Rendering the centroid of a feature To add a geometry layer representing feature centroids, we need to set the geometry type to Point / Multipoint and enter the following expression: centroid( $geometry ) It is worth noting that the correct geometry type has to be set manually. If a wrong type is set, the symbol layer can not be rendered. Drawing buffers around features Buffers are an example of a polygon geometry generator layer. The second parameter of the buffer function defines if the buffer is generated outside (for positive values) or inside (for negative values) of the fe …
  • Movement data in GIS #5: current research topics 25 février 2017
    In the 1st part of this series, I mentioned the Workshop on Analysis of Movement Data at the GIScience 2016 conference. Since the workshop took place in September 2016, 11 abstracts have been published (the website seems to be down currently, see the cached version) covering topics from general concepts for movement data analysis, to transport, health, and ecology specific articles. Here’s a quick overview of what researchers are currently working on: General topics Interpolating trajectories with gaps in the GPS signal while taking into account the context of the gap [Hwang et al., 2016] Adding time and weather context to understand their impact on origin-destination flows [Sila-Nowicka and Fotheringham, 2016] Finding optimal locations for multiple moving objects to meet and still arrive at their destination in time [Gao and Zeng, 2016] Modeling checkpoint-based movement data as sequence of transitions [Tao, 2016] Transport domain Estimating junction locations and traffic regulations using extended floating car data [Kuntzsch et al., 2016] Health domain Clarifying physical activity domain semantics using ontology design patterns [Sinha and Howe, 2016] Recognizing activities based …