Latest news will appear here soon.

QGIS Planet

QGIS to (Geo)Pandas – part 3

The journey continues: QgsArrowIterator is now merged! This makes it possible to iterate over QgsFeatures as Arrow batches.

This is where we are now, quoting Dewey Dunnington:

import geopandas
from nanoarrow.c_array import allocate_c_array
import qgis
from qgis.core import QgsVectorLayer

# Create a vector layer
layer = QgsVectorLayer("tests/testdata/zonalstatistics/polys.shp", "layer_name", "ogr")
schema = qgis.core.QgsArrowIterator.inferSchema(layer)

it = qgis.core.QgsArrowIterator(layer.getFeatures())
it.setSchema(schema, 1)

c_array = allocate_c_array()
schema.exportToAddress(c_array.schema._addr())
it.nextFeatures(5, c_array._addr())

print(geopandas.GeoDataFrame.from_arrow(c_array))
#> lev3_name                                           geometry
#> 0    poly_1  MULTIPOLYGON (((100.37934 -0.96049, 100.37934 ...
#> 1    poly_2  MULTIPOLYGON (((100.37944 -0.96044, 100.37955 ...
#> 2    poly_3  MULTIPOLYGON (((100.37938 -0.96049, 100.37949 ...

print(geopandas.read_file("tests/testdata/zonalstatistics/polys.shp"))
#> lev3_name                                           geometry
#> 0    poly_1  POLYGON ((100.37934 -0.96049, 100.37934 -0.960...
#> 1    poly_2  POLYGON ((100.37944 -0.96044, 100.37955 -0.960...
#> 2    poly_3  POLYGON ((100.37938 -0.96049, 100.37949 -0.960...

Further improvements are already being planned. To quote from the ticket:

“The final state after this improvement would be a compact way for Arrow Python consumers like GeoPandas to ergonomically consume a layer. Maybe:

geopandas.GeoDataFrame.from_arrow(qgis_layer_object)

Or maybe:

geopandas.GeoDataFrame.from_arrow(qgis_layer_object.getArrowStream())

Looking forward to seeing this develop further.

Learn More

空港まで車で何分? QGISで所要時間を計算して可視化してみよう - QGIS LAB by MIERUNE

はじめに筆者は北海道に住んでいるのですが、ふと「北海道で空港から最も遠い場所はどこだろう?」という疑問が浮かびました。道北の稚内空港と旭川空港の中間地点か、それとも道南の渡島半島の中央部あたりなのか。この記事では、QGISで道路データから所要時間を計算し、可視化する方法を解説します。道路データをQGISに読み込むOSMデータをQGISに読み込む方法所要時間を計算するには道路データが必要です。今回は...
Learn More

[Blog] How to use Mergin Maps to collaborate on QGIS projects

Learn how to collaborate on QGIS projects using Mergin Maps. Discover sync workflows, user roles, mobile & desktop collaboration scenarios, and how to streamline field data collection with reliable versioning and cloud integration.
Learn More

New in QGIS 3.40 : CMYK Support

Credits : Bru-nO (Pixabay Content License)

Thanks to funding from the Bordeaux Metropolis, I had the chance to work on CMYK (Cyan Magenta Yellow blacK) support in QGIS. The metropolis’ goal is to remove the last barrier preventing their complete migration from ArcGIS to QGIS.

The developments are now complete and will be available in QGIS version 3.40, scheduled for release in October 2024, before becoming the next LTR in February 2025. It should be noted, however, that CMYK support will only be complete in QGIS versions built with Qt 6 (still unofficial version) for reasons explained in the article. On Windows, this version can currently only be installed using OSGeo4W (qgis-qt6-dev version).

EDIT: Actually, QGIS version built with Qt 6.8, which ships the needed modifications for CMYK PDF export, is not yet released. More information here.

What is CMYK?

You probably know RGB, which allows you to code a color on screen by choosing the amount of red, green and blue in that color. You may also use TSL or TSV.

RVB – Credits : Daniel Roberts (Pixabay Content License)

These 3 color references allow a color to be coded for a screen, while CMYK targets printers by allowing to set the exact quantity of ink that will be released during printing (hence the 4 CMYK components, one per ink cartridge).

 

CMYK ( here from left to right KCMY ) – Credits : Magnascan (Pixabay Content License)

The characteristics of CMYK differ greatly from RGB, it’s considered a subtractive colorimetric mode, because the ink absorbs light unlike RGB which is said to be additive, the more red, green, blue you have the closer you are to full light, white.

The intrinsically different nature of these 2 color spaces means that it is strongly advised not to convert from one to the other. The best is to choose a color in a space (CMYK for printing, RGB for rendering on screen) and stick to it.

Worse, printing the same color is different depending on the printer, ink, paper… The choice of a CMYK color has to be done in a color space, represented by a ICC profile file, provided by your printer. It is a bit like a color chart used when choosing paint.

 

Now you can argue about the REALLY good color of a road line – Credits : Yanis Ladjouzi (Pixabay Content License)

Developments in QGIS… and Qt

It is now possible in QGIS to:

  • Enter colors in CMYK format, and in floating precision;
  • Define your preferred color mode (RGB or CMYK) and your color space;
  • Generate a file in PDF/X-4 format (ready for printing) embedding a color space and using CMYK colors;
  • Allow the expression engine to manipulate CMYK colors without converting them to RGB;
  • Manage CMYK color ramps;
  • Lots of other small improvements and corrections about color management.

 

Selecting colors in QGIS in CMYK

The beautiful story of Open source

I took great pleasure in participating in this development because it is the result of the collaboration of many players in free software.

