Как я могу отобразить тепловую карту на изображении с помощью PHP? - PullRequest
1 голос
/ 22 сентября 2011

У меня есть изображение (график) внутри <div>, на котором отображаются накопленные клики, так что оно выглядит как беспорядок точек повсюду.

Я бы хотел сделать это "приятнее", и я подумал, что тепловые карты - лучший вариант.

Как я могу реализовать такое решение?

Я не особо разбираюсь в PHP или javascript, поэтому любые указатели помогут.

Ответы [ 2 ]

0 голосов
/ 22 сентября 2011
  • Во-первых, с помощью библиотеки jQuery вы можете выбрать позицию, когда пользователь нажимает кнопку мыши, вы можете увидеть пример URL
  • Во-вторых, вы должны отправить эту информацию, чтобы постоянно следить за вашим сервером, небольшими пакетами, которыеукажите: IP-адрес или пользователя, дату события, положение мыши, объект, по которому щелкнули, страницу.
  • В-третьих, вы можете создать arlgoritmo, например, сложить все щелчки на основе списка, и вы намереныцвет и размер кругов (если вы их используете)
  • В-четвертых, можно создать изображение с помощью библиотеки PHP GD, или вы можете подумать о создании наложений CSS-свойств, таких как яркость или оттенки, в соответствии с хранилищем данных
0 голосов
/ 22 сентября 2011

С точки зрения накопления кликов, вы можете просто зарегистрировать обработчик кликов в JS, который бы определил, где на изображении произошло событие клика.Затем вы можете использовать AJAX (или альтернативный метод по вашему выбору), чтобы вернуть эти клики на ваш веб-сервер и предположительно как-то их сохранить.

Что касается создания тепловых карт, у вас есть два возможных маршрута.

  1. Вы можете сгенерировать серверное изображение тепловой карты на PHP, используя такую ​​библиотеку, как GD или ImageMagick, и наложить это изображение на график.

    Это дает преимущество, не беспокоясьо совместимости браузера с различными решениями JS, , но это будет означать увеличение нагрузки на сервер.

  2. Вы также можете сгенерировать клиентскую часть Heatmap в JS - естьЦелый ряд возможных способов сделать это.

    У этого есть хороший плюс, если вы оставите тяжелую работу браузеру, обеспечивая бесперебойную работу вашего сервера.Однако вы можете столкнуться с проблемами совместимости браузера.

Чтобы полностью ответить на этот вопрос, было бы полезно узнать немного больше о том, что у вас уже есть, с какими ограничениями выи есть ли у вас какие-либо предпочтения относительно используемых методов!

...