Visualising a mix of companies in a spatial graph (I)

In the previous post I presented a number of companies from different branches of industry, with a revenue between – roughly – 1 and 10 billion euros. Easyjet presented its annual report in GBP and Tesla in USD and a formal conversion is not easy. Earnings come in during the year, against fluctuating exchange rates , but the balance is a kind of photograph at the end of the year. On the other hand we know this is just a blog, illustrating the power of visualisation, using spatial (3D) graphs. So an error of about 5% wouldn’t harm. I like to convert the currencies but many others are available. After putting all values to euros using a 2015 average for the exchange-rate, I got this input-file:

Inputfile company-mix

Inputfile company-mix

For the people who want to look for themselves, e.g. using the free AnRep3D demo (fully functional, but showing only one company a time) I present the numbers below.

Zalando, 2015, 2960, 120, 1270, 2120

Tesla, 2015, 3690, -810, 830, 5320

Elecnor, 2015, 1880, 66, 7400, 3490

Easyjet, 2015, 6470, 760, 6670, 3100

USG_People, 2015, 2550, 20, 487, 1280

All values are in millions.

I have to admit I didn’t read my own manual (I wrote it myself, I know) and made a stupid mistake as a result (again). Now the parameter-line says: 5, 1, 500, 10, 3 meaning:

  • five companies
  • one annual value each
  • divide all values in data-lines by 500
  • put 10% of extra space between the buildings (because USG People is a long title)
  • choose font-size 3 for the labels

However, instead of 500 for the third value I entered 0.002. I thought it was a multiplier instead of the divider it actually is! One can imagine what happened: the building were huge, gigantic. Zooming out, the labels were nowhere to be found (of course not – their distance to the buildings was enormous as well).

After a while I realised what had happened and corrected the third value. This time the graph was normal and even very interesting . In the next blogpost I will show and discuss  this graph. Meanwhile, have a look at or read the earlier AnRep3D posts.

Posted in Uncategorized, Visualising Financial Information | Tagged , , , , , , , , , , , , , , , , , , , , | Leave a comment

Comparing different types of companies in a spatial graph

In previous AnRep3D posts (e.g. Oil & Gas companies in spatial graphs  and Looking at the 3D-graph), a couple of companies in the same branch of industry (oil & gas, banks) were compared in spatial graphs generated by AnRep3D. This time I thought it would be nice to compare a couple of companies from different industries because their “buildings” in the graph will have very different shapes.

Interesting industries to show in such a graph could be retail,  manufacturing, utilities, service providers selling “transport space” (e.g.  an airline or general logistics company) and a service provider selling “people’s hours” (like a temp agency or a consultancy firm).

It’s quite easy to think of a couple of companies, but putting a large one (with a revenue of e.g. over a 100 billion of  euros) next to a smaller one (with e.g. a revenue  of 1 million) wouldn’t be very informative. Therefore the size of the companies shown should be within the same range.

After some browsing I came up with two sets of companies: moderate ones on a global scale and the larger ones.

  • For the first set I chose Zalando, Tesla, Elecnor, Easyjet  and USG  – all with annual revenues between 2 and 5 billion.
  • The second set are Tesco, PSA, E.on, Maersk and IBM  – all with revenues between 50 and 100 billion. Although very different in size, the shape of the building would be more related to the type of industry they are in than their size.

At the moment I am still collecting some numbers for the larger ones, but I could get hold of revenue, profit, equity and total assets for 2015 already. I only have to convert Tesla and Easyjet from USD and GBP to EUR yet. This means the input-file will be created soon. The graph will be available immediately afterwards, because collecting the numbers is the time-consuming part. Of course it’s the other way round for our customers: the numbers are there, but creating a the kind of spatial graph AnRep3D offers would take a lot of time. And that’s why our generator is a useful instrument for analysts!

Posted in Visualising Financial Information | Tagged , , , , , , , , , , , , , , , , , , , , , , , | Leave a comment

Oil & Gas companies in spatial graphs

In some respects Oil & Gas companies are the opposite of banks. Usually they have large amounts of money fixed in all kinds of assets and their equity is mostly over 25% of their total assets. This means Oil & Gas companies  won’t have the “deep” buildings we saw for the banks in our spatial graphs.

On the other hand, the industry had its own crisis: the sudden drop of the oil price. If we look at the graph of the oil-price in time, it looks more or less like this:

Oil-price 2012-2017

Oil-price 2012-2017

Before 2014 everything seemed to be fine, but after 2014 the world was gloomy. That’s why 2013 and 2015 are interesting years to look at balance and profit & loss of some companies in the industry. We took four – headquartered in USA and Europe (UK, Netherlands and France): ExxonMobil, BP, Royal Dutch Shell and Total.

