微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Pydeck 工具提示格式编号

如何解决Pydeck 工具提示格式编号

有谁知道如何编辑 pydeck 图的工具提示部分。具体来说,我想改变 mrt_distance 在 html 部分以整数显示,千位用逗号。例如,2143.45 meters显示2,143 meters

import pandas as pd
import pydeck as pdk

DATA_URL = "https://raw.githubusercontent.com/ajduberstein/geo_datasets/master/housing.csv"
df = pd.read_csv(DATA_URL)

view = pdk.data_utils.compute_view(df[["lng","lat"]])
view.pitch = 75
view.bearing = 60

column_layer = pdk.Layer(
    "ColumnLayer",data=df,get_position=["lng","lat"],get_elevation="price_per_unit_area",elevation_scale=100,radius=50,get_fill_color=["mrt_distance * 10","mrt_distance","mrt_distance * 10",140],pickable=True,auto_highlight=True,)

tooltip = {
    "html": "<b>{mrt_distance}</b> meters away from an MRT station,costs <b>{price_per_unit_area}</b> NTD/sqm","style": {"background": "grey","color": "white","font-family": '"Helvetica Neue",Arial',"z-index": "10000"},}

r = pdk.Deck(
    column_layer,initial_view_state=view,tooltip=tooltip,map_provider="mapBox",map_style=pdk.map_styles.SATELLITE,)

r.to_html("column_layer.html")

解决方法

目前,您必须在输入数据中创建一个单独的字段,该字段是格式正确的字符串,例如,

df['formatted_distance'] = df['mrt_distance'].apply(lambda d: f'{round(d,2):,}')

然后您可以在工具提示中按名称提及此列。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。