Public demo. Rearrange, save and share layouts as you like — the data is reset every hour. About Warp Pivot Docs Support filamentphp.com Buy a license
Skip to content

Start here

Every pivot in this panel is a Filament page with a pivot() method, over 200,000 sales from 300 stores. The totals are added up by the database (SQLite here) and only the result is sent to the browser, where it is drawn on a canvas. Each page has "View code" to show exactly how it is configured.

Pivots

Sales analysis

200,000 sales by region and prefecture, per year. Click a region to open its prefectures, double-click a cell to list its sales, then search, sort and edit them right there (double-click a quantity to change it), and filter by channel or category. Open "Fields" to drag in stores, products, months or price bands.

Monthly trend

One sum shown four ways: the sales of each month, the change from the month before in yen and in percent, and the running total through the year. Each is the same Sum with showAs(); users can switch it in the field panel.

Top products

Categories ranked by sales, each with its ten best-selling products and the rest added up as "Other". The ranking and the cut are done in the database with orderByValue() and limit(10).

Busiest hours

Orders by weekday and hour of day as a heatmap. Filter by channel to compare: shops peak at lunch and after work, online orders late in the evening, and wholesale only on weekday mornings.

Charts

The same pivot drawn as a chart. Switch between ten chart types and the table from the toolbar, hover for the values, click the legend to hide a channel, and click a bar to list its sales. Open a region in the table and the chart follows.

Calculated values

Values computed from other values with formulas, right in every subtotal: average price per unit, profit per order and a margin flag, next to the standard deviation of order sizes. Open "Fields" and click the calculator to write your own formula, or the cog of a value to switch its aggregation and add conditional formatting.

Classic report

The classic (tabular) layout: one column per row dimension and subtotals below each group, with the rank of every prefecture in its region and an index against the average. Use "Layout options" to switch to the compact or flat layout and to hide grand totals or subtotals; drag a column edge to resize it.

Filters and top N

The five weakest stores of every region, with stores sorted Z to A elsewhere. Right-click a header to sort, filter or open a whole level, or open "Fields" and click the funnel of a dimension to pick its values from a searchable list. Drop a field in "Filters" to filter by it without adding rows or columns. Conditions keep what matches: stores whose sales are over ¥3,000,000, products whose name contains "Tea", or the sales of the last 3 months.

Number formats

Negative numbers in parentheses, a dash for empty cells, the average time of day as a clock, and conditional formatting with formulas: a margin under 40% on sales over ¥40M is bold red, over 40.5% is green, and totals are italic. Open "Value settings" from a header to change them, and export to PDF with a header and page numbers.

Developer hooks

Hook the pivot into your app. Right-click a cell and choose "Plan a follow-up" to run a Filament action with the records of that cell. JavaScript stars the cells over ¥100M with customizeCell(), adds "Log this cell" to the menu, and lists the events the pivot sends below it.

Dashboard widgets

Two pivots as widgets on a Filament dashboard: the channel mix of each category as a share of its row, and this year's sales by region and quarter. Each widget has its own fields, sorting and export.

Try these

Rearrange the fields

Press "Fields" and drag Channel into the columns, or Product into the rows. Only the open headers are queried, so even 200,000 rows answer at once.

Open a region

Click a region to open its prefectures, or use "Expand all". Each click is one GROUP BY query for just the opened part.

Drill down

Double-click a cell, or press Enter on it, to list the sales behind that number, 25 per page.

Edit without leaving

In the list of sales, search by store or product, click a header to sort, hide columns, double-click a quantity to change it, or press Edit to change a sale. The totals behind it update as soon as you save.

Filter by a condition

Click the funnel of a field and pick a condition: stores whose sales are over ¥3,000,000, products whose name contains "Tea", or the sales of the last 3 months.

Calculate per record

Open "Fields", click the calculator and tick "Calculate for each record": [amount] - [cost] is worked out for every sale, then added up.

Sort by a value

Click the Sales header of a year to sort the regions by it: largest first, then smallest first, then back to the original order.

Copy to a spreadsheet

Select cells with the mouse or Shift + arrow keys, check the sum and average below, and press Ctrl/Cmd+C to paste them into Excel with their headers.

Save a layout

Rearrange the pivot and save it as a layout, private or shared. The address bar keeps the layout too, so you can bookmark or send the link.

Export and print

Download what is on screen as Excel, CSV, PDF or a PNG image with a header and page numbers, or print it with the headers on every page. Save the layout to a file and open it again.

Filters

The filters are Filament table filters. Pick a channel or a category and every total, subtotal and drill-down follows.

In ten languages

The pivot ships with English, Japanese, German, French, Spanish, Italian, Brazilian Portuguese, Korean and Chinese. Pick a language in the bar at the top: the pivot's menus, dialogs, totals and dates switch, while the field names come from the demo's data.