Добавление 500 кругов в график plotly с помощью функции add_shape занимает 45 секунд, как это уменьшить?

#python #svg #plotly #time-complexity #plotly-dash

#питон #svg #сюжетно #временная сложность #сюжетно-тире

Вопрос:

Я пытаюсь добавить небольшие круги на плотном графике. Я хочу добавить около 1000 маленьких кружочков. Но чтобы добавить 500 кругов самому, требуется более 45 секунд. Есть ли какой-либо способ сократить это время? Я слышал, что использование библиотеки d3 в javascript будет намного быстрее. Но я хотел бы добиться этого с помощью python.

Пожалуйста, ознакомьтесь с моим кодом ниже.

Точки данных были бы чем-то вроде этого,

 -0.0919488188976378 0.4985236220472441 -0.08210629921259843 0.5083661417322834 -0.11714566929133859 0.4985236220472441 -0.1073031496062992 0.5083661417322834 -0.1423425196850394 0.4985236220472441 -0.1325 0.5083661417322834  

формат x0, y0, x1, y1.

Код, который добавляет shape, является

 fig = go.Figure() for data in datapoints:  x0 = data[0]  y0 = data[1]   x1 = data[2]  y1 = data[3]  fig.add_shape(type="circle",  xref="x", yref="y",  x0=x0, y0=y0, x1=x1, y1=y1,  line_color='gold',  fillcolor='gold',  )   print("--- %s seconds ---" % (time.time() - start_time))  

Для выполнения кода требуется около 45 секунд.

Есть ли какой-либо способ сократить это время? или есть какая-либо другая библиотека для выполнения этого требования? Мое требование основано на некоторых входных файлах (спецификации фигур/размеры), мне нужно создавать SVG-изображения с помощью python.

Заранее спасибо.