[Qgis-developer] Legend for proportionnal symbols and expression based symbols

2013-12-04 Thread Régis Haubourg
Hi All, 
we have a long lasting problem with proportionnal legends in QGIS. It gets
more problematic with V2, as those maps are so beautiful and popular. 

I'm starting some brainstorming to clarify fonctionnal specifications what
we actually want to have legends in layers registry and composer working. 

Here are some exemples of what I would love to see in legends:
 - [0] proportionnal circles or square with 1 to 5 classes
 - [1] proportionnal symbols AND colors 

Now that we have expressions everywhere, we probably will have to handle
legends differently than in other GIS, where legend is generated once, when
user tune symbology. Let me explain:

- user can now define expressions for size, color, rotation, border width...
for any sub-marker (1 to n) of a symbol. 
- Moreover, we can use conditionnal expressions, and scale dependent
conditions ($scale variable). 
- QGIS is also a server, we need to be able to generate legends working on
really displayed datas.

Conclusion, It now is impossible to correctly pre-generate the legend by
analysing symbology properties. 

Does this sound possible to developpers to explore some other way? We could
read real dataset to collect informations to build a legend, and eventually
do some statistical classification to get discrete classes from continuous
data? 

We could do that on live or on-demand update maybe. 

My idea was to collect rendered object in current canvas and current scale.
BUT.. we can face discrete data - some kind of SELECT DISTINCT can do the
trick - , OR continuous data - we need then to do some statistical
classification to reduce the legend to 1 - 10 classes to get it readable. 
We also need some intelligence in those statistical classifications:
 - round values to keep it readable
 - display separate classes only if size or color distance is long enough so
that human eye sees some difference on screen. ie: do not display for
classes if symbol size varies from 0.5 to 0.7... 
 - add some options in GUI to choose number of classes, type of legend
rendering.. 
 - keep the classification process fast (subset of data with random
sampling?) 
 - test all use cases, I'm mostly thinking of points symbols, but lines and
polygons must not be forgotten.

I'm sure plenty of scientists have already been theorizing all this. Any
opinions? Could this be an idea for GSoC or other kind of training course?  

I'll be pleased to get feedback from the community. 

Cheers
Régis 

[0] http://kelsocartography.com/blog/?p=2224
[1] http://www.geoclip.fr/img/bicol.jpg





--
View this message in context: 
http://osgeo-org.1560.x6.nabble.com/Legend-for-proportionnal-symbols-and-expression-based-symbols-tp5092635.html
Sent from the Quantum GIS - Developer mailing list archive at Nabble.com.
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Re: [Qgis-developer] Legend for proportionnal symbols and expression based symbols

2013-12-04 Thread Denis Rouzaud

Hi régis,

Martin Dobias will make a proposal soon for a legend refactoring.
You should see with him how to let those things happen in the future in 
the new legend.


Cheers,

Denis


On 04. 12. 13 12:08, Régis Haubourg wrote:

Hi All,
we have a long lasting problem with proportionnal legends in QGIS. It gets
more problematic with V2, as those maps are so beautiful and popular.

I'm starting some brainstorming to clarify fonctionnal specifications what
we actually want to have legends in layers registry and composer working.

Here are some exemples of what I would love to see in legends:
  - [0] proportionnal circles or square with 1 to 5 classes
  - [1] proportionnal symbols AND colors

Now that we have expressions everywhere, we probably will have to handle
legends differently than in other GIS, where legend is generated once, when
user tune symbology. Let me explain:

- user can now define expressions for size, color, rotation, border width...
for any sub-marker (1 to n) of a symbol.
- Moreover, we can use conditionnal expressions, and scale dependent
conditions ($scale variable).
- QGIS is also a server, we need to be able to generate legends working on
really displayed datas.

Conclusion, It now is impossible to correctly pre-generate the legend by
analysing symbology properties.

Does this sound possible to developpers to explore some other way? We could
read real dataset to collect informations to build a legend, and eventually
do some statistical classification to get discrete classes from continuous
data?

We could do that on live or on-demand update maybe.

My idea was to collect rendered object in current canvas and current scale.
BUT.. we can face discrete data - some kind of SELECT DISTINCT can do the
trick - , OR continuous data - we need then to do some statistical
classification to reduce the legend to 1 - 10 classes to get it readable.
We also need some intelligence in those statistical classifications:
  - round values to keep it readable
  - display separate classes only if size or color distance is long enough so
that human eye sees some difference on screen. ie: do not display for
classes if symbol size varies from 0.5 to 0.7...
  - add some options in GUI to choose number of classes, type of legend
rendering..
  - keep the classification process fast (subset of data with random
sampling?)
  - test all use cases, I'm mostly thinking of points symbols, but lines and
polygons must not be forgotten.

I'm sure plenty of scientists have already been theorizing all this. Any
opinions? Could this be an idea for GSoC or other kind of training course?

