<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>Moritz,</div><div><br class="webkit-block-placeholder"></div><div>I'm really excited about this. Thanks so much for the efforts. I'll certainly try it out if I can (intensive proposal writing for the next week). In the meantime, here are a few comments based on your email and the html docs.</div><div><br class="webkit-block-placeholder"></div><div>I agree with the idea of chaining smaller modules. d.vect.thematic is really complicated and bloated by having to include all the functionality into a single module.</div><div><br></div><div>v.class is similar to r.stats in what it does. You might want to consider naming it v.stats to make it easier for users to grok this similarity. I assume that v.class will also output to a text file?</div><div><br class="webkit-block-placeholder"></div><div>I'd rename the thematic modules to d.thematic.area, d.thematic.point, d.thematic.legend. This lets them easily group in any alphabetical listing and clearly associates them. It also uses consistent GIS objects for the subname of each (i.e., point instead of symbol, because points and areas are the objects being displayed). </div><div><br class="webkit-block-placeholder"></div><div>What about lines? Can v.class classify lines and boundaries, and d.area.thematic display them by color and thickness? Or will that need another module?</div><div><br class="webkit-block-placeholder"></div><div>Finally, is there any way to make use of color table capabilities, like used with r.colors? This would allow a lot of nice displays more easily than having to list colors.</div><div><br class="webkit-block-placeholder"></div><div>Thanks again for doing this.</div><div><br class="webkit-block-placeholder"></div><div>Michael</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>Can we make use of the kind of color tables used by r.colors to get color ramps in d.area.thematic?</div><div><br></div><div>On Dec 29, 2007, at 10:00 AM, <a href="mailto:grass-dev-request@lists.osgeo.org">grass-dev-request@lists.osgeo.org</a> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; color: #000000; min-height: 14.0px"><b></b><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>From: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Moritz Lennert <<a href="mailto:mlennert@club.worldonline.be">mlennert@club.worldonline.be</a>></font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>Date: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica">December 29, 2007 9:22:44 AM MST</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>To: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica">GRASS devel <<a href="mailto:grass-dev@lists.osgeo.org">grass-dev@lists.osgeo.org</a>></font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>Subject: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica"><b>[GRASS-dev] C replacement for d.vect.thematic</b></font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Hello everyone,</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">I have finally started living up to my many promises over the last year about trying to write a C replacement for the d.vect.thematic script.</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">I have decided to split the script up into several modules as I think d.vect.thematic is a bit overloaded. In the end I would like to come up with something like:</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">- library functions for classification of vector attribute data using different algorithms</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">- v.class: a module for classifying vector attribute data</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">- d.area.thematic: a module for choropleth area maps</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">- d.symbol.thematic: a module for line and point symbol thematic mapping, including symbol size variation</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">- d.thematic.legend: a module which takes the output of the other two d.* modules and draws a nice legend</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">At this stage I have the two first modules in a usable state, i.e. v.class and d.area.thematic. For those interested, they are available at [1]. I deliberately kept d.area.thematic very simple, forcing the user to enter class breaks and colors, but you can use v.class -g to create the class breaks for d.area.thematic (see example in description.html). In my eyes it is better (and more in the spirit of GRASS) to create a toolchain of small modules which can feed into each other. It should be no problem combining them in a gui or a script.</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">I still need to enhance documentation (of the module and of the functions).</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">At this stage I have all the classification functions in a file with v.class, but I think it would be good to move them to a library pretty soon so that they can be shared by modules.</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">But before I go on (which in any case probably won't happen within the next week), I have a few questions:</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">- Any fundamental disagreement with the general scheme (i.e. several separate modules) ?</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">- I guess I should create a new library with vector stats functions, which could then hold the classification functions, but also the (currently named) dbCatValArray_stats function for basic stats. The latter (+ extensions) could then also be used for e.g. v.univar. Any suggestions as to where to put the library (lib/ or lib/vect) ? If in lib, I suggest calling it libgrass_vstats as a counterpart to the raster libgrass_stats. Any opposition ?</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">- Could someone look over the code to see if I have not done anything bad ? The class_discont function in v.class/class.c is extremely difficult to read and could do with some better variable naming and probably refactoring. It is actually a direct translation of some 15-20 year old fortran code that we use inhouse, but as it works as it is, I'm not sure I want to spend much time on that now.</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">As soon as I either get answers or just impatient, I'll upload the code to svn, so that others can start hacking on it.</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Moritz</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">[1] <a href="http://geog-pc40.ulb.ac.be/grass/thematic/">http://geog-pc40.ulb.ac.be/grass/thematic/</a></font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> </blockquote></div><br><div><br class="webkit-block-placeholder"></div><div><div><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; "><br class="Apple-interchange-newline">____________________</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">C. Michael Barton, Professor of Anthropology</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Director of Graduate Studies</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">School of Human Evolution & Social Change</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Center for Social Dynamics & Complexity</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">Arizona State University</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; min-height: 14px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">Phone: 480-965-6262</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">Fax: 480-965-7671</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">www: <<a href="http://www.public.asu.edu/~cmbarton">www.public.asu.edu/~cmbarton</a>></font></div></div><br class="Apple-interchange-newline"></div><br><div></div></div></body></html>