Poll Do you use the Race Hub pages? Would you miss them if they were removed?

Would you miss the Race Hub pages if they were removed?


  • Total voters
    18

Brogan

🦶 Leg end
Staff Member
Another poll on the site content.

Would you miss the Race Hub pages if they were removed?

That would also include the now retired Circuit pages.
 

ExtremeNinja

Karting amateur
Contributor
I think they would be useful if the site was more of an ezine and less community focused but they are lost for me. I very very rarely visit them.
 

Brogan

🦶 Leg end
Staff Member
I do find the information useful and it is presented in a way which isn't available elsewhere.

However, it is a laboriously manual process so I would gladly get rid of them if the majority of members don't bother even viewing the pages.

It's a few hours a week I can spend doing something else.
 

jez101

Bookies drive nice cars because of people like me
Contributor
Yes, I do use them quite often to look up results from races gone by.

I could of course find them somewhere else online if it saves you a load of hardship Brogan, but on this one I'm not sure the site would be quite the same....
 

Brogan

🦶 Leg end
Staff Member
Out of the three polls, the Race Hub pages I would argue are the most useful, just due to how the data is presented.

So I'm not averse to them remaining if people do actually use them.
 

mjo

Procrastinating
Contributor
Whilst I wouldn't say that Im a frequent viewer, as Brogan said they are presented in such a way which gives a great comparison, plus it is a useful reference tool, to have all the data in once place, instead of fishing around for it.
 

Brogan

🦶 Leg end
Staff Member
Another couple of questions.

Does anyone use the sorting and multiple row highlighting on the pages?
Do people hover over the charts to see the point data?

If not, I can ditch the Google API and just do basic tables and charts.
 

ExtremeNinja

Karting amateur
Contributor
I found the hover on the lapcharts very useful about an hour ago. Have never used them before. I only discovered the row highlighting about 10 minutes ago and it's quite cool. Not sure how much I'll use it but it was definitely of use to me today. I've been pretty oblivious of it up to now.
 

Brogan

🦶 Leg end
Staff Member
There is actually text below each table and chart explaining what can be done but I suspect you are similar to most other people in that they had no idea how interactive they were.

For example:
Mouseover the chart to see the points total for each driver after each Grand Prix.
Click on a row to highlight it; multiple rows can be selected using CTRL+click. Click on a column title to sort in ascending or descending order.

The same goes for the interactive lap charts on the OTDB - the text is at the bottom but seems to be overlooked.
 

ExtremeNinja

Karting amateur
Contributor
Yep. Click on one of the rounds. The navigation is hardly beautiful and it's not polished. You need to have a bit of a click around. Take a look at this years heavyweight sprints.
 

ExtremeNinja

Karting amateur
Contributor
There is more to it. Virtual timing, lap charts if you click on a driver, etc.

I am pointing out that your charts are better and that perhaps there might be a market for them as a packaged system for resale.

[Edit] There is sorting once you get into the individual rounds rather than the championship overview.
 

Brogan

🦶 Leg end
Staff Member
Oh I see.
I thought you were advocating we switch to those ones.

The Race Hub pages are just using the Google Chart API so it's already publicly available.

Here's the template code for one of them:
HTML:
<xen:include template="cta_google_table_css" />
 
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
 
<script type="text/javascript">
google.load('visualization', '1', {packages: ['table']});
 