I'll be pleased to get feedback from the community.

Cheers
Régis

[0] http://kelsocartography.com/blog/?p=2224
[1] http://www.geoclip.fr/img/bicol.jpg





--
View this message in context: 
http://osgeo-org.1560.x6.nabble.com/Legend-for-proportionnal-symbols-and-expression-based-symbols-tp5092635.html
Sent from the Quantum GIS - Developer mailing list archive at Nabble.com.
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Re: [Qgis-developer] Legend for proportionnal symbols and expression based symbols

2013-12-04 Thread Nyall Dawson
I haven't had a chance to properly plan this out, but something which
has been playing in the back of my mind is the idea of table
legends. Take a look at the legend in this map:
http://www.cartogrammar.com/images/vba/cervical_cancer.jpg
I'm thinking the user could specify the variable which is changed
along each axis, along with the min/max value for that axis and number
of rows/columns for the table. Then the classes would be generated
automatically (maybe equal ranges? equal count? user specified?) and
the symbol automatically generated for each cell in the table.

The size and spacing of each cell could be user controlled, so that
this type of legend would also work for symbol layers.

As I said, I haven't really sat down to work out exactly how this
would work yet... it's just a rough idea which I've been toying with!

Nyall


On 4 December 2013 22:34, Denis Rouzaud denis.rouz...@gmail.com wrote:
 Hi régis,

 Martin Dobias will make a proposal soon for a legend refactoring.
 You should see with him how to let those things happen in the future in the
 new legend.

 Cheers,

 Denis



 On 04. 12. 13 12:08, Régis Haubourg wrote:

 Hi All,
 we have a long lasting problem with proportionnal legends in QGIS. It gets
 more problematic with V2, as those maps are so beautiful and popular.

 I'm starting some brainstorming to clarify fonctionnal specifications what
 we actually want to have legends in layers registry and composer working.

 Here are some exemples of what I would love to see in legends:
   - [0] proportionnal circles or square with 1 to 5 classes
   - [1] proportionnal symbols AND colors

 Now that we have expressions everywhere, we probably will have to handle
 legends differently than in other GIS, where legend is generated once,
 when
 user tune symbology. Let me explain:

 - user can now define expressions for size, color, rotation, border
 width...
 for any sub-marker (1 to n) of a symbol.
 - Moreover, we can use conditionnal expressions, and scale dependent
 conditions ($scale variable).
 - QGIS is also a server, we need to be able to generate legends working on
 really displayed datas.

 Conclusion, It now is impossible to correctly pre-generate the legend by
 analysing symbology properties.

 Does this sound possible to developpers to explore some other way? We
 could
 read real dataset to collect informations to build a legend, and
 eventually
 do some statistical classification to get discrete classes from continuous
 data?

 We could do that on live or on-demand update maybe.

 My idea was to collect rendered object in current canvas and current
 scale.
 BUT.. we can face discrete data - some kind of SELECT DISTINCT can do the
 trick - , OR continuous data - we need then to do some statistical
 classification to reduce the legend to 1 - 10 classes to get it readable.
 We also need some intelligence in those statistical classifications:
   - round values to keep it readable
   - display separate classes only if size or color distance is long enough
 so
 that human eye sees some difference on screen. ie: do not display for
 classes if symbol size varies from 0.5 to 0.7...
   - add some options in GUI to choose number of classes, type of legend
 rendering..
   - keep the classification process fast (subset of data with random
 sampling?)
   - test all use cases, I'm mostly thinking of points symbols, but lines
 and
 polygons must not be forgotten.

 I'm sure plenty of scientists have already been theorizing all this. Any
 opinions? Could this be an idea for GSoC or other kind of training course?

 I'll be pleased to get feedback from the community.

 Cheers
 Régis

 [0] http://kelsocartography.com/blog/?p=2224
 [1] http://www.geoclip.fr/img/bicol.jpg





 --
 View this message in context:
 http://osgeo-org.1560.x6.nabble.com/Legend-for-proportionnal-symbols-and-expression-based-symbols-tp5092635.html
 Sent from the Quantum GIS - Developer mailing list archive at Nabble.com.
 ___
 Qgis-developer mailing list
 Qgis-developer@lists.osgeo.org
 http://lists.osgeo.org/mailman/listinfo/qgis-developer


 ___
 Qgis-developer mailing list
 Qgis-developer@lists.osgeo.org
 http://lists.osgeo.org/mailman/listinfo/qgis-developer
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] Legend for proportionnal symbols and expression based symbols

2013-12-04 Thread Mathieu Pellerin
Now that's just gorgeous.




