#python #hover #plotly #mapbox #figure
#питон #наведите курсор #сюжетно #картографический ящик #рисунок
Вопрос:
Я попробовал следующий код:
import plotly.io as pio
import plotly.express as px
import json
import pandas as pd
import plotly.graph_objects as go
import plotly.figure_factory as ff
import plotly.express as px
df = px.data.carshare()
fig = go.Figure()
app = dash.Dash()
#fac figurile
fig = ff.create_hexbin_mapbox(df,lat = 'centroid_lat', lon = 'centroid_lon',nx_hexagon = 10,color = 'car_hours',
labels = {'color':'Point Count '},
opacity = 0.5)
fig.update_layout(mapbox_style="carto-darkmatter")
fig.update_layout(margin=dict(b=0, t=0, l=0, r=0))
fig.show()
И я хочу изменить наведение курсора так, чтобы он показывал мне только значение с плавающей запятой только с первым десятичным знаком при наведении курсора, и я также хочу иметь возможность отображать что-то после отображения значения. Например, значение при наведении должно быть ‘Количество точек = 1019,9 автомобилей в час. К сожалению, документация не очень помогает.
Ответ №1:
Мне кажется, что вашим лучшим вариантом ff.create_hexbin_mapbox
было бы настроить его непосредственно через:
fig.data[0].hovertemplate = 'Point Count =%{z:,.1f}<extra>Cars per hour</extra>'
Который превратит это:
… в этот:
Полный код
import plotly.io as pio
import plotly.express as px
import json
import pandas as pd
import plotly.graph_objects as go
import plotly.figure_factory as ff
import plotly.express as px
df = px.data.carshare()
fig = go.Figure()
# app = dash.Dash()
#fac figurile
fig = ff.create_hexbin_mapbox(df,lat = 'centroid_lat', lon = 'centroid_lon',nx_hexagon = 10,color = 'car_hours',
labels = {'color':'Point Count '},
opacity = 0.5)
fig.update_layout(mapbox_style="carto-darkmatter")
fig.update_layout(margin=dict(b=0, t=0, l=0, r=0))
fig.data[0].hovertemplate = 'Point Count =%{z:,.1f}<extra>Cars per hour</extra>'
fig.show()