function ctaTable() {
 
    var css = {
        'headerRow': 'cta_table_row_header',
        'tableRow': 'cta_table_row',
        'oddTableRow': 'cta_table_row_odd',
        'selectedTableRow': 'cta_table_row_selected',
        'hoverTableRow': 'cta_table_row_hover',
        'headerCell': 'cta_table_cell_header',
        'tableCell': 'cta_table_cell',
        'rowNumberCell': 'cta_table_cell_number'
    };
 
    var options = {
        'width': '300px',
        'cssClassNames': css,
        'allowHtml': true,
        'sort': 'disable'
    };
 
    var data = new google.visualization.DataTable();
        data.addColumn('number', 'Pos.');
        data.addColumn('string', 'Driver');
        data.addColumn('number', 'Points');
        data.addRows([
[1,'Sebastian Vettel',77],
[2,'Kimi Räikkönen',67],
[3,'Lewis Hamilton',50],
[4,'Fernando Alonso',47],
[5,'Mark Webber',32],
[6,'Felipe Massa',30],
[7,'Romain Grosjean',26],
[8,'Paul di Resta',20],
[9,'Nico Rosberg',14],
[10,'Jenson Button',13],
[11,'Sergio Pérez',10],
[12,'Adrian Sutil',6],
[13,'Daniel Ricciardo',6],
[14,'Nico Hülkenberg',5],
[15,'Jean-Éric Vergne',1],
[16,'Valtteri Bottas',0],
[17,'Pastor Maldonado',0],
[18,'Esteban Gutiérrez',0],
[19,'Jules Bianchi',0],
[20,'Charles Pic',0],
[21,'Giedo van der Garde',0],
[22,'Max Chilton',0]
        ]);
 
    var table = new google.visualization.Table(document.getElementById('cta_race-hub_table_standings_drivers'));
 
    table.draw(data, options);
}
 
google.setOnLoadCallback(ctaTable);
</script>
 
<script type="text/javascript">
google.load('visualization', '1', {packages: ['table']});
 
function ctaTable() {
 
    var css = {
        'headerRow': 'cta_table_row_header',
        'tableRow': 'cta_table_row',
        'oddTableRow': 'cta_table_row_odd',
        'selectedTableRow': 'cta_table_row_selected',
        'hoverTableRow': 'cta_table_row_hover',
        'headerCell': 'cta_table_cell_header',
        'tableCell': 'cta_table_cell',
        'rowNumberCell': 'cta_table_cell_number'
    };
 
    var options = {
        'width': '300px',
        'cssClassNames': css,
        'allowHtml': true,
        'sort': 'disable'
    };
 
    var data = new google.visualization.DataTable();
        data.addColumn('number', 'Pos.');
        data.addColumn('string', 'Constructor');
        data.addColumn('number', 'Points');
        data.addRows([
[1,'Red Bull-Renault',109],
[2,'Lotus-Renault',93],
[3,'Ferrari',77],
[4,'Mercedes AMG',64],
[5,'Force India-Mercedes',26],
[6,'McLaren-Mercedes',23],
[7,'Toro Rosso-Ferrari',7],
[8,'Sauber-Ferrari',5],
[9,'Williams-Renault',0],
[10,'Marussia-Cosworth',0],
[11,'Caterham-Renault',0]
        ]);
 
    var table = new google.visualization.Table(document.getElementById('cta_race-hub_table_standings_teams'));
 
    table.draw(data, options);
}
 
google.setOnLoadCallback(ctaTable);
</script>
 
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
 
