In EasyMorph you analyze data and answer spontaneous questions by transforming data on the fly (typically using the context menu on columns and cells). There are two main tools in EasyMorph that help understand data better: sandboxes and charts.
Charts are created similarly to derived tables — right-click a table and then choose Derive > Chart. Another option is pressing 'Derive chart' button in menu Design.
Similarly to derived tables, a chart is linked to the final table state, which is a result of the last transformation of the table. It means that when the source table changes, all linked charts (and derived tables) are automatically recalculated. To specify a chart category and series simply drag column headers to the chart as shown below. To remove a category or a series drag them from chart to the grey work space, or right-click it and choose Remove.
Charts automatically aggregate data from the source table, and sort it using one of the three sort modes:
Hint: You can copy/paste charts into documents and presentations by right-clicking a chart and choosing Copy image.
A sandbox is a temporary table that contains a static copy of a transformation result, or data pasted from the clipboard (e.g. copied from Excel or another EasyMorph project). Sandboxes start with "Sandbox" transformation. Other than that, they are just regular tables. Think of sandboxes as of EasyMorph-specific clipboard, or static "data photographs" not linked to any transformation.
Most frequently sandboxes are used for one-time analysis of a transformation output when, for example, you need to check data for duplicates, or find a certain value without making changes to a transformation chain. To create a sanbox with a transformation's result, right-click the transformation and choose "Send to sandbox", or press Ctrl+B. When a sandbox is created you can apply transformations to its data as to any other table.
Note that data in sandboxes survives reloads, but is not stored with the project. When a project is opened, all its sandboxes are empty. Also removing a sandbox can't be undone.
Another case for sandboxes is comparison of states of the same table, but calculated using different parameter values. Since sandboxes survive reloads, you can run a project with one parameter (e.g. Year = 2015), send a snapshot of a table to a sandbox, then run the project with another parameter (e.g. Year = 2016) and compare new state of the table with the one stored in the sandbox.
Sandboxes can also be used for bringing in data from Excel, or another EasyMorph project. For this, copy data into the clipboard, then right-click the workspace in EasyMorph (the grey background) and choose "Paste data" to create a new sandbox, populated with data from the clipboard. Alternatively, you can paste data into any existing sandbox.
Finally, with the help of sandboxes and "Either table" transformation it is possible to safely inject test datasets at any point of a transformation logic. For this, insert "Either table" into a transformation chain, and then link it to a sandbox. When the sandbox is empty the transformation logic will work as usually. When some data is pasted into the sandbox, "Either table" will switch to using this data.
Starting from version 3.0 it is possible to generate simple PDF reports. This can be helpful when you need to share results of analysis with people that don't have EasyMorph.
To design a report go to menu Report on the main toolbar. EasyMorph will switch into report designing mode. In this mode transformations are not available. You can see tables in their final state, and charts. Adjust size and position of charts and tables. Hide charts and tables that are not needed. Add titles, paragraphs of text, and images if necessary.
Each project tab can be a report page — one page per tab. Once you formatted the report objects, you can export particular tabs into a PDF file. Note that the name of the output PDF file can be defined as an expression, which is convenient for generating multiple PDF reports with different parameters (also from the command line).Read next: Running external programs