On Wed, Dec 4, 2013 at 7:13 PM, Nyall Dawson nyall.daw...@gmail.com wrote:

 I haven't had a chance to properly plan this out, but something which
 has been playing in the back of my mind is the idea of table
 legends. Take a look at the legend in this map:
 http://www.cartogrammar.com/images/vba/cervical_cancer.jpg
 I'm thinking the user could specify the variable which is changed
 along each axis, along with the min/max value for that axis and number
 of rows/columns for the table. Then the classes would be generated
 automatically (maybe equal ranges? equal count? user specified?) and
 the symbol automatically generated for each cell in the table.

 The size and spacing of each cell could be user controlled, so that
 this type of legend would also work for symbol layers.

 As I said, I haven't really sat down to work out exactly how this
 would work yet... it's just a rough idea which I've been toying with!

 Nyall


 On 4 December 2013 22:34, Denis Rouzaud denis.rouz...@gmail.com wrote:
  Hi régis,
 
  Martin Dobias will make a proposal soon for a legend refactoring.
  You should see with him how to let those things happen in the future in
 the
  new legend.
 
  Cheers,
 
  Denis
 
 
 
  On 04. 12. 13 12:08, Régis Haubourg wrote:
 
  Hi All,
  we have a long lasting problem with proportionnal legends in QGIS. It
 gets
  more problematic with V2, as those maps are so beautiful and popular.
 
  I'm starting some brainstorming to clarify fonctionnal specifications
 what
  we actually want to have legends in layers registry and composer
 working.
 
  Here are some exemples of what I would love to see in legends:
- [0] proportionnal circles or square with 1 to 5 classes
- [1] proportionnal symbols AND colors
 
  Now that we have expressions everywhere, we probably will have to handle
  legends differently than in other GIS, where legend is generated once,
  when
  user tune symbology. Let me explain:
 
  - user can now define expressions for size, color, rotation, border
  width...
  for any sub-marker (1 to n) of a symbol.
  - Moreover, we can use conditionnal expressions, and scale dependent
  conditions ($scale variable).
  - QGIS is also a server, we need to be able to generate legends working
 on
  really displayed datas.
 
  Conclusion, It now is impossible to correctly pre-generate the legend by
  analysing symbology properties.
 
  Does this sound possible to developpers to explore some other way? We
  could
  read real dataset to collect informations to build a legend, and
  eventually
  do some statistical classification to get discrete classes from
 continuous
  data?
 
  We could do that on live or on-demand update maybe.
 
  My idea was to collect rendered object in current canvas and current
  scale.
  BUT.. we can face discrete data - some kind of SELECT DISTINCT can do
 the
  trick - , OR continuous data - we need then to do some statistical
  classification to reduce the legend to 1 - 10 classes to get it
 readable.
  We also need some intelligence in those statistical classifications:
- round values to keep it readable
- display separate classes only if size or color distance is long
 enough
  so
  that human eye sees some difference on screen. ie: do not display for
  classes if symbol size varies from 0.5 to 0.7...
- add some options in GUI to choose number of classes, type of legend
  rendering..
- keep the classification process fast (subset of data with random
  sampling?)
- test all use cases, I'm mostly thinking of points symbols, but lines
  and
  polygons must not be forgotten.
 
  I'm sure plenty of scientists have already been theorizing all this. Any
  opinions? Could this be an idea for GSoC or other kind of training
 course?
 
  I'll be pleased to get feedback from the community.
 
  Cheers
  Régis
 
  [0] http://kelsocartography.com/blog/?p=2224
  [1] http://www.geoclip.fr/img/bicol.jpg
 
 
 
 
 
  --
  View this message in context:
 
 http://osgeo-org.1560.x6.nabble.com/Legend-for-proportionnal-symbols-and-expression-based-symbols-tp5092635.html
  Sent from the Quantum GIS - Developer mailing list archive at
 Nabble.com.
  ___
  Qgis-developer mailing list
  Qgis-developer@lists.osgeo.org
  http://lists.osgeo.org/mailman/listinfo/qgis-developer
 
 
  ___
  Qgis-developer mailing list
  Qgis-developer@lists.osgeo.org
  http://lists.osgeo.org/mailman/listinfo/qgis-developer
 ___
 Qgis-developer mailing list
 Qgis-developer@lists.osgeo.org
 http://lists.osgeo.org/mailman/listinfo/qgis-developer

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Re: [Qgis-developer] Legend for proportionnal symbols and expression based symbols

2013-12-04 Thread Régis Haubourg
3nids wrote
 Hi régis,
 
 Martin Dobias will make a proposal soon for a legend refactoring.
 You should see with him how to let those things happen in the future in 
 the new legend.
 
 Cheers,
 
 Denis

Good to know! thanks Denis. I'll contact Martin



--
View this message in context: 
http://osgeo-org.1560.x6.nabble.com/Legend-for-proportionnal-symbols-and-expression-based-symbols-tp5092635p5092677.html
Sent from the Quantum GIS - Developer mailing list archive at Nabble.com.
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer