首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用CartoDB为choropleth动态创建CartoCSS

如何使用CartoDB为choropleth动态创建CartoCSS
EN

Stack Overflow用户
提问于 2015-09-29 23:39:46
回答 1查看 230关注 0票数 0

我正在尝试使用JS库在CartoDB中创建choropleth地图。

如何在层上动态创建cartoCSS?

基于专栏,这似乎是可能的?

例如,使用内置向导将生成以下内容。我想以某种方式动态生成它使用自定义颜色和前端的列名。

代码语言:javascript
复制
#mytable{
  polygon-fill: #FFFFB2;
  polygon-opacity: 0.8;
  line-color: #FFF;
  line-width: 0.5;
  line-opacity: 1;
}
#mytable [ col_xyz <= 12505.969707] {
   polygon-fill: #B10026;
}
#mytable [ col_xyz <= 3650.909837] {
   polygon-fill: #E31A1C;
}
#mytable [ col_xyz <= 1656.60976] {
   polygon-fill: #FC4E2A;
}
#mytable [ col_xyz <= 677.226857] {
   polygon-fill: #FD8D3C;
}
#mytable [ col_xyz <= 333.140676] {
   polygon-fill: #FEB24C;
}
#mytable [ col_xyz <= 170.576913] {
   polygon-fill: #FED976;
}
#mytable [ col_xyz <= 51.090065] {
   polygon-fill: #FFFFB2;
}

http://docs.cartodb.com/cartodb-platform/cartodb-js.html#sublayersetcartocsscss

EN

回答 1

Stack Overflow用户

发布于 2015-10-13 11:45:21

是的-你会想要使用createLayer方法,让每个多边形都有自己的子层…

代码语言:javascript
复制
 cartodb.createLayer(map, {
   user_name: 'mycartodbuser',
   type: 'cartodb',
   sublayers: [{
   sql: "SELECT * FROM table_name",
   cartocss: '#table_name {polygon-fill: #F0F0F0;}'
   },
   {
   sql: "SELECT * FROM table_name",
   cartocss: '#table_name {polygon-fill: #FFFFFF;}'
   }]
 })
 .addTo(map)
 .done(function(layer) {
   //DO STUFF
 });

也许有更好的方法可以做到这一点,但它对我很有效。

http://docs.cartodb.com/cartodb-platform/cartodb-js.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32848253

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档