During a first phase of study concerning the support of CMYK in QGIS, we quickly identified that Qt, the framework used by QGIS for rendering maps, has limitations. It converts all colors to RGB when rendering maps in PDF format and its support for CMYK color spaces is incomplete.

It is therefore necessary to make it evolve. We therefore turn to our preferred partner when it comes to Qt, KDAB, and more precisely Giuseppe D’Angelo who then carries out the necessary developments.

Regarding new features, these are only available in Qt 6 (Qt 5 is end of life). This is why CMYK support is incomplete in official versions of QGIS still based on Qt 5.

QGIS.org, the association that oversees the QGIS project, decided to fund the developments on Qt. Oslandia, on the other hand would have to manage these developments and then to carry out the integration in QGIS. This integration as well as the related new features was funded by the Bordeaux metropolis.

My developments were then reviewed by other QGIS contributors. (If you want to know more about the QGIS contribution process, you can read a previous blog post about software quality in QGIS)

Finally, I wanted to give a special thanks to Jehan, developer on the GIMP project. His availability and thoroughness in our mail exchanges greatly helped me understand the technical and functional issues of CMYK, and most certainly contributed to the quality of the result.

Next

QGIS 3.40 will therefore be able to generate a PDF/X-4 file using CMYK colors. Qt, for its part, improves CMYK support, PDF writing, and color space management.

Thanks again to the Bordeaux metropolis and QGIS.org for funding these developments, and all the people involved in their realization.

We would be delighted to have feedback from users on your use cases related to color management in QGIS. Do not hesitate to write to us or comment on our posts to tell us how you use these features.

These foundations in the management of color spaces in QGIS open the door to future improvements. If you are interested in this topic and would like to contribute, please contact us at [email protected] and check out our QGIS support offer.

Learn More

Improved Access to Microsoft Planetary Computer in QGIS via STAC

Explore how QGIS now supports direct access and authentication for Microsoft Planetary Computer’s STAC datasets, enabling users to filter, view, and stream geospatial data efficiently.
Learn More

Revue de presse du 21 novembre 2025

Une GeoRDP avec des trucs antiques, des trucs du futur et des trucs du moment, comme les nouveautés de la Géoplateforme, ou encore des groupes d'utilisateurs QGIS régionaux qui se mettent en place.
Learn More

[Customer Testimonial] Nicolas Godet, ISL Engineering

A hydraulic engineer by training, Nicolas Godet has been working at ISL Ingénierie for just over seven years and holds the position of hydraulic project manager (flood risk, hydraulic structure safety), deputy director of the Saint-Jean-de-Luz facility, and QGIS (and GIS in general) advisor.

He discusses the implementation of QDT and the associated methodology for deploying QGIS across ISL’s IT infrastructure.

What are the objectives of the collaboration?

Before I took charge of deploying QGIS at ISL, it was a bit of a mess: no one had the same version, the same plugins, or the same practices.
Following the switch to QGIS3, there was a desire to standardize the QGIS fleet at ISL to have the same version, the same plugin base, and preconfigured profiles.

An initial, semi-homemade solution was implemented in 2022, but it proved difficult to maintain.

At the end of 2024, with a budget allocated, we decided to seek assistance from Oslandia to professionalize our QGIS deployment so that every employee would be using the same version:

  • facilitate project sharing within ISL and with our clients,
  • have a common and up-to-date plugin base,
  • benefit from advanced pre-configuration of user profiles.

The ultimate goal was to be able to update QGIS without disrupting all the configurations.

What challenges does this project address?

The challenge was to be able to keep up with developments in QGIS while retaining profile configurations. Having attended a few presentations (QGIS Days), I had heard about QDT. After preliminary discussions with Oslandia (and in particular with Julien Moura), we agreed to go ahead with customized training. This customized training allowed us to adapt the content to our needs.

How did the collaboration with Oslandia go?

The Oslandia teams are attentive, adapt to our needs, which are not always simple, and were able to offer us tailor-made training.

We decided to have four half-days spread out over several weeks, allowing us to cover the theory and a few examples during the half-day, then work on our own and come back to the next session with questions and ask for more in-depth coverage of certain points rather than others.
There’s not much else to add except that it went very well!

Since this training, ISL has been able to invest in QDT.

Learn More

QGISで属性テーブルを一括編集!フィールド計算機の基本から実践例まで - QGIS LAB by MIERUNE

はじめにQGISには、Excelの数式のような「式(Expression)」という機能があります。式を利用すると、属性テーブルの値を計算したり、地図上の図形を操作したり、ラベルの表示を工夫したりできます。「フィールド計算機」は、その式を使って属性テーブル内のフィールド(列)の値を一括で計算・入力できる便利なツールです。この記事では、フィールド計算機の基本的な操作方法や、式の書き方、データの種類を変...
Learn More

[Blog] Support Tip: Using HTML to improve your Mergin Maps project

Learn how to use HTML in your Mergin Maps project to improve survey workflows, create Google Maps links, display species info dynamically, and access offline documents.
Learn More

チームでのQField作業を効率化!複数人でのデータ編集と同期方法を解説 - QGIS LAB by MIERUNE

はじめに業務やフィールドワークでは、複数の担当者で作業を分担して進める場面があります。QFieldで複数のユーザーが集めたデータを、QGISで効率よく同期・統合する方法に迷うことはありませんか。この記事では、現地調査データをQGISに同期する方法をわかりやすく紹介します。基本的な流れは、各ユーザーが更新したQFieldプロジェクトをQGISプロジェクトを保存しているPCへ転送し、QField Sy...
Learn More