2016-06-11 5 views
0

저는 bokeh를 처음 사용하고 간단한지도를 만들려고합니다.Bokeh - 패치에 툴팁 추가

이 페이지에서 http://www.abisen.com/blog/bokeh-maps/지도를 만드는 것은 아주 간단했습니다. 그러나 그것을 개인화하면 보케에 대해 더 깊이 이해해야합니다.

enter image description here

: 나는 단지 별 기본 툴팁 얻을 내가 프랑스 상태 공개 데이터 (https://www.data.gouv.fr/fr/datasets/fond-de-carte-des-codes-postaux/) 지금은

에서이 프랑스에있는 각 마을의 이름을 표시 할 것 enter image description here

내가 툴팁을 추가 : 나는 도시 이름을 추가로 변경하려는

hover = HoverTool(
     tooltips=[ 
      ("index", "$index"), 
      ("(x,y)", "($x, $y)"), 
      ("city", "@city"), 
     ] 
    ) 

p = figure(title="France", tools=[hover]) 

그러나 이름 대신 툴팁에 도시 이름을 사용할 수있는 방법을 찾을 수 없습니다 (이름 대신 "???"가 있음). 글리프의 data_source에 도시 이름을 추가하는 방법을 알 수 없습니다.

for city_name in states: 
    data = getDict(city_name, dat) 
    # here I tried to add a legend => useless 
    gliph_ = p.patches(data[city_name]['lat_list'], data[city_name]['lng_list'],legend=city_name, line_color="black") 

    #here I try to add a column into the glyph's data_source : 
    cities = [x for x in data[city_name]['city']][0] 
    gliph_.data_source.add(cities, "city") 

내가 gliph는 데이터 소스로 새 열 것을 볼 : 그래서 나는 손으로 각 그래프의 DATA_SOURCE에 열을 추가하려고

gliph_.data_source.column_names 
>['xs', 'ys', 'city'] 

을하지만 인식되지 않습니다

:-(툴팁에 의해 어떻게 patche에 DATA_SOURCE 열을 추가하려면? 가 툴팁으로 인식하게하는 방법?

+0

패치가 상태를 나타 냅니까? 그리고 국가마다 여러 도시가 있습니까? 그것이 제가 가정 할 것이지만 질문에서 분명하지 않습니다. 도시는 주 패치 내에 패치 (작은 패치)로 표시됩니까? – bigreddot

답변

1

I을 내 "데이터"딕트에서 잘못된 데이터 구조를 가졌습니다.

는 I는 동일한 길이의 데파트 망의 각 도시에 대해 값의 어레이를 생성하고 데파트 망에 부착했다 : 글리프에 데이터 소스까지 첨가

for new_col in ["surf", "pop", "fam", "villes", "dpt", "cp", "perimetre"]: 
      gliph_.data_source.add(data[departement][new_col], new_col) 

실제 인 일.