This time the numbers were collected from several websites directly: , ,  and

The input-file looks like this (remember – all amounts represent millions, so the actual amounts are mostly billions!):

Input-file Oil&Gas companies

Input-file Oil&Gas companies

After starting the generator (the .jar-file) and selecting the input- & output-files, the graph was generated. The first impression is nice. In the front (2013) large towers with thick green roofs). Completely different from the corridor-like buildings representing banks.

Spatial Graph of Oil&Gas companies - by AnRep3D

Spatial Graph of Oil&Gas companies – by AnRep3D

Even in 2015, although BP showing a red roof (loss) and the buildings being lower and narrower (less equity), they don’t look like banks. However, the buildings in the front – representing 2013 – are much higher than the ones in the second row, representing 2015. It’s certainly not the perspective fooling us! In 2015 the roofs are still green, except for BP, but thinner than  before. Looking from above we can see the companies actually shrunk!

Top-view Oli&Gas graph

Top-view Oli&Gas graph

Of course our message is not about banks or Oil&Gas companies, but about the powerful spatial graphs, generated by AnRep3D.

For those who want to see the real 3D graph and manipulate it themselves, the link is here. Click and hold to tilt and rotate the graph. Double click to translate the graph. Right-click and move to zoom.


Posted in Visualising Financial Information | Tagged , , , , , , , , , , , , , , , , | 1 Comment

Looking at the 3D-graph

Finally we are able to have a look at the AnRep3D graph. Everybody will have .htm-files associated with the browser, so the only thing to do is double click at the file in Explorer (Windows). In the screenshot the graph (we called it blog.htm) is just below the generator itself (the .jar-file).

 selecting output-file

The graph opens in the browser and looks quite small. This is the result of the extreme balances banks have. Hardly any equity compared to the total assets. Because of the narrow, very deep “building” the distance to the graph is quite large.

 first graph

By right-clicking and moving the mouse (or rubbing the touchpad, like I do), the graph will come near.

graph zoomed in

Now we can see something is wrong: the rather long name of ABN-AMRO leads to an overlap of the label with the one for ING. The distance was already 100% extra, so we have to make the label smaller. Either by shortening the name or by reducing the font-size from 5 to e.g. 3. The red line points at the adjusted value in the input-file.

adjusted font

We can start the generator again and choose the same input- and output-files as we took in the previous post. This time the file blog.htm already exists, so the generator asks whether we want to overwrite and we simply confirm.


Now the graph is much better and we can start to manipulate it. Zooming in and out using the right button. Tilting, turning by moving the mouse. Translating by clicking somewhere in the graph.

smaller labels


Just try the original 3D graph!

SNS (to the right)  seems to be much, much smaller than the other three. The building for ABN-AMRO in 2005 looks quite large, but in 2010 it is rather small and on top of this, the roof is red instead of green. This means in 2010 there was no profit, but a loss.

ABN AMRO shrunk

In 2015 ABN-AMRO is still small, but the roof is green. Interesting is the width of the buildings. In 2005 they were very narrow, but in 2010 a little bit broader. This is the result of a higher equity, forced by the Basel-accords for banks.


So by translating just a couple of values from an annual report into a 3D graph, we can learn a lot about a series of companies – just at a glance!

Try this 3D-graph yourself!

Posted in Visualising Financial Information | Tagged , , , , , , , , , , , , , , , | 2 Comments

Converting the input-file into a 3D graph

The creation of the spatial graph is the easiest part of the process. With all data collected and available in the input-file, the only thing to be done is to feed the numbers to the AnRep3D generator.

We have to start the generator first, of course. I took the .jar-file (the actual generator program) and placed a copy in the folder where I keep all the relevant data (Annual Reports, screenshots and the input-file). This way it’s easier, because the generator will offer its own folder first as a default-environment.

The first screen to appear after double-clicking the .jar-file (a link on the desktop would also do) is the one below.

Start screen

This first screen a bit of a concise manual, presenting the most important properties of the generator. Usually we will ignore it and just click OK like I did now.

Then the selection-window comes up and the input-file can be chosen. We called it AnRep3D.txt –  a very original name. After selecting the file from the list the name is shown below the left button and the button for the output-file become available. Now the output-file will be created (or overwritten). The name I chose this time was even more creative: blog – no need to add an extension, because it will be .htm anyway! No warning came up, because the file didn’t exist yet.

Below the sequence is presented in a cartoon-like image.

Input-output process

After clicking “start” the graph is ready as the final screen indicates. This final screen will present the name of the licensee in the versions commercially sold.

Final screen

For this example I didn’t take the demo-version, as it only creates one building. The plan was to show four banks during three years so we would need the fully functional generator to get the twelve related buildings. Fortunately I didn’t have to buy a licence, because it’s my own company’s product!

