[Qgis-user] Symbolizing a discrete or a boolean raster (Stéphane Henriod)

Pedro Machado Monteiro pedromachadomonteiro at gmail.com
Wed Jan 11 03:30:22 PST 2017


I totally agree. For a simple user like me, directly retrieving unique
values (like ArcGis does), and having direct access to raster tables, would
be a major step to enhance raster work productivity.

All the best

Pedro Monteiro











2017-01-11 3:55 GMT+00:00 Stéphane Henriod <s at henriod.info>:

> Hi Richard
>
> this is a nice workaround, that I will also probably use in the future!
> Thanks a lot!
>
> However, this becomes unhandy:
>
>    - if the raster doesn't contain all values between 1 and 50 (let's
>    say, there are only classes 2, 23, 56 and 49) => need to manually remove
>    all the unnecessary values
>    - if the raster contains a discrete amount of decimal values (2.3, 4.5
>    and 12.8)
>    - if I don't know in advance the number of classes (which happens
>    quite often: I receive a dataset that I don't know much about and want to
>    quickly display / style it to explore it)
>
> All the answers in this thread actually justify (IMO) the feature request:
> it is at the moment possible to style discrete rasters in QGIS but only
> using workarounds that are not necessarily adapted in all cases and that
> are completely untransparent for beginners.
>
> All the best
>
> Stéphane
>
>
> Le mardi 10 janvier 2017, Richard McDonnell <richard.mcdonnell at opw.ie> a
> écrit :
>
>> Harrissou,
>>
>> Not sure if this is a solution, or if anyone has already given you this
>> answer, but.... if you know a classified raster has *50* values, which
>> you wish to style individually, you could try setting
>> *: *
>>
>>    - *Colour Interpolation* to *Linear*
>>    - *Mode *to* Equal Interval*
>>    - *Classes *to* 51 *(one more than the Max)
>>
>> I have only just tested this on a raster with 4 values and its worked for
>> me!
>> Hope this helps!
>> Regards,
>>
>> Richard.
>>
>> On 10/01/2017 09:49, DelazJ wrote:
>>
>> Hi Stéphane,
>>
>> 2017-01-10 4:02 GMT+01:00 Stéphane Henriod <s at henriod.info>:
>>
>>> Hi Chris
>>>
>>> this is very nice! I indeed didn't know this trick and will certainly
>>> use it again in the future!
>>>
>>> However... :-)
>>>
>>> I am currently teaching QGIS to beginners and this for sure is not an
>>> appropriate method for them (especially in the case you have to generate
>>> the symbology file through a script)!
>>>
>>> Since the user can style continuous rasters with some "button-clicking",
>>> I believe the same option should be available for discrete rasters as well.
>>>
>>> I am thus wondering if anyone else than me sees it as a priority for
>>> QGIS? If yes, how to motivate the developers to take it for the next
>>> release and / or how much would such a development cost? (I unfortunately
>>> don't have the competences to do it myself)
>>>
>>> There have been some work done in the raster properties dialog in the
>> upcoming 3.0. I don't know if your concern was covered though.
>> If you want, you can move the question to the developer's list
>> <http://qgis.org/en/site/getinvolved/mailinglists.html#qgis-developers-list>
>> and discuss whether/how this can be implemented (and its requirements).
>>
>> Regards,
>> Harrissou
>>
>> Thanks again and cheers!
>>>
>>> Stéphane
>>>
>>>
>>> Le mardi 10 janvier 2017, Chris House <housec01 at gmail.com> a écrit :
>>>
>>>> Hi Stéphane,
>>>>
>>>> I don't know if this is what you are looking for or not but I have a
>>>> method of classifying rasters by color based on a set (standard) colors.  I
>>>> created a spreadsheet that has several required columns, value, red, green,
>>>> blue...and you can have an optional field for a display value.  So say
>>>> value 1 is water you can use that last column to name that value so that in
>>>> the QGIS layer tree and in legend it says Water instead of value 1.
>>>>
>>>> save the spreadsheet as a csv and change the extension to .txt instead
>>>> of .csv.
>>>>
>>>> I then go into the symbology section of the raster choose singleband
>>>> pseudocolor. Use the folder to browse to your text file and click add.
>>>> There is a format for this text file.  It is below.  If you need me to
>>>> email it I will do that in direct email.
>>>>
>>>> # QGIS Generated Color Map Export File
>>>> INTERPOLATION:EXACT
>>>> -9999,0,0,0,255,NoData
>>>> 0,176,176,176,255,Non-Forested
>>>> 15,234,255,191,255,10 <=  CC < 20
>>>> 25,187,230,149,255,20 <=  CC < 30
>>>> 35,140,201,109,255,30 <=  CC < 40
>>>> 45,98,176,74,255,40 <=  CC < 50
>>>> 55,59,153,43,255,50 <= CC < 60
>>>> 65,0,128,0,255,60 <=  CC < 70
>>>> 75,15,92,11,255,70 <=  CC < 80
>>>> 85,17,61,12,255,80 <=  CC < 90
>>>> 95,16,36,12,255,90 <=  CC <= 100
>>>>
>>>> In my example if I don't assign a value it gets ignored by QGIS.  If
>>>> you are wondering how to assign unique colors to say 200 unique
>>>> values...just script it.  I have done this and as long as you have the
>>>> number of unique values you want and to make them unique in the script it
>>>> works.
>>>>
>>>> I hope this helps.  I know it isn't a "button" but to be honest I like
>>>> this better.  If you already knew this...well then maybe it will help
>>>> someone out in the future.
>>>>
>>>> --Chris
>>>>
>>>> On Mon, Jan 9, 2017 at 3:00 PM, <qgis-user-request at lists.osgeo.org>
>>>> wrote:
>>>>
>>>>> Send Qgis-user mailing list submissions to
>>>>>         qgis-user at lists.osgeo.org
>>>>>
>>>>> To subscribe or unsubscribe via the World Wide Web, visit
>>>>>         <http://lists.osgeo.org/mailman/listinfo/qgis-user>
>>>>> http://lists.osgeo.org/mailman/listinfo/qgis-user
>>>>> or, via email, send a message with subject or body 'help' to
>>>>>         qgis-user-request at lists.osgeo.org
>>>>>
>>>>> You can reach the person managing the list at
>>>>>         qgis-user-owner at lists.osgeo.org
>>>>>
>>>>> When replying, please edit your Subject line so it is more specific
>>>>> than "Re: Contents of Qgis-user digest..."
>>>>>
>>>>>
>>>>> Today's Topics:
>>>>>
>>>>>    1. Re: Symbolizing a discrete or a boolean raster (Stéphane Henriod)
>>>>>
>>>>>
>>>>> ----------------------------------------------------------------------
>>>>>
>>>>> Message: 1
>>>>> Date: Mon, 9 Jan 2017 23:07:36 +0600
>>>>> From: Stéphane Henriod <s at henriod.info>
>>>>> To: Enrico Fiore <enricofiore at libero.it>
>>>>> Cc: qgis-user <qgis-user at lists.osgeo.org>
>>>>> Subject: Re: [Qgis-user] Symbolizing a discrete or a boolean raster
>>>>> Message-ID:
>>>>>         <CAK6pVBXURm_e7dRP+8SP9amPUUX0+Cn3GVxLPNjOHhno85o2rA at mail.gm
>>>>> ail.com>
>>>>> Content-Type: text/plain; charset="utf-8"
>>>>>
>>>>> Hi
>>>>>
>>>>> thanks for following up!
>>>>>
>>>>> It actually does part of the job!
>>>>>
>>>>> Using *Color interpretation: Exact*, I can indeed input the exact
>>>>> values I
>>>>> want to display (1,5 and 10) and all other pixels are hidden.
>>>>>
>>>>> HOWEVER,
>>>>>
>>>>> this still feels like a workaround:
>>>>>
>>>>>    - In the case of a discrete raster with many (> 50) unique values,
>>>>> I do
>>>>>    not want to input all of them manually
>>>>>    - In some cases, I do not know in advance all the unique values of
>>>>> my
>>>>>    raster
>>>>>    - If I click on *Classify*, QGIS will choose X values (based on the
>>>>>    number of classes and the classification method (continuous or equal
>>>>>    interval)), which no longer match the "exact" values of my raster.
>>>>> It
>>>>>    doesn't really make sense to classify a discrete rendering
>>>>>
>>>>> So I would say, we still need a render type "discrete raster" which
>>>>> offers
>>>>> the function to "retrieve all unique values" (and automatically apply a
>>>>> discrete color ramp)
>>>>>
>>>>> Attached a (fake) test dataset.
>>>>>
>>>>> Thanks and cheers
>>>>>
>>>>> Stéphane
>>>>>
>>>>>
>>>>> Le lundi 9 janvier 2017, Enrico Fiore <enricofiore at libero.it> a écrit
>>>>> :
>>>>>
>>>>> > Hi,
>>>>> > Sorry I can't do test, but if you use exact in color interpolation
>>>>> > parameter?
>>>>> >
>>>>> > Cheers
>>>>> >
>>>>> > Enrico
>>>>>
>>>>>
>>>>> Le lundi 9 janvier 2017, Stéphane Henriod <s at henriod.info> a écrit :
>>>>>
>>>>> > Hi
>>>>> >
>>>>> > unfortunately this is doing quite something different!
>>>>> >
>>>>> > If I have a raster with 10 Landcover classes (1,2,3,4,5,6,7,8,9,10)
>>>>> and I
>>>>> > want to display only 1,5 and 10, using *Discrete *(1: red, 5:
>>>>> yellow, 10:
>>>>> > blue) the following will happen:
>>>>> >
>>>>> > All pixels between 1 and 4 will be red
>>>>> > All pixels between 5 and 9 will be yellow
>>>>> > All pixels with 10 will be blue
>>>>> >
>>>>> > In this sense, the pixels are indeed not interpolated, but this
>>>>> still is
>>>>> > not the behavior I am expecting when styling discrete rasters.
>>>>> >
>>>>> > A "style discrete raster" function should offer the following:
>>>>> >
>>>>> >    - Automatically recover all unique values from the raster
>>>>> >    - Only display the pixels to which the user has explicitly
>>>>> assigned a
>>>>> >    color
>>>>> >
>>>>> > But thanks for your hint, this can be helpful in other cases!
>>>>> >
>>>>> > Cheers
>>>>> >
>>>>> > Stéphane
>>>>> >
>>>>> >
>>>>> > Le lundi 9 janvier 2017, Enrico Fiore <enricofiore at libero.it
>>>>> > <javascript:_e(%7B%7D,'cvml','enricofiore at libero.it');>> a écrit :
>>>>> >
>>>>> >> Hi,
>>>>> >> I think that the solution is in the QGIS documentation, that you
>>>>> can read
>>>>> >> here:
>>>>> <http://docs.qgis.org/2.14/en/docs/user_manual/working_with_r>
>>>>> http://docs.qgis.org/2.14/en/docs/user_manual/working_with_r
>>>>> >> aster/raster_properties.html#band-rendering
>>>>> >> you have to use *Singleband pseudocolor *and set color
>>>>> interpolation to
>>>>> >> Discrete.
>>>>> >>
>>>>> >> Enrico
>>>>> >>
>>>>> >>
>>>>> >> ----Messaggio originale----
>>>>> >> Da: "Stéphane Henriod" <s at henriod.info>
>>>>> >> Data: 09/01/2017 6.30
>>>>> >> A: "qgis-user"<qgis-user at lists.osgeo.org>
>>>>> >> Ogg: [Qgis-user] Symbolizing a discrete or a boolean raster
>>>>> >>
>>>>> >> Dear all
>>>>> >>
>>>>> >> As much as I love QGIS and use it in my everyday life, there is one
>>>>> >> feature that I find particularly annoying: the styling of discrete
>>>>> rasters.
>>>>> >>
>>>>> >> Basically, if I have a raster layer consisting of discrete landcover
>>>>> >> values (1: water, 2: forest, 3: built-up), it seems that there is
>>>>> no easy
>>>>> >> way to style it. QGIS will assume that the data is continuous and
>>>>> basically
>>>>> >> interpolate the color between each value, which leads to the
>>>>> following
>>>>> >> issues:
>>>>> >>
>>>>> >> Let's say I want to display only water and built-up (values 1 and
>>>>> 3),
>>>>> >> water in blue and built-up in grey. QGIS will still display the
>>>>> forests,
>>>>> >> using a color somewhere "between" blue and grey. My only left
>>>>> option is to
>>>>> >> process the raster to actually replace all the 2 with NoData, which
>>>>> is
>>>>> >> highly unpractical...
>>>>> >>
>>>>> >> Same if I have a boolean raster (only 0 and 1 values). QGIS will by
>>>>> >> default make a color ramp from 0 to 0.9999.
>>>>> >>
>>>>> >> Also, the whole rather feels like a work-around for a missing
>>>>> feature.
>>>>> >>
>>>>> >> I dream of a feature similar to this one from ArcGIS:
>>>>> >> <http://resources.arcgis.com/en/help/main/10.1/index>
>>>>> http://resources.arcgis.com/en/help/main/10.1/index.
>>>>> >> html#/representing_unique_categories_such_as_land_use/009t00
>>>>> 000074000000/
>>>>> >> where all unique values are styled independently and where I can
>>>>> easily
>>>>> >> skip the values I don't want to see on my map.
>>>>> >>
>>>>> >> I asked a question here:
>>>>> >> <http://gis.stackexchange.com/questions/194116/qgis-style-a-d>
>>>>> http://gis.stackexchange.com/questions/194116/qgis-style-a-d
>>>>> >> iscrete-raster
>>>>> >>
>>>>> >> and opened a ticket here:
>>>>> >> <http://hub.qgis.org/issues/14845>http://hub.qgis.org/issues/14845
>>>>> >>
>>>>> >> But none has gotten lots of attention yet... Am I the only one to be
>>>>> >> annoyed by this? If no, please raise your hand and let's try to get
>>>>> some
>>>>> >> momentum and see how to push this feature forward!
>>>>> >>
>>>>> >> Thanks a lot in advance!
>>>>> >>
>>>>> >> Cheers
>>>>> >>
>>>>> >> Stéphane
>>>>> >>
>>>>> >>
>>>>> >
>>>>>
>>>>> --
>>>>> Stéphane Henriod
>>>>> CIM-Expert for GIS and Green Economy Statistics
>>>>>
>>>>> Национальный статистический комитет Кыргызской Республики
>>>>> Кыргыз Республикасынын Улуттук статистика комитети
>>>>> National Statistical Committee of the Kyrgyz Republic
>>>>>
>>>>> 374 Фрунзе ул. / Frunze str.
>>>>> 720033 Бишкек / Bishkek
>>>>>
>>>>> T   +996 778 46 99 02 (KG)
>>>>> T   +49 176 280 11 050 <+49%20176%2028011050> (DE)
>>>>> E    s at henriod.info
>>>>> W   http://www.stat.kg
>>>>> W3W: nightfall.into.bucket
>>>>> <https://map.what3words.com/nightfall.into.bucket>  //
>>>>> запас.союз.дружный
>>>>> <https://map.what3words.com/запас.союз.дружный>
>>>>> -------------- next part --------------
>>>>> An HTML attachment was scrubbed...
>>>>> URL: <
>>>>> <http://lists.osgeo.org/pipermail/qgis-user/attachments/20170109/985fd14c/attachment-0001.html>
>>>>> http://lists.osgeo.org/pipermail/qgis-user/attachments/2017
>>>>> 0109/985fd14c/attachment-0001.html>
>>>>> -------------- next part --------------
>>>>> A non-text attachment was scrubbed...
>>>>> Name: landcover.zip
>>>>> Type: application/zip
>>>>> Size: 2151 bytes
>>>>> Desc: not available
>>>>> URL: <
>>>>> <http://lists.osgeo.org/pipermail/qgis-user/attachments/20170109/985fd14c/attachment-0001.zip>
>>>>> http://lists.osgeo.org/pipermail/qgis-user/attachments/2017
>>>>> 0109/985fd14c/attachment-0001.zip>
>>>>>
>>>>> ------------------------------
>>>>>
>>>>> Subject: Digest Footer
>>>>>
>>>>> _______________________________________________
>>>>> Qgis-user mailing list
>>>>> Qgis-user at lists.osgeo.org
>>>>> List info: <http://lists.osgeo.org/mailman/listinfo/qgis-user>
>>>>> http://lists.osgeo.org/mailman/listinfo/qgis-user
>>>>> Unsubscribe: <http://lists.osgeo.org/mailman/listinfo/qgis-user>
>>>>> http://lists.osgeo.org/mailman/listinfo/qgis-user
>>>>>
>>>>> ------------------------------
>>>>>
>>>>> End of Qgis-user Digest, Vol 131, Issue 13
>>>>> ******************************************
>>>>>
>>>>
>>>>
>>>
>>> --
>>> Stéphane Henriod
>>> CIM-Expert for GIS and Green Economy Statistics
>>>
>>> Национальный статистический комитет Кыргызской Республики
>>> Кыргыз Республикасынын Улуттук статистика комитети
>>> National Statistical Committee of the Kyrgyz Republic
>>>
>>> 374 Фрунзе ул. / Frunze str.
>>> 720033 Бишкек / Bishkek
>>>
>>> T   +996 778 46 99 02 (KG)
>>> T   +49 176 280 11 050 <+49%20176%2028011050> (DE)
>>> E    s at henriod.info
>>> W   http://www.stat.kg
>>> W3W: nightfall.into.bucket
>>> <https://map.what3words.com/nightfall.into.bucket>  //
>>> запас.союз.дружный
>>> <https://map.what3words.com/%D0%B7%D0%B0%D0%BF%D0%B0%D1%81.%D1%81%D0%BE%D1%8E%D0%B7.%D0%B4%D1%80%D1%83%D0%B6%D0%BD%D1%8B%D0%B9>
>>>
>>>
>>> _______________________________________________
>>> Qgis-user mailing list
>>> Qgis-user at lists.osgeo.org
>>> List info: http://lists.osgeo.org/mailman/listinfo/qgis-user
>>> Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-user
>>>
>>
>>
>>
>> _______________________________________________
>> Qgis-user mailing listQgis-user at lists.osgeo.org
>> List info: http://lists.osgeo.org/mailman/listinfo/qgis-user
>> Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-user
>>
>>
>> --
>> *Richard McDonnell*
>> *GIS Specialist PgD GIS AssocSCSI*
>> *OPW FRM Data Management*
>> *52 Stephens Green, Dublin 2.*
>> TEL: 01 6476543
>>
>> <http://www.opw.ie/>
>>
>
>
> --
> Stéphane Henriod
> CIM-Expert for GIS and Green Economy Statistics
>
> Национальный статистический комитет Кыргызской Республики
> Кыргыз Республикасынын Улуттук статистика комитети
> National Statistical Committee of the Kyrgyz Republic
>
> 374 Фрунзе ул. / Frunze str.
> 720033 Бишкек / Bishkek
>
> T   +996 778 46 99 02 (KG)
> T   +49 176 280 11 050 <+49%20176%2028011050> (DE)
> E    s at henriod.info
> W   http://www.stat.kg
> W3W: nightfall.into.bucket
> <https://map.what3words.com/nightfall.into.bucket>  //  запас.союз.дружный
> <https://map.what3words.com/запас.союз.дружный>
>
>
> _______________________________________________
> Qgis-user mailing list
> Qgis-user at lists.osgeo.org
> List info: http://lists.osgeo.org/mailman/listinfo/qgis-user
> Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-user
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-user/attachments/20170111/5b8d249c/attachment.html>


More information about the Qgis-user mailing list