У меня есть очень простая трехмерная фигура, построенная с помощью Plotly в виде линий и дисков. Никаких поверхностей. Никакого освещения. Никакой сложности. Только строки и диски. Вот минимальный пример:
Я хотел бы сохранить это как SVG. Технически я могу сделать это, вызвав Plotly.toImage на стороне JS как SVG, но экспорт из этого файла — это не на самом деле SVG, а просто PNG, завернутый в SVG. Я примерно понимаю, почему они это делают, поскольку они просто пишут в контекст WebGL, но при этом создается впечатление, что в этом нет смысла.
Итак, как мне получить настоящий вывод SVG из этого рисунка Plotly? Я понимаю, что могу написать другой конвейер рендеринга, который вообще пропускает Plotly (и я это сделал), но наверняка есть какой-то способ получить из этого настоящий SVG.
У меня есть очень простая трехмерная фигура, построенная с помощью Plotly в виде линий и дисков. Никаких поверхностей. Никакого освещения. Никакой сложности. Только строки и диски. Вот минимальный пример: [code]import numpy as np import plotly.graph_objects as go
N_DISKS = 8 DISK_POINTS = 60 DISK_RADIUS = 0.4
# Centers along a helix t = np.arange(N_DISKS) centers = np.column_stack([ np.cos(t * np.pi / 3) * 1.2, t * 0.9, np.sin(t * np.pi / 3) * 1.2, ])
Я хотел бы сохранить это как SVG. Технически я могу сделать это, вызвав Plotly.toImage на стороне JS как SVG, но экспорт из этого файла — это не на самом деле SVG, а просто PNG, завернутый в SVG. Я примерно понимаю, почему они это делают, поскольку они просто пишут в контекст WebGL, но при этом создается впечатление, что в этом нет смысла. Итак, как мне получить настоящий вывод SVG из этого рисунка Plotly? Я понимаю, что могу написать другой конвейер рендеринга, который вообще пропускает Plotly (и я это сделал), но наверняка есть какой-то способ получить из этого настоящий SVG.