Используя Jupyter Notebooks, я сделал график Scatterpolar с двумя трассами на нем, используя следующий код:
import numpy as np
import plotly.graph_objs as go
th = np.arange(0, 361, 1)
r1 = np.random.randn(360)
r2 = np.random.randn(360)
fig = go.Figure()
fig.add_trace(go.Scatterpolar(r=r1, theta=th, mode='lines'))
fig.add_trace(go.Scatterpolar(r=r2, theta=th, mode='lines'))
fig.update_layout(hovermode='x')
В результате получается этот рисунок, на котором не отображаются обе точки данных, когда я навожу курсор на график. Я бы хотел, чтобы он показывал обе точки данных.
Например, когда у вас есть линейный график, это легко сделать. Вы просто меняете hovermode = 'x' и получаете это, как показано в тексте hovermode и документация по форматированию.
Как сделать так, чтобы на графике Scatterpolar отображались обе точки данных при наведении курсора на график? Любая помощь будет принята с благодарностью.
1 ответ
Я не знаю, полностью ли я понял вашу конечную цель, но первое, что вы можете сделать, чтобы сделать точечные диаграммы менее беспорядочными, это внести изменение mode='markers'
. По умолчанию для точки под курсором будет отображаться одна метка при наведении, поэтому, если вы наведете курсор на точку с координатами (r1, th), они отобразятся в метке, то же самое произойдет с точками с (r2, th). Теперь для случая, который вы представили, строка fig.update_layout(hovermode='x unified')
не имеет никакого значения для результата.
Похожие вопросы
Новые вопросы
python
Python — это мультипарадигмальный многоцелевой язык программирования с динамической типизацией. Он предназначен для быстрого изучения, понимания и использования, а также обеспечивает чистый и унифицированный синтаксис. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Если у вас есть вопросы о версии Python, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas, NumPy) укажите это в тегах.