User Tools

Site Tools





  • Make screencasts using gtkRecordMyDesktop. Saved as ogvs.
  • Make videos using OpenShot.
    • AVI (mpeg4)
    • Use 776×582 (4:3) video (saved as showmedo profile) - suitable for display on
    • Video 5Mb/s DVD quality (1.25 too poor)
    • Sound 256 kb/s (Near CD) - small increase in overall size but much better quality
    • Quality - High
    • NB if a transition problem, put in a separate track.
  • Soundtracks from
  • Stills using the GIMP


Put up a quick feature overview once we have charting. Should be able to find by searching for sofa statistics.


Converting OGV screencast to AVI using WinFF

WinFF provides a GUI for converting OGV format videos into AVI. OGV is the format gtk-recordmydesktop produces its screencasts.

Use Add to include the file e.g. /home/g/out.ogv

Then set all the settings: I used 1000 as the Video Bitrate, 60 as the Frame Rate, 800×600 as the Video Size, ignored aspect ration, and opted in for 2 pass (for better sound quality).

Then click on Convert.

Demo Script

Hi, I'm Grant Paton-Simpson from Auckland, New Zealand and I'm here to introduce the SOFA Statistics package.

SOFA stands for “Statistics Open For All” and the goal of the project is to provide a free, open-source statistics, analysis, and reporting program that is easy to use.

Here is the project website at, and there is also a blog, and a wiki.

Analysis starts with data, and to help get started, SOFA Statistics has a built-in SQLite demonstration dataset.

[Minimise web browser]

The demonstration dataset has 1500 records, although SOFA can handle much, much more. You will notice that the gender field stores 1s and 2s. Fortunately SOFA makes it easy to add labels (and store them for reuse), so in display and reports you would see Male and Female, not 1 and 2.

[Minimise SQLite]

Here is the SOFA Statistics program itself.

[Click on Enter Data]

You can access your data e.g. SQLite, MySQL, MS Access etc from within SOFA if you need to. And there is no need to import the data - you can link to multiple databases at the same time and access all of their tables.

The focus of this video tutorial is how to make report tables based on your data. So I'll click on Make Tables:

[Click on Make Tables]

Here you can create different sorts of table and I'll run through each of them. Let's start with a simple frequency table of Age Group.

We want Age Group to appear as the rows so we click on Rows - Add, and select Age Group. For the columns we want a frequency and a column percentage so we click on Columns - Config, and select Col % (Freq is already selected by default).

Note how a demonstration table appears below to help us check that we are doing the right thing.

To add a total to the Age Group rows we click on Rows - Config and select Total.

Finally, let's add a title and subtitle - “Age Group Frequency Table” and “Made-up Data”.

OK - I like the design of that table so I'll now run it and view the output.

[Click on Run]

Note that the output is also added to the report file that we have selected on the Make Tables form.

If we want to change the style, we can select a different style here:

[Click on Style - Browse]

The styles are created using css files just like web pages so you can edit these yourself if you wish and make new table styles.

[Click on Run, close it]

OK - I'll just restore the default style.

[Click on Clear]

Let's now look at a table with both row and column variables. We'll start by adding Car as a row, and Country as a column. Then we add a total to Car and Column % to Country.

Note that we can view and edit variable and value labels by right clicking on a variable.

[Do it for both Car and Country]

OK - let's add a title “Car Popularity by Country”, and “Made-up Data” and run it.

[Run report]

Even though this is fictitious data, I have included a few patterns. Here we can see that Toyota is more popular in Japan than in Germany and that the pattern for BMW is similar in the other direction.

Now, if we want to sort the table by Car name we can select By Label and run it again. As you can see, it starts with Audi and continues in alphabetical order.


Making nested tables is very easy with SOFA Statistics. Let's start by adding Country as a row and Gender as columns. Then select Gender and Add Age Group under it. Then we can configure Age Group to include a Total and a Row % this time.

The title will be “Main Demographics” and “Made-up Data”.

[Run, then close and Clear]

The second main type of table summarises rows. Let's start by selecting a numeric variable, Weight. We can configure that to show Mean, Median, and Standard Deviation. The title will be “Weight Distribution”, “Made-up Data”.

[Run, show, and close]

We can also look at weight by Gender and Age Group. Start by adding Gender as a column and Age Group under it. Let's also add a Total to Age Group.


As you can see, average weight increases with age, and males are heavier on average than females.

[close, and Clear]

The third main type of table shows raw data, albeit with labels applied.

So let's select ID, then Fname, Lname, and Phone (which are in the order we want so we can add them altogether), then Country and Gender. We want the first column to function as a row label so we tick the appropriate box. You can see the formatting change accordingly.

Finally, you can export the script used to generate a table.

[Click Export, and minimise SOFA]

As you can see, the script is laid out tidily to make it easy to understand, and to incorporate in an automated reporting system.

[Click second tab]

All our output is in the report file we identified in the Make Tables form.

[Double click and display in Firefox]

One very useful feature is the ability to copy and paste the HTML directly into a spreadsheet e.g. MS Excel or Open Office Calc.

[Demonstrate then minimise]

[Close things down while wrapping up]

OK - that's all we have time for in this video tutorial. And don't forget to check out the website.

proj/screencasts.txt · Last modified: 2011/01/10 04:42 (external edit)