function ctaChart() {
 
    var options = {
        'width': 862,
        'height': 600,
        'chartArea': {
            left: 30,
            top: 10,
            width: 692,
            height: 554
        },
        'fontName': 'Arial',
        'fontSize': 11,
        'backgroundColor': {
            fill: '#FFFFFF',
            stroke: '#E0E0E0',
            strokeWidth: 1
        },
        'gridlineColor': '#E0E0E0',
        'lineWidth': 1,
        'pointSize': 2,
        'legend': 'side',
        'legendTextStyle': {
            fontSize: 11
        },
        'hAxis': {
            textStyle: {
                fontSize: 11
            },
            slantedText: 'false',
            showTextEvery: 1
        },
        'vAxis': {
            baselineColor: '#606060',
            minValue: 0
        },
        'colors': [
            '#6600CC',
            '#9933FF',
            '#CC0000',
            '#FF3333',
            '#666666',
            '#999999',
            '#FF6600',
            '#FF9900',
            '#006666',
            '#339999',
            '#0099FF',
            '#33CCFF',
            '#009900',
            '#33CC33',
            '#000099',
            '#3333CC',
            '#FF66FF',
            '#FF99FF',
            '#FFEE00',
            '#FFEE66',
            '#33CC99',
            '#66FFCC'
        ]
 
    };
 
    var data = new google.visualization.DataTable();
data.addColumn('string', 'Grand Prix');
data.addColumn('number', 'Sebastian Vettel');
data.addColumn('number', 'Mark Webber');
data.addColumn('number', 'Fernando Alonso');
data.addColumn('number', 'Felipe Massa');
data.addColumn('number', 'Jenson Button');
data.addColumn('number', 'Sergio Pérez');
data.addColumn('number', 'Kimi Räikkönen');
data.addColumn('number', 'Romain Grosjean');
data.addColumn('number', 'Nico Rosberg');
data.addColumn('number', 'Lewis Hamilton');
data.addColumn('number', 'Nico Hülkenberg');
data.addColumn('number', 'Esteban Gutiérrez');
data.addColumn('number', 'Paul di Resta');
data.addColumn('number', 'Adrian Sutil');
data.addColumn('number', 'Pastor Maldonado');
data.addColumn('number', 'Valtteri Bottas');
data.addColumn('number', 'Jean-Éric Vergne');
data.addColumn('number', 'Daniel Ricciardo');
data.addColumn('number', 'Charles Pic');
data.addColumn('number', 'Giedo van der Garde');
data.addColumn('number', 'Jules Bianchi');
data.addColumn('number', 'Max Chilton');
        data.addRows([
['Australian',15,8,18,12,2,null,25,1,null,10,null,null,4,6,null,null,null,null,null,null,null,null],
['Malaysian',40,26,18,22,2,2,31,9,12,25,4,null,4,6,null,null,1,null,null,null,null,null],
['Chinese',52,26,43,30,12,2,49,11,12,40,5,null,8,6,null,null,1,6,null,null,null,null],
['Bahrain',77,32,47,30,13,10,67,26,14,50,5,null,20,6,null,null,1,6,null,null,null,null],
['Spanish',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['Monaco',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['Canadian',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['British',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['German',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['Hungarian',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['Belgian',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['Italian',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['Singapore',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['Korean',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['Japanese',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['Indian',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['Abu Dhabi',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['United States',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],
['Brazilian',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null]
        ]);
 
    var chart = new google.visualization.LineChart(document.getElementById('cta_race-hub_chart_standings_drivers'));
 
    chart.draw(data, options);
 
}
 
google.setOnLoadCallback(ctaChart);
</script>
 
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
 
function ctaChart() {
 
    var options = {
        'width': 862,
        'height': 600,
        'chartArea': {
            left: 30,
            top: 10,
            width: 688,
            height: 554
        },
        'fontName': 'Arial',
        'fontSize': 11,
        'backgroundColor': {
            fill: '#FFFFFF',
            stroke: '#E0E0E0',
            strokeWidth: 1
        },
        'gridlineColor': '#E0E0E0',
        'lineWidth': 1,
        'pointSize': 2,
        'legend': 'side',
        'legendTextStyle': {
            fontSize: 11
        },
        'hAxis': {
            textStyle: {
                fontSize: 11
            },
            slantedText: 'false',
            showTextEvery: 1
        },
        'vAxis': {
            baselineColor: '#606060',
            minValue: 0
        },
        'colors': [
            '#6600CC',
            '#CC0000',
            '#666666',
            '#FF6600',
            '#006666',
            '#0099FF',
            '#009900',
            '#000099',
            '#FF66FF',
            '#FFEE00',
            '#33CC99',
        ]
 
    };
 
    var data = new google.visualization.DataTable();
data.addColumn('string', 'Grand Prix');
data.addColumn('number', 'Red Bull-Renault');
data.addColumn('number', 'Ferrari');
data.addColumn('number', 'McLaren-Mercedes');
data.addColumn('number', 'Lotus-Renault');
data.addColumn('number', 'Mercedes AMG');
data.addColumn('number', 'Sauber-Ferrari');
data.addColumn('number', 'Force India-Mercedes');
data.addColumn('number', 'Williams-Renault');
data.addColumn('number', 'Toro Rosso-Ferrari');
data.addColumn('number', 'Caterham-Renault');
data.addColumn('number', 'Marussia-Cosworth');
        data.addRows([
['Australian',23,30,2,26,10,null,10,null,null,null,null],
['Malaysian',66,40,4,40,37,4,10,null,1,null,null],
['Chinese',78,73,14,60,52,5,14,null,7,null,null],
['Bahrain',109,77,23,93,64,5,26,null,7,null,null],
['Spanish',null,null,null,null,null,null,null,null,null,null,null],
['Monaco',null,null,null,null,null,null,null,null,null,null,null],
['Canadian',null,null,null,null,null,null,null,null,null,null,null],
['British',null,null,null,null,null,null,null,null,null,null,null],
['German',null,null,null,null,null,null,null,null,null,null,null],
['Hungarian',null,null,null,null,null,null,null,null,null,null,null],
['Belgian',null,null,null,null,null,null,null,null,null,null,null],
['Italian',null,null,null,null,null,null,null,null,null,null,null],
['Singapore',null,null,null,null,null,null,null,null,null,null,null],
['Korean',null,null,null,null,null,null,null,null,null,null,null],
['Japanese',null,null,null,null,null,null,null,null,null,null,null],
['Indian',null,null,null,null,null,null,null,null,null,null,null],
['Abu Dhabi',null,null,null,null,null,null,null,null,null,null,null],
['United States',null,null,null,null,null,null,null,null,null,null,null],
['Brazilian',null,null,null,null,null,null,null,null,null,null,null]
        ]);
 
    var chart = new google.visualization.LineChart(document.getElementById('cta_race-hub_chart_standings_teams'));
 
    chart.draw(data, options);
 
}
 
google.setOnLoadCallback(ctaChart);
</script>
 
<div class="JsOnly">
<div class="cta_standings_gridRow">
    <div class="cta_standings_gridCell1">
        <div class="messageText baseHtml">
            <h3 class="cta_h3_noMargin">{xen:phrase cta_race_hub_driver_standings}</h3>
        </div>
        <div id="cta_race-hub_table_standings_drivers"></div>
    </div>
    <div class="cta_standings_gridCell2">
        <div class="messageText baseHtml">
            <h3 class="cta_h3_noMargin">{xen:phrase cta_race_hub_constructor_standings}</h3>
        </div>
        <div id="cta_race-hub_table_standings_teams"></div>
    </div>
</div>
 
<div class="cta_clearBoth"></div>
 
<div class="cta_element">
    <div class="messageText baseHtml">
        <h3 class="cta_h3_noMargin">{xen:phrase cta_race_hub_driver_points}</h3>
    </div>
    <div id="cta_race-hub_chart_standings_drivers"></div>
    <div class="messageText baseHtml">
        <div class="cta_note">
            {xen:phrase cta_race_hub_mouseover_chart_points_total_driver_gp}
        </div>
    </div>
</div>
 
<div class="cta_elementNopadding">
    <div class="messageText baseHtml">
        <h3 class="cta_h3_noMargin">{xen:phrase cta_race_hub_constructor_points}</h3>
    </div>
    <div id="cta_race-hub_chart_standings_teams"></div>
    <div class="messageText baseHtml">
        <div class="cta_note">
            {xen:phrase cta_race_hub_mouseover_chart_points_total_constructor_gp}
        </div>
    </div>
</div>
</div>
 

ExtremeNinja

Karting amateur
Contributor
Cool! Thanks Brogan. I might just get on that myself then. ;)

All the circuits have timing systems, it's the data presentation that they are all crap at. This looks like a great solution. :thumbsup:
 

Brogan

🦶 Leg end
Staff Member
It would be if Google allowed the code to be hosted locally.
It's against the TOS though.

I really want to switch to Flot, which is what the FF1 charts are using.
 
Top Bottom