Fri, Jul 28 2006
15:56:04
|
|
Request created by guest
|
|
Subject: ps.map: legend of vpoints sizes
Platform: GNU/Linux/x86
grass obtained from: CVS
grass binary for platform: Compiled from Sources
GRASS Version: cvs_head_20060724
The sizecol option of the vpoints command in ps.map allows to make the point
symbols' size vary with the value of an attribute column.
It would be great if there was some sort of legend command which would allow
to create a legend of these circle sizes. It would mean taking the icon and scale
from the vpoints command, applying the desired legend values and positioning
this legend somewhere, plus the normal text options for the legend text.
Moritz |
|
Mon, Jul 31 2006
12:20:20
|
|
Mail sent by mlennert@club.worldonline.be
|
|
Return-Path |
<mlennert@club.worldonline.be>
|
Delivered-To |
grass-bugs@lists.intevation.de
|
Message-ID |
<44CDD966.3040805@club.worldonline.be>
|
Date |
Mon, 31 Jul 2006 12:20:22 +0200
|
From |
Moritz Lennert <mlennert@club.worldonline.be>
|
User-Agent |
Thunderbird 1.5.0.4 (X11/20060713)
|
MIME-Version |
1.0
|
To |
Request Tracker <grass-bugs@intevation.de>
|
Cc |
grass-dev@grass.itc.it, Hamish <hamish_nospam@yahoo.com>
|
Subject |
Re: [GRASS-dev] [bug #4917] (grass) ps.map: legend of vpoints sizes
|
References |
<20060728135604.6A35E1005CA@lists.intevation.de>
|
In-Reply-To |
<20060728135604.6A35E1005CA@lists.intevation.de>
|
Content-Type |
text/plain; charset=ISO-8859-1; format=flowed
|
Content-Transfer-Encoding |
7bit
|
X-Virus-Scanned |
by amavisd-new at intevation.de
|
X-Spam-Status |
No, hits=-4.129 tagged_above=-999 required=3 tests=[AWL=0.871, BAYES_00=-5]
|
X-Spam-Level |
|
Request Tracker wrote:
> this bug's URL: http://intevation.de/rt/webrt?serial_num=4917
> -------------------------------------------------------------------------
>
>
> Subject: ps.map: legend of vpoints sizes
>
> Platform: GNU/Linux/x86 grass obtained from: CVS grass binary for
> platform: Compiled from Sources GRASS Version: cvs_head_20060724
>
> The sizecol option of the vpoints command in ps.map allows to make
> the point symbols' size vary with the value of an attribute column.
> It would be great if there was some sort of legend command which
> would allow to create a legend of these circle sizes. It would mean
> taking the icon and scale from the vpoints command, applying the
> desired legend values and positioning this legend somewhere, plus the
> normal text options for the legend text.
>
Still thinking of how to implement this best, I am thinking along the
following lines:
- add an lvalues option to the vpoints command which would take the
values for which one would like to draw symbols in the legend:
i.e.: lvalues 500,2500,10000
- modify lines 216-216 in ps/ps.map/ps_vlegend.c so that it draws as
many symbols as needed
Does this general idea sound reasonable, or should such a legend be
drawn separately from the vlegend ?
Issues that need to be solved:
- should the symbols be drawn inside each other (easy for circles, but
maybe not for others) ?
- if they are not inside each other should they be next to each other or
one above the other
- if the latter, then each should probably be registered seperately in
vec[][] / nvec[]
- how to deal with the text: draw lines from symbols to (small) text,
write values next to each other in the same order as the symbols, e.g.:
o O 10 50
Hamish, as you are the ps.map expert, what do you think ?
Moritz
|
|
Mon, Aug 28 2006
06:23:26
|
|
Area changed to grass6 by hbowman
|
|
Mon, Aug 28 2006
06:37:19
|
|
Comments added by hbowman
|
|
Hi,
I've changed this wish to a bug as it is broken to offer symbol sizing but not
allow the user to reference what those sizes mean. (this is my fault, but I'm
not taking ownership of the bug as I don't have much time to work on it right
now. Maybe someone else can take it up?)
My idea for how it should look:
just like multiple vpoints symbol listings in the vector legend, symbol on the
left at the given size with text on the right. multiple circles in powers of
10 (or whatever), one per line, lines spaced as needed. We should make an
effort to calculate the sizes used automatically from the data range, with a
custom-override setting (e.g. default 5 entries, just like ps.map's floating
point colorbar [reuse that code]). Tapping into or extending the existing
vlegend C array would be best (if that doesn't require too many changes).
Using concentric circles is an interesting idea, but as they get smaller than
1cm labeling them gets tricky/messy. Same if the symbol used isn't a circle.
Hamish
|
|