Лучший способ взять данные и бросить их в график? - PullRequest
0 голосов
/ 05 марта 2010

Я хочу взять данные из таблицы, которая будет почти точно похожа на приведенную ниже, но иметь их в виде линейного графика. Значения даты будут на оси Y, и это будет отображать значения XP на оси X. Так как числа для каждого пользователя различаются, мне нужен способ сделать расстояние между каждой точкой на графике "относительным", я думаю.

Пример таблицы http://img687.imageshack.us/img687/4175/tablel.png

Есть предложения?

Ответы [ 7 ]

1 голос
/ 05 марта 2010

Или, если вы хотите пойти по пути JavaScript, может быть Raphaël .

1 голос
/ 05 марта 2010

Если вы хотите создать статическое изображение диаграммы, вы можете использовать Libchart или pChart для PHP.

1 голос
/ 05 марта 2010

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

Рисовать диаграмму в PHP довольно легко. HTML / CSS можно использовать для рисования полосы, а PHP - для расчета длины полосы.

0 голосов
/ 05 марта 2010

Я использую и полностью рекомендую API Google Chart Tools .Если вы ищете простой линейный график, он предоставляет очень простой API, который вы можете вызвать, который не требует установки или настройки.Некоторая документация сбивает с толку, но я смог разобраться с этим с небольшим терпением.

Все, что требуется, - это тег IMG и указать ссылку на URL Google с правильными параметрами.

alt text

У них также есть более интерактивная библиотека Javascript, если вы хотите предоставить больше функциональности в дальнейшем.

0 голосов
/ 05 марта 2010

Если вы используете платформу linux / unix, вы, вероятно, уже установили Gnuplot . Gnuplot может взять файл графика и файл данных и сгенерировать изображение, таким образом:

History.gnuplot, который должен быть сгенерирован первым:

set title "Rawr_satch history"
set xlabel "Time"
set ylabel "Ranking"
set output "rawr_satch_graph.png"
set terminal png color
set xdata time
plot "rawr_satch_xphistory.dat" with linespoints

Предполагается, что файл данных rawr_satch_xphistory.dat уже создан, отформатирован таким образом:

2010-03-06 385581123
2010-03-05 384895430
2010-03-04 382983388

Люди также написали интерфейсы в Gnuplot для большинства языков, например PHP-GNUPlot . Сценарии Gnuplot могут быть довольно сложными, и вы можете построить несколько переменных и т. Д.

0 голосов
/ 05 марта 2010

Я использовал следующее из PHP: Google Charts , Open Flash Chart , YUI-диаграммы (Flash) и AMCharts (также Flash).

Все они довольно просты в использовании и имеют свои плюсы и минусы. Если вы хотите, чтобы на одной странице отображалось более одного графика, не используйте графики на основе Flash. Оказывается, браузерам не удается отобразить дюжину Flash-диаграмм одновременно. AMCharts, вероятно, является наиболее многофункциональным, но доступные параметры зависят от того, какой из их пакетов диаграмм вы выбрали, и конфигурация довольно сложная.

0 голосов
/ 05 марта 2010

Я бы пошел на HighCharts .

...