猿问

添加散景滑块以按年可视化 GIS 数据

我正在尝试可视化从GIS导入的数据。大约有70个点,每个点都有地名和每年的年份数据和值。


     name       year    mean    geometry

0    Place 1    2008    105816    POINT (253662.995 663270.013)

1    Place 1    2009    94381    POINT (253662.995 663270.013)

2    Place 1    2010    101280    POINT (253662.995 663270.013)

3    Place 1    2011    86664    POINT (253662.995 663270.013)

4    Place 1    2012    83828    POINT (253662.995 663270.013)

5    Place 1    2013    91433    POINT (253662.995 663270.013)

6    Place 1    2014    90971    POINT (253662.995 663270.013)

7    Place 1    2015    140151    POINT (253662.995 663270.013)

8    Place 1    2016    104499    POINT (253662.995 663270.013)

9    Place 1    2017    110172    POINT (253662.995 663270.013)

10    Place 1    2018    111700    POINT (253662.995 663270.013)

11    Place 2    2008    99176    POINT (262062.995 669070.013)

12    Place 2    2009    101865    POINT (262062.995 669070.013)

13    Place 2    2010    80560    POINT (262062.995 669070.013)

14    Place 2    2011    61915    POINT (262062.995 669070.013)

15    Place 2    2012    74723    POINT (262062.995 669070.013)

16    Place 2    2013    71550    POINT (262062.995 669070.013)

17    Place 2    2014    239955    POINT (262062.995 669070.013)

18    Place 2    2015    93824    POINT (262062.995 669070.013)

19    Place 2    2016    71751    POINT (262062.995 669070.013)

20    Place 2    2017    86586    POINT (262062.995 669070.013)

21    Place 2    2018    74684    POINT (262062.995 669070.013)

22    Place 3    2008    180296    POINT (251662.995 663270.013)

23    Place 3    2009    165689    POINT (251662.995 663270.013)

24    Place 3    2010    175376    POINT (251662.995 663270.013)

我想使用滑块可视化数据,以仅显示具有所选年份值的点。


这就是我正在做的


def getPointCoords(row, geom, coord_type):

    """Calculates coordinates ('x' or 'y') of a Point geometry"""

    if coord_type == 'x':

        return row[geom].x

    elif coord_type == 'y':

        return row[geom].y

就是我得到的结果

紫衣仙女
浏览 75回答 1
1回答

UYOU

这最终对我有用# Define the callback function: update_plotdef update_plot(attr, old, new):    # Set the year name to slider.value and new_data to source.data    year = slider.value    stsource.data  = st_df[st_df.year == year]我意识到,由于我数据的性质,我不需要单独更新x,y,因为这些总是相同的,而只是一个“平均值”。因此,对我来说,最简单的方法似乎是根据年份值更新源数据。
随时随地看视频慕课网APP

相关分类

Python
我要回答