PHP библиотека jpgraph?
Всем привет.
Возникла проблемка, юзаю библиотеку jpgraph PHP 8.2, График с собственной изображением полностью.
Указываю в функцию: $graph->SetBackgroundImage($photoPath, BGIMG_FILLFRAME); то изображение такое:
Если указываю BGIMG_FILLPLOT то изображение такое:
Суть таков мне нужно собственное изображение чтобы и график сам был тоже изображением а не белого цвета
Вот код:
$graph = new Graph(900, 500); // Размеры графика (ширина, высота) $dis = trim($existingServer['image_url']); $photoPath = "/var/www/fastuser/data/www/rionx.ru/foto/$dis"; // Формирование пути к файлу изображения $graph->SetBackgroundImage($photoPath, BGIMG_FILLPLOT); $graph->SetBackgroundImageMix(50); // Задать уровень смешивания (от 0 до 100) $graph->SetScale('textlin'); // Создание линии графика $line = new LinePlot($yData); // Получаем цвет линии из базы данных $lineColor = $existingServer['line_color']; $line->SetColor($lineColor); // Цвет линии $line->mark->SetColor($lineColor . '@0.5'); // Цвет маркера $line->mark->SetFillColor($lineColor); // Цвет заливки маркера // Устанавливаем метки по оси X $graph->xaxis->SetTickLabels($xData); // Устанавливаем заголовки $graph->title->Set("Статистика сервера $ip:$port"); $graph->xaxis->title->Set("Время"); $graph->yaxis->title->Set("Онлайн"); // Добавляем линию на график $graph->Add($line); // Отображаем график $tempFilename = 'files/graph_' . uniqid() . '.png'; $graph->Stroke($tempFilename); $graph = new Graph(900, 500); // Размеры графика (ширина, высота) $dis = trim($existingServer['image_url']); $photoPath = "/var/www/fastuser/data/www/site/foto/$dis"; // Формирование пути к файлу изображения $graph->SetBackgroundImage($photoPath, BGIMG_FILLPLOT); $graph->SetBackgroundImageMix(50); // Задать уровень смешивания (от 0 до 100) $graph->SetScale('textlin'); // Создание линии графика $line = new LinePlot($yData); // Получаем цвет линии из базы данных $lineColor = $existingServer['line_color']; $line->SetColor($lineColor); // Цвет линии $line->mark->SetColor($lineColor . '@0.5'); // Цвет маркера $line->mark->SetFillColor($lineColor); // Цвет заливки маркера // Устанавливаем метки по оси X $graph->xaxis->SetTickLabels($xData); // Устанавливаем заголовки $graph->title->Set("Статистика сервера $ip:$port"); $graph->xaxis->title->Set("Время"); $graph->yaxis->title->Set("Онлайн"); // Добавляем линию на график $graph->Add($line); // Отображаем график $tempFilename = 'files/graph_' . uniqid() . '.png'; $graph->Stroke($tempFilename); |
$graph = new Graph(900, 500); // Размеры графика (ширина, высота) $dis = trim($existingServer['image_url']); $photoPath = "/var/www/fastuser/data/www/rionx.ru/foto/$dis"; // Формирование пути к файлу изображения $graph->SetBackgroundImage($photoPath, BGIMG_FILLPLOT); $graph->SetBackgroundImageMix(50); // Задать уровень смешивания (от 0 до 100) $graph->SetScale('textlin'); // Создание линии графика $line = new LinePlot($yData); // Получаем цвет линии из базы данных $lineColor = $existingServer['line_color']; $line->SetColor($lineColor); // Цвет линии $line->mark->SetColor($lineColor . '@0.5'); // Цвет маркера $line->mark->SetFillColor($lineColor); // Цвет заливки маркера // Устанавливаем метки по оси X $graph->xaxis->SetTickLabels($xData); // Устанавливаем заголовки $graph->title->Set("Статистика сервера $ip:$port"); $graph->xaxis->title->Set("Время"); $graph->yaxis->title->Set("Онлайн"); // Добавляем линию на график $graph->Add($line); // Отображаем график $tempFilename = 'files/graph_' . uniqid() . '.png'; $graph->Stroke($tempFilename); $graph = new Graph(900, 500); // Размеры графика (ширина, высота) $dis = trim($existingServer['image_url']); $photoPath = "/var/www/fastuser/data/www/site/foto/$dis"; // Формирование пути к файлу изображения $graph->SetBackgroundImage($photoPath, BGIMG_FILLPLOT); $graph->SetBackgroundImageMix(50); // Задать уровень смешивания (от 0 до 100) $graph->SetScale('textlin'); // Создание линии графика $line = new LinePlot($yData); // Получаем цвет линии из базы данных $lineColor = $existingServer['line_color']; $line->SetColor($lineColor); // Цвет линии $line->mark->SetColor($lineColor . '@0.5'); // Цвет маркера $line->mark->SetFillColor($lineColor); // Цвет заливки маркера // Устанавливаем метки по оси X $graph->xaxis->SetTickLabels($xData); // Устанавливаем заголовки $graph->title->Set("Статистика сервера $ip:$port"); $graph->xaxis->title->Set("Время"); $graph->yaxis->title->Set("Онлайн"); // Добавляем линию на график $graph->Add($line); // Отображаем график $tempFilename = 'files/graph_' . uniqid() . '.png'; $graph->Stroke($tempFilename);
Дайте подсказку пожалуйста, я не знаю где копаться, почти дошёл того что нужно было
Мне нужно график с собственным дизайнем и был в самом графике тоже дизайн полностью.
Дополнительно:
Ответы:
очевидно же, что слой с подложкой графика перекрывает бэкграунд, как вариант этому классу в стилях добавить прозрачность.
- Можно объяснение?
Тип фон сделать прозрачным? - https://www.w3schools.com/css/css_image_transparen... на класс подложки графика, самому графику видимо придется переопределить, чтоб тоже не стал прозрачным.
Я не фронт, это так, предположение, но судя по скринам Вашим - вроде логичное. - Mylistryx, Там всё норм в изображений он не прозрачный
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос


Да, библиотека JPGraph - это отличный инструмент для создания графиков и диаграмм на языке PHP. Она предоставляет различные типы графиков, такие как линейные, столбчатые, круговые, а также возможность настройки внешнего вида графиков.
Для начала работы с библиотекой JPGraph, вам необходимо скачать ее с официального сайта и установить на вашем сервере. После этого вам нужно подключить библиотеку к вашему проекту, добавив соответствующие файлы в код.
Пример использования библиотеки JPGraph для создания графика:
// Подключаем необходимые файлы библиотеки require_once("jpgraph/jpgraph.php"); require_once("jpgraph/jpgraph_line.php"); // Создаем новый график $graph = new Graph(800, 600); $graph->SetScale("textlin"); // Создаем данные для графика $data = array(1,2,3,4,5); $lineplot = new LinePlot($data); // Добавляем данные на график $graph->Add($lineplot); // Отображаем график $graph->Stroke();
Это простой пример создания линейного графика с использованием библиотеки JPGraph. Вы можете настраивать внешний вид графика, добавлять подписи, легенды и многое другое, в зависимости от ваших потребностей.
Не забывайте изучить документацию по библиотеке JPGraph, чтобы узнать все возможности и функции, которые она предоставляет. В случае возникновения проблем или вопросов, вы всегда можете обратиться к сообществу разработчиков для помощи.