Posted in Visualising Financial Information | Tagged , , , , , , , , , , , , , , , | Leave a comment

Adding the parameter-line while correcting an error

In this post we will add the parameter-line to the input-file. The parameter-line is the first line and contains a couple of values, partially determining the size of the graph. The first two numbers however, tell the generator how many blocks (companies) of data have to be read and which number of lines will be in every block (years).

But before I will show  how it’s done, I have to correct an error in my previous post (shame on me!). From time to time I simply forget the order of the values in the input-file. It’s stupid, because I have created hundreds of AnRep3D-graphs and even wrote the manual myself. Yet I simply forget from time to time  (perhaps it’s my age?). So I looked in the manual last time, but because I was in a hurry I checked the introduction instead of the paragraph explaining the structure of the input-file. It said: “For now we will ignore these possibilities and concentrate on the set revenue, profit, assets, equity.” I didn’t realise that’s the wrong order! Actually it is revenue, profit, equity, assets and for a good reason. Equity will be (much) lower than total assets. The fifth value (after company, year, revenue and profit) determines the width of the building and it’s nicer to have a long and narrow building, than some kind of wall in front. It’s not forbidden to switch the values, but the graph will be much better in the advised order. I’m  happy I discovered this inconsistency in my manual in time! I should use the same order everywhere of course – even if it’s in not the part giving instructions.

After this discovery I switched total assets and equity in the input-file (the first line is still empty, but not for long):

Equity Assets switched

Now the parameter-line has to be added. We chose four companies and took three years for each of them. This means the parameter-line will start with 4,3 – but the series will go on.

The amounts in the input-file are huge. Even if we entered millions instead of actual euros, we have to scale down the values e.g. a thousand times. The revenues, determining the heights of the buildings range from about 1000 to 23000. At the same time the Assets, determining their length range from a couple of about 60000 to nearly one million. Let’s see what will happen if we put in a reduction-value of 5000.

After the size-adjustment value, we can ask for extra spacing between the buildings. This can be useful to give the labels some more space, preventing them from overlapping. There is a default space, with can be kept by adding 0 (%) but also doubled by adding 100(%) – and every integer in between.

Finally, the size of the labels can be set. Small labels will be hard to read, but large labels will probably overlap and cause a blur.

The proof of the pudding is in the eating, so let’s take 4, 3 (no discussion possible) and then 1000, 100, 5 It means the size of the buildings will be reduced 5000 times, space will be doubled (100% extra) and the labels will have an arbitrary size of 5.

So 4, 3, 5000, 100, 5 will be in the parameter-line (4; 3; 5000; 100; 5 would also be allowed). Let’s save the input-file as AnRep3D.txt  – a very original name!

Input-file with parameter-line

Posted in Visualising Financial Information | Tagged , , , , , , , , , , , , , , , | Leave a comment

Creating an input-file

It sounds a bit boring of course and maybe it is, but I still want to tell you about the next step: putting the collected numbers from the annual reports into a text-file. This file will be read by the AnRep3D graph-generator and the result will be a graph like the one shown at the AnRep3D website (link is either: , http:// or just

The structure of the input-file is quite simple. The first line is a parameter-line, which will be discussed in another post. After this line there will be a block for each company (in this case it will be ABN-AMRO, ING, Rabo and SNS-Reaal) and within every block there will be a line for every year of the company. Four companies and three years for each and every of them, makes twelve lines of data.

I picked the series of years 2005, 2010, 2015 on purpose. A lot happened in this period and actually ABN-AMRO and SNS (it lost the Reaal-part!) in 2015 were completely different from 2005: torn apart and rescued. Oh yes, ING had its difficulties and the Rabobank faced a lot of serious issues only after the crisis. All those changes will make the graph very interesting! Or at least that’s what I hope – I haven’t seen it yet.

A data-line has to start with the name of the company, because the label will derived from it. Then, after a comma of semicolon to separate the values, the year. Then four numbers will follow, without decimal points, commas (of course not – it’s a separator) of valuta-signs. Shrinking the very large numbers to obtain the best graph (a range between zero and one hundred provides the best graph) will be done by the parameters. Again, we will explain this later.
The four values are, in this order: Revenue, Profit, Assets, Equity.

From here I won’t bother you with all the typing – I just took the numbers from my collages of screenshots and put them in notepad. Here is the result (to the right – to the left there is still a piece of glued snippets of ABN-AMRO’s annual reports.


The part to the left is there on purpose! Try and find the numbers in the collage, marked with a red softbox in the file to the right. Does it match? Is the order really Revenue, Profit, Assets, Equity?

 Next time the parameter-line will be added and then the input-file is ready to be read by the generator!

Posted in Visualising Financial Information | Tagged , , , , , , , , , , , , , | Leave a comment