Download the PHP package koassi/filament-highcharts without Composer

On this page you can find all versions of the php package koassi/filament-highcharts. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package filament-highcharts

Highcharts integration for Filament

Latest Version on Packagist GitHub Code Style Action Status Total Downloads

Strongly inspired by Leandro Ferreira's Apex Charts plugin, this plugin delivers Highcharts integration for Filament panels.

Requirements

Note: Highcharts is free for personal/non-commercial use. For commercial use, please review the Highcharts license.

Installation

You can install the package via composer:

Register the plugin for the Filament Panels you want to use it in:

Usage

Start by creating a widget with the command:

The command will interactively ask for the chart type, and where to create the widget (panel, resource, or alongside your Livewire components).

Your widget extends Koassi\FilamentHighcharts\Widgets\HighchartsWidget and defines its chart through the getOptions() method, which returns a standard Highcharts configuration array:

Don't forget to register the widget in your panel/resource/page, as with any Filament widget.

Ready-to-use widgets demonstrating filters, polling, deferred loading and raw JS options — the ones behind the screenshots above — are available in the examples/ directory.

Available chart samples

The generator ships with ready-to-use stubs for the following chart types. For more samples, please refer to the Highcharts documentation.

Chart Chart Chart
Line chart Bar chart Pie chart
Area chart Arearange chart Areaspline chart
Areasplinerange chart Bellcurve chart Boxplot chart
Bubble chart Bullet chart Column chart
Columnpyramid chart Columnrange chart Cylinder chart
Dependencywheel chart Dumbbell chart Errorbar chart
Funnel chart Funnel3d chart Gauge chart
Heatmap chart Histogram chart Item chart
Lollipop chart Networkgraph chart Organization chart
Packedbubble chart Pareto chart Pictorial chart
Polygon chart Pyramid chart Pyramid3d chart
Sankey chart Scatter chart Scatter3d chart
Solidgauge chart Spline chart Streamgraph chart
Sunburst chart Tilemap chart Timeline chart
Treegraph chart Treemap chart Variablepie chart
Variwide chart Vector chart Venn chart
Waterfall chart Windbarb chart Wordcloud chart
Xrange chart Arcdiagram chart

The list of available chart types is defined in the chart_options key of the package config file.

Setting a widget title

You may set a widget title (heading):

Optionally, you can use the getHeading() method.

Setting a widget subheading

You may set a widget subheading:

Optionally, you can use the getSubheading() method.

Setting a chart id

You may set a chart id:

If none is provided, a random id is generated.

Making a widget collapsible

You may set a widget to be collapsible:

You can also use the isCollapsible() method:

Setting a widget height

By default, the widget height is set to 300px. You may set a custom height:

Optionally, you can use the getContentHeight() method:

Setting a widget footer

You may set a widget footer:

You can also use the getFooter() method:

Custom view:

Html string:

Hiding header content

You can hide header content by NOT providing these:

Filtering chart data

You can set up chart filters to change the data shown on the chart. Commonly, this is used to change the time period that chart data is rendered for.

Filter schema

You may use components from the Schemas package to create custom filter forms. Use the HasFiltersSchema trait and implement the filtersSchema() method to define the filter form schema:

The data from the custom filter is available in the $this->filters array. You can use the active filter values within your getOptions() method:

Single select

To set a default filter value, set the $filter property:

Then, define the getFilters() method to return an array of values and labels for your filter:

You can use the active filter value within your getOptions() method:

Live updating (polling)

By default, chart widgets refresh their data every 5 seconds.

To customize this, you may override the $pollingInterval property on the class to a new interval:

Alternatively, you may disable polling altogether:

Defer loading

This can be helpful when you have slow queries and you don't want to hold up the entire page load:

Loading indicator

You can change the loading indicator:

You can also use the getLoadingIndicator() method:

Dark mode

Dark mode is supported and enabled by default. It follows the Filament theme (light / dark / system) and reacts to theme changes in real time. For the best result, enable styled mode in your chart options:

Extra options and Formatters

Chart options returned by getOptions() are converted to JSON, so they cannot contain JavaScript functions. Use the extraJsOptions() method to add raw JavaScript options (formatters, callbacks...) that are merged into the chart options on the client side:

Publishing config

Optionally, you can publish the config file (to customize the chart types offered by the generator command, or the Highcharts version loaded from the CDN) using:

Highcharts version

The Highcharts library is loaded from the code.highcharts.com CDN, pinned to the version set in the config file so that a new Highcharts major release cannot silently break your charts:

Publishing views

Optionally, you can publish the views using:

Publishing translations

Optionally, you can publish the translations using:

Publishing stubs

Optionally, you can publish the widget stubs used by the make:filament-highcharts command using:

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

License

The MIT License (MIT). Please see License File for more information.


All versions of filament-highcharts with dependencies

PHP Build Version
Package Version
Requires php Version ^8.3
filament/filament Version ^5.0
spatie/laravel-package-tools Version ^1.93
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package koassi/filament-highcharts contains the following files

Loading the files please wait ...