Saturday, 6 April 2013

Interfaces in Mathematica



An example of a flexible interface with tab buttons in the docked cell at the top of the notebook.

Opening display



Import some data using the import wizard. Selected columns chosen for importing are highlighted:



Display the data:


Style the data:



Thursday, 7 February 2013

Automatic report generation: part 4


This is the fourth of three posts (!) that show how Mathematica can automate the processing of data -- an addendum that shows some newly created features.

The new feature added is a function to compare various periods: month vs month, quarter vs quarter, calendar/financial year vs calendar/financial year, and year-to-date vs year-to-date.

Note that the recording was made on a 7 year old 32 bit computer (running Mathematica V8) and some of the operations shown were slowed down by having to run the recording.

The key take home message I'd like viewers to get from both these posts and the rail freight post is that mundane data processing tasks can be automated. It doesn't matter what format your data is in, as long as the format is coming consistently your data processing can be automated. Additionally this could be taken a step further can all be done in the background and scheduled to run as given times -- but there would be no video to show in that case!

This video is best viewed in full screen mode.


Wednesday, 6 February 2013

Point and click "Tableau-like" visuals in Mathematica: Part 2

This video shows an interactive application that displays Excel data -- although the source could be any of a wide variety of formats. Some dummy data on house sales activity is imported and displayed. The user chooses the locality they want to focus on and can adjust the viewing period. The bubble chart shows fraction of pending sales over the viewable period.

A more advanced version would link to e.g. Google Maps to display the location data automatically.

Note that the recording was made on a 7 year old 32 bit computer (running Mathematica V8) and some of the operations shown were slowed down by having to run the recording.

The key take home message I'd like viewers to get from this and other similar posts is that mundane data processing tasks can be automated. It doesn't matter what format your data is in, as long as the format is coming consistently your data processing can be automated.

This video is best viewed in full screen mode.



Wednesday, 23 January 2013

Automatic report generation: part 3


This is the third of three posts that show how Mathematica can automate the processing of data.

1. This video shows the presentation of the data as bar charts.

2. Some styling options are shown.

3. Bar charts can be toggled to show, for example, monthly, quarterly, and annual data.

Note that the recording was made on a 7 year old 32 bit computer (running Mathematica V8) and some of the operations shown were slowed down by having to run the recording.

The key take home message I'd like viewers to get from both these posts and the rail freight post is that mundane data processing tasks can be automated. It doesn't matter what format your data is in, as long as the format is coming consistently your data processing can be automated. Additionally this could be taken a step further can all be done in the background and scheduled to run as given times -- but there would be no video to show in that case!

This video is best viewed in full screen mode.


Automatic report generation: part 2

This is the second of three posts that show how Mathematica can automate the processing of data. This video shows some of the plotting features that are possible once the data has been processed.

1. Plots can be toggled to show, for example, monthly, quarterly, annual, and seasonal data.

2. Where a category that is plotted has nested line items a drill down button allows the break down of the line item to be shown.

3. Notes can be added to plots.

4. Underneath the plot the category being plotted is tabulated as a percentage of other categories/line items.

5. Plots, tables, and notes can be saved as PDFs for distribution among colleagues.

Note that the recording was made on a 7 year old 32 bit computer (running Mathematica V8) and some of the operations shown were slowed down by having to run the recording.

The key take home message I'd like viewers to get from both these posts and the rail freight post is that mundane data processing tasks can be automated. It doesn't matter what format your data is in, as long as the format is coming consistently your data processing can be automated. Additionally this could be taken a step further can all be done in the background and scheduled to run as given times -- but there would be no video to show in that case!

This video is best viewed in full screen mode.


Automatic report generation: part 1

This is the first of three posts that show how Mathematica can automate the processing of data. In this example the data is in the form of Excel spreadsheets. A previous example showed importing data from a PDF.

I haven't added a voice over so a few points to note:

1. The Excel files are generic balance sheets and P&Ls. Each file containing a separate worksheet for a given month.

2. The display objective is to nest different categories. So the first step is to establish a parent-child relationship. For example current assets is a child of assets. This relationship is stored so it only has to be done once.

3. The nesting allows the user to determine the level of drill down they want to display in the accounts.

4. The raw data for this example was monthly data. Once imported and processed the user can toggle between monthly, quarterly, calendar year, financial year, and year-to-date for presentation purposes.

Note that the recording was made on a 7 year old 32 bit computer (running Mathematica V8) and some of the operations shown were slowed down by having to run the recording.

The key take home message I'd like viewers to get from both these posts and the rail freight post is that mundane data processing tasks can be automated. It doesn't matter what format your data is in, as long as the format is coming consistently your data processing can be automated. Additionally this could be taken a step further can all be done in the background and scheduled to run as given times -- but there would be no video to show in that case!

This video is best viewed in full screen mode.


Monday, 3 December 2012

Point and click "Tableau-like" visuals in Mathematica

Tableau is a dominant software for data visualisation. Since about 2009 I have been suggesting Wolfram Research offer a Tableau-like interface for data visualisation. Tableau comes in many forms but includes a web plug-in and an iPad version. Some examples of the visuals can be found here.

As nice as the visuals are there doesn't seem to be anything that couldn't be built with Mathematica. The point lost on many seems to be that commercial users are time poor and do not want to be spending enormous time creating these things -- particularly when an off-the-shelf alternative like Tableau or Spotfire exists. Nevertheless, for the curious, some crude "Tableau-like" functionality can be put together fairly quickly.

Below is a video showing one such feature. The user (left) clicks on a point and a navigation box appears from which they can exclude the point, keep only the point or open a window showing all the data. This window with the data is very crude-- for this exercise I didn't see any point in styling it. Right clicking anywhere in the plot reverts to the original set of data. This sort of feature could be applied to bars, columns, lines and so on.

I didn't take any time to adjust the color function so you will see that as points are excluded the colours change. These sorts of things can easily be corrected. Additionally the navigation box can include functions which link to other coupled plots but for now that is as far as I have gone. I might have a go at making a complete Mathematica version of one of the Tableau examples one of these days.

The video is best viewed as full screen.

  And another video: