#javascript #angular #svg #graph #tooltip
#javascript #угловой #svg #График #всплывающая подсказка
Вопрос:
Всплывающая подсказка работает нормально, но я хочу показать ее Day Wise
не между днями. В настоящее время он свободно перемещается, я просто хочу показать его так же, как и в примере с JS fiddle.
Минимальный пример кода. Код StackBlitz
Я хочу, чтобы моя подсказка отображалась как этот пример (не тот же пользовательский интерфейс, но движущийся опыт): например, Js Fiddle
Комментарии:
1. Это потребует некоторого кодирования. Должна быть ссылка на точки данных и событие перемещения мыши. Вам нужно знать, в каком положении находятся ваши точки данных, а затем найти точку, ближайшую к вашему текущему положению мыши, и использовать это местоположение в качестве местоположения вашего ящика, возможно, с определенным смещением. В текущем состоянии для этого потребуется не менее часа или двух работы по кодированию: D так что удачи
Ответ №1:
Вы можете использовать (mouseenter)
на выбранной строке Path
, чтобы отобразить всплывающую подсказку на этой конкретной строке. Возьмите Bool в поле всплывающей подсказки:
.ts
showTool: boolean = false; // false by default
.html
<div id="stats_box" [ngStyle]="{ left: stats_box.x 'px' }" *ngIf="showTool">
//Your Tooltip Content
</div>
<g class="graph_lines" style="clip-path: url(#grid_space);">
<path attr.id="path{{ channel.channel_id }}" *ngFor="let line of graph_arr.slice(0, 5); let i = index" (click)="switch_paths(line.id)" class="graph_line active" [attr.d]="line.points" stroke-linejoin="round" [attr.fill]="selected.id == line.id ? border_colors[i]: 'transparent'" [ngStyle]="{ stroke: selected.id == line.id ? 'black' : border_colors[i] }" (mouseenter)="selected.id == line.id ? showTool = true : showTool = false"/>
<use id="use" attr.xlink:href="#path{{ graph_line_switch }}" height="90%"/>
</g>