Mmm, I see ... is there no chance to have some feedbaks from uDig guys? It
could be a suitable solution to introduce a parameter here too in your
opinion?

On Thu, May 22, 2008 at 3:05 PM, Andrea Aime <[EMAIL PROTECTED]> wrote:

> Alessio Fabiani ha scritto:
>
>> Hi Andrea,
>> see responses below...
>>
>> On Thu, May 22, 2008 at 12:22 PM, Andrea Aime <[EMAIL PROTECTED]<mailto:
>> [EMAIL PROTECTED]>> wrote:
>>
>>    Hi,
>>    in the project we're following we need to make a couple of variants
>>    to the sldService, so I guess I'll need to discuss them a bit to make
>>    sure we don't break FAO users of that module.
>>
>>    The first thing I need, is to change the generated rules so that they
>>    all use closed intervals, such as:
>>    0 <= x <= 10
>>    10 < x <= 20
>>    20 < x <= 30
>>    as opposed of today's result:
>>    x <= 10
>>    10 < x <= 20
>>    x > 20
>>
>>    In order to do that without breaking current users, I was thinking
>>    of adding a new parameter, closedIntervals=true/false to the POST
>>    call that generates the intervals.
>>
>>
>> Even using directly closing intervals won't break FAO implementation, so
>> use the solution you prefer ... however using the closingIntervals parameter
>> would give higher control on the rules generation, so in my opinion we
>> should go for it.
>>
>
> Ok, I'll add the parameter.
>
>
>
>>    The second issue is dealing with odd but not uncommon data histograms
>>    like, for example {0 0 0 0 2 4 6 8}. If you ask the current quantile
>>    classifier to classify that with 4 intervals, you'll get {0 0}, {0 0},
>>    {2 4} {6 8}, which would result in very confusing rules (see attached
>>    screenshot for an example).
>>
>>    One idea I had is to make the quantile function detect the flat areas
>>    and make it create separate classes for them, and then classify the
>>    rest using the standard sized classes. The above example would then
>>    become: {0 0 0 0} {2 4} {6 8}.
>>    Another example: {0 1 2 3 3 3 4 5}, 2 classes -> {0 1 2} {3 3 3} {4 5},
>>    that is, first isolate the flat area, then try to build classes of 4
>>    elements with the rest of the data, accepting the fact that more
>> classes
>>    than requested may be generated.
>>
>>    Another possible approach, which is easier because we can handle it
>>    in post processing, that is, when building the rules, would be to
>>    simply kill subsequent classes that do have the same min and max.
>>    With the
>>    above examples, the rules would become:
>>    {0 0 0 0 2 4 6 8}
>>    x = 0 (killing the second x = 0 interval)
>>    0 < x <= 4
>>    4 < x <= 8
>>    or if you prefer, {0 0 0 0} {2 4} {6 8}
>>    and:
>>    {0 1 2 3 3 3 4 5}
>>    0 <= x <= 3
>>    3 < x <= 5
>>    that is {0 1 2 3 3 3} {4 5}
>>
>>    If the latter is good for FAO as well, I can just modify the way
>>    we build the rules and avoid touching the underlying quantile
>>    classification function. Opinions?
>>
>>
>> I would prefer that simply the quantile generates the right rules, I don't
>> think that post-processing would be a good approach. I would prefer to
>> modify the client behaviour accepting the fact that quantile can generate a
>> different number of classes than requested.
>>
>
> It's not that simple for two reasons:
> * the way the current quantile function works is mathematically sound,
>  it's the data in the samples above that should not be fed into it.
>  That is, {0 0} {0 0} {2 4} {6 8} is the right answer from a
>  mathematical standpoint, 4 classes each of which has the same number
>  of elements in it, and thus the same probability of representing
>  a feature in the map.
> * uDig is already using it as is, I cannot just go and change the
>  functionality of it under its feet.
>
> I tried to discuss this on the gt2-devel mailing list, but did not have
> very good success. That's why post processing seems the easiest and most
> effective way of dealing with it.
> Cheers
> Andrea
>



-- 
-------------------------------------------------------
Eng. Alessio Fabiani
Vice-President /CTO GeoSolutions S.A.S.
Via Carignoni 51
55041 Camaiore (LU)
Italy

phone: +39 0584983027
fax: +39 0584983027
mob: +39 349 8227000


http://www.geo-solutions.it

-------------------------------------------------------
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Geoserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Reply via email to