We have just released SpreadJS v14.1 and have added many new and exciting features you have been waiting for! These features include:
Pivot tables are among the most useful Excel features–allowing users to swiftly summarize and analyze large quantities of data with a simple and intuitive UI. The SpreadJS v14.1 release includes this feature, PivotPanel UI, and Excel import/export capabilities.
There are numerous business applications and use cases for pivot tables, including report layouts, auditing, marketing, and sales.
Camera shape is a new feature that lets you create a dynamic snapshot of a specified range of cells–making it ideal for creating stunning dashboards. This shape will reflect all of the live changes made in the actual cell range.
It works like a normal shape and includes Excel import/export, grouping/ungrouping, copying/pasting, and cross-sheet support. This benefits observing changes in a spreadsheet, even when those changes aren't currently displayed, such as showing a dashboard or report with data in other sheets.
We also added some functional enhancements to charts, as well as two new sparkline types!
This feature automatically word-wraps values in the Y-axis of a bar chart that are too long to fit in the designated area.
This new function allows you to specifically assign a URL to an image file, which will is then displayed in a cell. In addition to the URL, you can also specify a scale or clip a specific image section.
To support Excel parity, chart axes can now have their values set in reverse. This can help you meet certain requirements display data to better match the data type.
This new sparkline type allows you to visually interpret numerical data separated into different bins and is implemented using both continuous and discrete histograms.
This new sparkline is perfect for adding informative gauges to your dashboards with simple functions.
The WebService function is a calculation enhancement that returns data from any web service. This is written as the following formula:
Here, "URL" is the URL of the web service that will be called. You can import and export this function to and from Excel. One of the most common use cases for this function is to keep XML-based data from a website consistently updated within your spreadsheets.
We enhanced the LET function to make it consistent with Excel's updated implementation–meaning that "." characters are no longer allowed in the name of the function. In addition, localization is removed from the LET function to mimic Excel's behavior.
Shapes, group shapes, and connector shapes now support hyperlinks, including support for fromJSON and toJSON. Clicking on the shape will open up a link in the current web browser. Then it's as simple as setting the "hyperlink" property on the shape.
We added this Excel feature to SpreadJS to enable users to set compound line types for shapes, including simple, double, thick/thin, thin/thick, and triple.
This Excel behavior allows shapes to snap to a grid in the spreadsheet, in addition to aligning to the left, top, right, etc. It's now easier to align shapes with other elements in the workbook.
This feature matches Excel's implementation of filling in shapes with gradient colors. The gradient can travel in linear or radial directions and is set in the fill style using the GradientFillType.
This shape feature allows you to add textures or pictures in shapes and change the offset and scaling to show patterns of images.
Double-clicking in a shape now allows the user to edit the text within the shape. Format the text with a simple behavior, such as fill color, font, transparency, text direction, and text alignment. It also supports auto-break and text wrapping.
Shapes in SpreadJS now support both horizontal and vertical alignment in the v14.1 release. This makes it much easier to layout shapes within your workbook.
Distributing shapes allocates the spacing between selected shapes evenly so that those shapes are spaced correctly and with proper alignment. This feature supports both horizontal and vertical space distribution.
Of the numerous features added in SpreadJS v14.1, several were customer-requested. These enhancements were made to the main spreadsheet functionality:
We enhanced the frozen trailing row implementation to control the placement of the rows. Now you can display rows right after the data, rather than having a space between the data and the trailing rows.
We also exposed the API for the Undo/Redo stack so users have more control over the undo/redo operations in the workbook to manage memory consumption.
This new feature allows developers to choose where tabs in the workbook are displayed. By default, they are displayed at the bottom of the Spread instance, but can now move to the top to better fit your application's design.
By default, you can paste data to invisible cells, rows, or columns in SpreadJS. With this release, we added the ability to restrict that behavior.
This feature formats dates to utilize the browser's locale instead of a pre-specified date format.
Users can adjust the size of checkboxes and radio buttons to fit whatever design choices exist in the application.
Customize the style of cell buttons when the cursor is hovering over them.
This feature enhances the undo functionality so that when an action is undone, the previously selected cell will be re-selected.
This Excel parity feature increases the protection options that prevent groups from collapsing or expanding when the sheet is protected.
When you create a new file in the SpreadJS Designer and have unsaved changes, a warning message typically appears to remind you. With v14.1, you can now optionally disable this message.
TableSheet, now in beta, is a fast, data-bound table view with a spreadsheet functionality and an advanced relational data manager. It supports column formulas, styles, conditional formatting, sorting, and filtering. You can check out a demo of this beta feature in our demo explorer here.
We hope are you are excited about the new features and enhancements added to SpreadJS in the v14.1 release. To try these features, download a free 30-day trial of SpreadJS.