OpenStreetBugs — лёгкий способ сообщить об ошибке в OpenStreetMap

OpenStreetBugs — лёгкий способ сообщить об ошибке в OpenStreetMap

Вы, конечно, знаете о свободной карте OpenStreetMap. Это настоящая народная карта, создаваемая такими же людьми как и вы! Это такой же opensource-проект как Linux и как Википедия. Конечно же, как и в других картах, в OpenStreetMap имеются ошибки, но в отличие от тех же Яндекс.Карт, где ошибки не исправляются годами из-за сложной бюрократической процедуры (я уже не говорю о намеренных ошибках), в OpenStreetMap всё гораздо проще и лучше для всех нас...
Подробнее..

CloudMade Navigation поддерживает ограничения манёвров

CloudMade Navigation поддерживает ограничения манёвров

Не так давно CloudMade выделил несколько приоритетных направлений, среди которых оказалась и навигация. Решено было создать специальный проект Navi Studio, который объединял бы в себе несколько более мелких сервисов и позволял пользоваться ими, для создания полноценного навигационного программного обеспечения. В Navi Studio вошли: Работа закипела и уже появилось несколько приложений использующих данный проект. Но полноценной навигации без соблюдения правил ПДД не существует, а потому данному вопросу было также уделено не мало времени...
Подробнее..

Удали себя из интернет-социума — «Web 2.0 Suicide Machine»

Удали себя из интернет-социума — «Web 2.0 Suicide Machine»

Недавно наткнулся в сети на один занимательный интернет-сервис, именующийся Web 2.0 Suicide machine . Предназначен он для того, чтобы позволить людям, обремененным «социальной жизнью в интернете», в пару кликов удалить свои аккаунты на Facebook (в данный момент сервис блокирован администрацией по IP), Twitter, Linkedin и Myspace. В общем-то судя по количеству положительных отзывов и «успешных очищений» — пипл хавает зависимые от социальных сетей успешно пользуются сервисом и довольны...
Подробнее..




PChart – рисуем графики в PHP

Веб разработка - Веб разработка

pchart – рисуем графики в php

Рисование графиков и гистограмм – не самая частая задача, с которой может столкнуться программист на PHP, но порой такое происходит. Существует несколько php-библиотек, предназначенных для рисования графиков, но наиболее популярной из них является pChart. С ее помощью вы без труда сможете нарисуете графики, гистограммы, «пироги» и тп.

Скачав и распаковав rar-архив с последней версией pChart с официального сайта проекта (на момент написания статьи последняя версия имела номер 1.27d), вы увидите различные каталоги и файлы с именами Example(номер).php. Так вот, 90% этого добра нам не нужно. Ну разве что имеет смысл изучить примеры. Реальную ценность представляют только два файла – pChart/pData.class и pChart/pChart.class.

В первом содержится описание класса pData. Он предназначен для хранения данных, которые в дальнейшем будут выведены на график/гистограмму – подписи по осям, непосредственно выводимые значения и тд. В файле pChart.class содержится описание класса pChart, отвечающего за само рисование графиков. Данные для графиков он получает от класса pData.

Описание атрибутов и методов классов pChart и pData можно найти в самих *.class файлах, или посмотреть, как эти классы используются в примерах. В этой статье мы рассмотрим простенький скрипт, рисующий гистограмму.

<?php

// подключаем pChart
include ./pChart/pChart.class ;
include ./pChart/pData.class ;

// генерируем случайные данные для вывода на гистограмму
$series = array();
mt_srand(time());
for($i = 0; $i < 18; $i++) {
$series[0][] = $i.12 ;
$series[1][] = 5000 + mt_rand(-500, +500);
$series[2][] = $series[1][$i] - mt_rand(100, 200);
}

// теперь помещаем данные в специальный класс - pData
$data = new pData;
$n = 0;

foreach($series as $k => $v) {
if(++$n == 1) {
$keySerie = $k ; // $series[0] - это подписи по оси абсцисс
$ksSize = count($v);
}
$data->AddPoint($v, $k );
}

$data->AddAllSeries();
$data->RemoveSerie($keySerie);
$data->SetAbsciseLabelSerie($keySerie);

// теперь готовим гистограмму
$chart = new pChart(512,192);

// задаем шрифт
$chart->setFontProperties( tahoma.ttf , 8);
// какую часть изображения выделить под гистограмму?
$chart->setGraphArea(50, 10, 512, 150);

// рисуем шкалу; описание аргументов метода - в файле pChart.class
$chart->drawScale($data->GetData(),$data->GetDataDescription(),
SCALE_NORMAL | SCALE_START0 /*mode*/,/* rgb */0,0,0,TRUE,90,2,TRUE);

// рисуем сами столбики
$chart->drawBarGraph($data->GetData(),$data->GetDataDescription(),
FALSE /* shadow */, 100 /* alpha */, FALSE /* black border */);

// выводим результат
$chart->Stroke();

?>

Цвета столбцов и угол наклона подписей по оси абсцисс при желании можно поменять. Также без особого труда можно добавить название графика и легенду.

Как видите, pChart – мощная и достаточно простая в использовании библиотека, распространяемая при этом абсолютно бесплатно. К недостаткам pChart можно отнести относительно невысокую скорость работы. Например, модуль GD::Graph, активно используемый программистами на Perl, работает ощутимо быстрее.

 


Читайте:


Добавить комментарий


Защитный код
Обновить

News image

Совместная работа над кодом в компании Google

Во второй главе книги «Coders at Work», Брэд Фицпатрик (Brad Fitzpatrick) — автор Live Journal, а сейчас сотрудник компании Google, помимо всяких ин...

News image

Технологии Microsoft для разработчиков сегодня и завтра

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

News image

Apple обновляет программы для Mac-разработчиков

Apple опустила ценовой порог до 99 долларов для желающих вступить в сообщество Mac-разработчиков. Согласно данным компании, новая цена членства сниж...

News image

Apple заставила разработчиков писать приложения для iPad вслепую

Многие разработчики приложений для Apple iPad остались недовольны возможностями эмулятора устройства, пишет The New York Times. Они ждут поступления...

News image

Solaris больше не бесплатен

Oracle постепенно начинает прикрывать «бесплатные лавочки», доставшиеся ей в нагрузку с Sun Microsystems. Первой попала под раздачу операционная сис...

Топ технологий:

News image

Оздана новая система беспроводной связи - она в 10

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

News image

Как взломали Twitter

В Интернетах, наряду с iPad, сканерами в аэропортах и войне между Google и Apple, уже второй день подряд активно обсуждается тема взлома и...