自定义悬停框 Plotly:Python 以适应文本

2022-01-22 00:00:00 python plotly hover

问题描述

有没有办法在 plotly 中自定义悬停文本框?我必须在悬停框中显示的文本很长,不适合屏幕.有没有办法改变悬停文本框的尺寸或缩小文本以使其全部适合屏幕.更好的是图表一侧的固定框,当我滚动该数据点时显示相应的注释,但我不知道该怎么做.

Is there a way to customize the hover text box in plotly? The text I have to show up in the hover box is quite long and does not fit on the screen. Is there are a way to change the dimensions of the hover text box or make the text smaller to have it all fit on the screen. Even better would be a fixed box on the side of the chart that shows the corresponding note as I scroll over that data point but I am not sure how to do that.

这是我尝试使用一些类似长度的文本的示例.

Here is a sample of what I'm trying to do with some similar length text.

import plotly.plotly as py
from plotly.graph_objs import *
import plotly
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd


notes=["Clinton is also navigating delicate ties with Israel and the American Jewish community, an influential group of voters and donors. Israeli Prime Minister Benjamin Netanyahu, a fierce critic of the Obama administration's outreach to Iran, described the framework deal as a threat to the very survival of his nation.", "Fire crews in Cambria County were called to the Revloc duplex Friday morning and found much of the building engulfed in flames. Chief Deputy Coroner Jeffrey Leeds said at least seven people were in the duplex and all, but one, were able to get out safely.Witnesses said Jake Lewis, 24, re-entered the house to rescue 65-year-old Anna LaJudice. But father, Robert LaJudice, told The (Altoona) Mirror.Their bodies were later recovered. The deputy coroner said autopsies determined that both died from smoke and gas inhalation.", "As crews worked to tear down the rest of the home, Ott said she planned to attend a church service and say a prayer for the family."]
balance=[1000,2000,4000]
dates=[1,2,3]


data1 = Data([
    Scatter(
        x=dates,
        y=balance,
        mode='markers',
        text=notes,        
    )
])
layout = Layout(
    title='Hover over the points to see the text',autosize=True,   
)
fig = Figure(data=data1, layout=layout,)

fig['layout'].update(
    hovermode='closest',  
    showlegend=False,     
    autosize=True,       

)
plot_url = py.plot(fig, filename='hover-chart-basic')
py.plot(fig, filename='hover-chart-basic')

任何帮助将不胜感激!


解决方案

您可能需要查看注释以创建固定文本框.在此处查看我们的文档:https://plot.ly/python/text-and-annotations/ 您将看到如何为注释或悬停文本指定字体大小.

You may want to look into annotations to create a fixed text box. Check out our documentation here: https://plot.ly/python/text-and-annotations/ You'll see how to specify font sizes for either annotations or hover text.

相关文章