Xpoint
   [напомнить пароль]

Чем нарисовать красивый график?

Метки: [без меток]
2007-12-11 02:37:35 [обр] Nick Knutov[досье]

Хочу нарисовать красивый график со статистикой сервера. Использовать mrtg/rrdtools или другое что-то подобное - не могу - входные данные берутся из SQL запроса, а, на сколько я понимаю, mrtg/rrdtools не умеют брать время из входных параметров.

Пример входных данных - время (в каком-нибудь стандартном формате, например - HH:MM), bytes_in,bytes_out(и для начала хватит).

Хочу такой график, где одна область будет area(в терминах GD::Graph), вторая, например, lines и чтобы время понималось как время и расстояние между временем было пропорционально времени, а не всегда одинаковым. Некоторое время поковырявшись я на GD::Graph::area нарисовал http://uptime.knutov.com, но ничего из желаемого не получилось.

Более глобально хочется туда добавить еще несколько параметров, чтобы они все красиво и разными способами пересекались, были полупрозрачные некоторые и т.д. И хочется красивую легенду, примерно такую, как rrdtool рисует. Чем/как всё это можно сделать?

ps: Судя по всему, средствами GD::Graph это не сделать в принципе. На cpan ничего другого не нашел. Есть Google::Chart, но оно у меня не запустилось + судя по описанию тоже не умеет то, что надо.

спустя 11 часов [обр] Алексей Севрюков(61/1292)[досье]
Так откуда же rrdtools берет данные и почему же нельзя ему никак передать эти данные из SQL запроса?
спустя 22 часа [обр] Филипп Ткачев(0/115)[досье]
А почему вы не хотите рисовать ручками, ведь это не сложно?
спустя 10 часов [обр] Nick Knutov[досье]
совсем ручками - не так красиво.
подсказали gnuplot, но еще не пробовал.
rrdtool берет данные из своей базы и их туда надо периодически писать. Или таки есть способ дать ему набор данных, например в stdin, и получить картинку ?
спустя 55 минут [обр] Алексей Севрюков(61/1292)[досье]
Nick Knutov[досье] А писать в базу rrdtool нельзя? Почему именно STDIN?
спустя 23 минуты [обр] Nick Knutov[досье]

Нельзя по условию задачи. Есть очень большое количество источников, для которых графики строяться только очень иногда. С них снимается статистика и пишется в мускульную базу. Если каждый раз паралельно писать в ррдтул - слишком много ресурсов уйдет, их нет.

В общем, такова задача, имея на конкретный момент времени набор циферок, выдернутый из мускля, построить график, не делая ничего дополнительного ни до, ни после.

спустя 10 часов [обр] Nuclon(0/22)[досье]
Nick Knutov[досье]
ну вообще-то - можно rrdtool'у подсунуть xml файл с данными.
смотри на rrdtool dump и rrdtool restore.
но, IMHO, это изврат совсем.
Powered by POEM™ Engine Copyright © 2002-2005