Download the PHP package hasnayeen/glow-chart without Composer
On this page you can find all versions of the php package hasnayeen/glow-chart. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download hasnayeen/glow-chart
More information about hasnayeen/glow-chart
Files in hasnayeen/glow-chart
Package glow-chart
Short Description Apex chart with extra batteries and an elegent api
License MIT
Homepage https://github.com/hasnayeen/glow-chart
Informations about the package glow-chart
GlowChart
Apex chart integration for filament with extra batteries and Filament like api
Hire me
I'm available for contractual work on this stack (Filament, Laravel, Livewire, AlpineJS, TailwindCSS). Reach me via discord
Overview
This plugin integrates Apex Charts on Filament to provide beautiful and interactive visualizations for your data. This package provides following features
-
Class based options and data setter with IDE autocompletion and docs.
-
Ability to generate chart data model with fluent methods.(via
flowframe/laravel-trend
) -
Ability to set customizable filters.
- Ability to enable/disable chart for users/team.(via
laravel/penant
)
Installation
You can install the package via composer:
Usage
Create a new chart widget with following command:
The above command will create following class
The protected static ?string $id
variable is used for referencing element to insert the Apex chart. You can override it but it should be unique from other chart on the page.
The protected static ?string $heading
variable is used to set the heading that describes the chart.
The options
method is used to set Apex Charts Options. The method should return an Hasnayeen\GlowChart\Options
object. You can set all the options for available for Apex chart by using fluent methods on Options
object.
First, you must set chart options via chart
method:
Pass a Hasnayeen\GlowChart\Chart
object to chart
method and set the type of chart using Hasnayeen\GlowChart\Enums\ChartType
enum. You can chain other methods to set other options.
Next, you must provide your data via series
method:
Setting Chart Data
You can pass data to chart in multiple ways. You already saw how to pass array, you can also pass a Illuminate\Support\Collection
object to data
method.
You can also generate chart data from an Eloquent model (flowframe/laravel-trend
is used under the hood for this). If you have created the chart for resource then you already have a resource
property, if not add one like below
Now you can chain all the method from flowframe/laravel-trend
to generate chart data from a model
You can also pass additional query method by providing a closure to the trend
method
Available methods for customizing query
You can use the following intervals:
- perMinute()
- perHour()
- perDay()
- perMonth()
- perYear()
And following aggregates:
- sum('column')
- average('column')
- max('column')
- min('column')
- count('*')
Testing
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
- Hasnayeen
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of glow-chart with dependencies
filament/filament Version ^3.0
flowframe/laravel-trend Version ^0.1.5
illuminate/contracts Version ^10.0
spatie/laravel-package-tools Version ^1.15.0