Из моего исследования я понимаю, что существует три способа размещения SVG-файла внутри HTML:
с использованием embed :
<embed src="plot1.svg" width="500" height="320" type="image/svg+xml" />
с использованием объекта :
<object data="plot1.svg" width="500" height="320" type="image/svg+xml" />
с использованием iframe :
<iframe src="plot1.svg" width="500" height="320"> </iframe>
Я экспериментировал со всеми тремя на тестовом стенде (встроенный сервер разработчика django, рендеринг страниц в Firefox 3.6).В этой явно стерильной среде я не заметил никакой разницы между производительностью или разрешением три - w / r / t.
Мой вопрос: лучше ли один из них, чем два других, и если да, то, который из.Ответ может, конечно, зависеть от фактов, которые я пытался ограничить тем, что имеет отношение:
Мы часто отображаем данные (например, временные ряды) на нашем веб-сайте, обычно создаваемые в ответ на некоторые действия пользователя;на основе этого пользовательского действия вызывается база данных, возвращаемые данные обрабатываются и отправляются в механизм построения графиков, который визуализирует статическое изображение, которое затем внедряется в страницу - очень стандартные вещи.
Это прекрасно работает, но я хотел бы добавить некоторые интерактивные функции к этим диаграммам (например, всплывающие подсказки, надписи с гиперссылками на оси, выделение группы точек на графике).Некоторые из диаграмм довольно сложны (например, мультипанельное кондиционирование), и я не нашел библиотеку диаграмм JavaScript, которая включает эти функции.В конце концов я остановился на использовании той же библиотеки графиков (Lattice in R), но отрисовки каждой диаграммы в svg и последующем добавлении функций взаимодействия с пользователем на этапе постобработки, который состоит в основном из функций javascript, которые напрямую управляют XML.