Skip to main content
replaced http://stackapps.com/ with https://stackapps.com/
Source Link

If you don't mind doing this interactively, you could simply get your rep dumpyour rep dump and parse it out.

Here is a JavaScript example of grouping by day (because it is easy), using Soapi.JS2Soapi.JS2. This code has been included in the quickstart example, and since Soapi.JS2Soapi.JS2 is in alpha, you may want to refer to that latest code. I will update this answer when Soapi.JS2Soapi.JS2 goes beta.

If you don't mind doing this interactively, you could simply get your rep dump and parse it out.

Here is a JavaScript example of grouping by day (because it is easy), using Soapi.JS2. This code has been included in the quickstart example, and since Soapi.JS2 is in alpha, you may want to refer to that latest code. I will update this answer when Soapi.JS2 goes beta.

If you don't mind doing this interactively, you could simply get your rep dump and parse it out.

Here is a JavaScript example of grouping by day (because it is easy), using Soapi.JS2. This code has been included in the quickstart example, and since Soapi.JS2 is in alpha, you may want to refer to that latest code. I will update this answer when Soapi.JS2 goes beta.

added 176 characters in body
Source Link
Sky Sanders
  • 12.1k
  • 3
  • 32
  • 60

Here is a JavaScript example of grouping by day (because it is easy), using SoapiSoapi.JS2.JS2 This code has been included in the quickstart example, which will have anand since Soapi.JS2 is in alpha release announcement later today.., you may want to refer to that latest code. I will update this answer when Soapi.JS2 goes beta.

Here is a JavaScript example of grouping by day (because it is easy), using Soapi.JS2, which will have an alpha release announcement later today....

Here is a JavaScript example of grouping by day (because it is easy), using Soapi.JS2. This code has been included in the quickstart example, and since Soapi.JS2 is in alpha, you may want to refer to that latest code. I will update this answer when Soapi.JS2 goes beta.

removed orderby - was in the wrong position to operate correctly
Source Link
Sky Sanders
  • 12.1k
  • 3
  • 32
  • 60

Caveat: this code will do what you want, but I don't think the data coming from the api is usable right now....

You certainly could use the api to do something like this but in order to get the data in a form that will give you the points you want your min/max window would have to be from 1970 to 2050.

I will bang out another simple usageHere is a JavaScript example forof grouping by day (because it is easy), using Soapi.JS thatJS2, which will get you startedhave an alpha release announcement later today....

var context = new Soapi.ApiContext(apiKey);

context.initialize(function() {
    context.official.stackApps.users().byId(14).reputation()
    .fromdate("1/1/1970").todate("1/1/2040").pagesize(100).pagecount(0)
    .invoke(function(items) { // items = collection of all your rep_change
        
        var output = data
        .GroupBy("Math.floor($.on_date.getTime() / 86400000) *86400000")
        .Select("new Date($.Key()) + '\\t' + $.Sum('$.positive_rep - $.negative_rep') + '\\n'")
        .ToString();

        alert(output);

    });
});

Same code, using scripted lamdas

var context = new Soapi.ApiContext(apiKey);

context.initialize(function() {
    context.official.stackApps.users().byId(14).reputation()
    .fromdate("1/1/1970").todate("1/1/2040").pagesize(100).pagecount(0)
    .invoke(function(items) { // items = collection of all your rep_change

        var output = items
        .GroupBy(function(item) {
            return Math.floor(item.on_date.getTime() / 86400000) * 86400000
        }).Select(function(group) {
            return new Date(group.Key()) + '\t' + group.Sum(function(item) {
                return item.positive_rep - item.negative_rep
            }) + '\n'
        }).ToString();

        alert(output);

    });
});

Generated Requests:


http://api.stackapps.com/1.0/users/14/reputation?fromdate=25200&todate=2209014000&pagesize=100&page=1&jsonp=Soapi._jsonp2
http://api.stackapps.com/1.0/users/14/reputation?fromdate=25200&todate=2209014000&pagesize=100&page=2&jsonp=Soapi._jsonp3
http://api.stackapps.com/1.0/users/14/reputation?fromdate=25200&todate=2209014000&pagesize=100&page=3&jsonp=Soapi._jsonp4

Output:


Wed Aug 18 17:00:00 MST 2010    10
Tue Aug 17 17:00:00 MST 2010    20
Mon Aug 16 17:00:00 MST 2010    50
Sun Aug 15 17:00:00 MST 2010    305
Fri Aug 13 17:00:00 MST 2010    30
Thu Aug 12 17:00:00 MST 2010    110
Wed Aug 11 17:00:00 MST 2010    420
Tue Aug 10 17:00:00 MST 2010    350
Mon Aug 9 17:00:00 MST 2010 70
Sun Aug 8 17:00:00 MST 2010 75
Fri Aug 6 17:00:00 MST 2010 90
Thu Aug 5 17:00:00 MST 2010 30
Tue Aug 3 17:00:00 MST 2010 22
Mon Aug 2 17:00:00 MST 2010 35
Sat Jul 31 17:00:00 MST 2010    100
Thu Jul 29 17:00:00 MST 2010    115
Wed Jul 28 17:00:00 MST 2010    123
Tue Jul 27 17:00:00 MST 2010    10
Sun Jul 25 17:00:00 MST 2010    265
Sat Jul 24 17:00:00 MST 2010    -195
Fri Jul 23 17:00:00 MST 2010    10
Thu Jul 22 17:00:00 MST 2010    70
Wed Jul 21 17:00:00 MST 2010    50
Mon Jul 19 17:00:00 MST 2010    50
Sat Jul 17 17:00:00 MST 2010    50
Thu Jul 15 17:00:00 MST 2010    110
Wed Jul 14 17:00:00 MST 2010    20
Tue Jul 13 17:00:00 MST 2010    10
Mon Jul 12 17:00:00 MST 2010    38
Sat Jul 10 17:00:00 MST 2010    40
Thu Jul 8 17:00:00 MST 2010 40
Wed Jul 7 17:00:00 MST 2010 10
Tue Jul 6 17:00:00 MST 2010 173
Mon Jul 5 17:00:00 MST 2010 50
Sun Jul 4 17:00:00 MST 2010 50
Sat Jul 3 17:00:00 MST 2010 40
Fri Jul 2 17:00:00 MST 2010 10
Thu Jul 1 17:00:00 MST 2010 200
Wed Jun 30 17:00:00 MST 2010    130
Tue Jun 29 17:00:00 MST 2010    40
Mon Jun 28 17:00:00 MST 2010    70
Sun Jun 27 17:00:00 MST 2010    40
Sat Jun 26 17:00:00 MST 2010    40
Thu Jun 24 17:00:00 MST 2010    10
Tue Jun 22 17:00:00 MST 2010    55
Mon Jun 21 17:00:00 MST 2010    10
Sun Jun 20 17:00:00 MST 2010    70
Sat Jun 19 17:00:00 MST 2010    18
Fri Jun 18 17:00:00 MST 2010    30
Thu Jun 17 17:00:00 MST 2010    175
Wed Jun 16 17:00:00 MST 2010    60
Tue Jun 15 17:00:00 MST 2010    90
Mon Jun 14 17:00:00 MST 2010    60
Sun Jun 13 17:00:00 MST 2010    10
Sat Jun 12 17:00:00 MST 2010    20
Fri Jun 11 17:00:00 MST 2010    20
Sun Jun 6 17:00:00 MST 2010 10
Sat Jun 5 17:00:00 MST 2010 55
Tue Jun 1 17:00:00 MST 2010 45
Mon May 31 17:00:00 MST 2010    30
Sun May 30 17:00:00 MST 2010    10

You certainly could use the api to do something like this but in order to get the data in a form that will give you the points you want your min/max window would have to be from 1970 to 2050.

I will bang out another simple usage example for Soapi.JS that will get you started.

Caveat: this code will do what you want, but I don't think the data coming from the api is usable right now....

You certainly could use the api to do something like this but in order to get the data in a form that will give you the points you want your min/max window would have to be from 1970 to 2050.

Here is a JavaScript example of grouping by day (because it is easy), using Soapi.JS2, which will have an alpha release announcement later today....

var context = new Soapi.ApiContext(apiKey);

context.initialize(function() {
    context.official.stackApps.users().byId(14).reputation()
    .fromdate("1/1/1970").todate("1/1/2040").pagesize(100).pagecount(0)
    .invoke(function(items) { // items = collection of all your rep_change
        
        var output = data
        .GroupBy("Math.floor($.on_date.getTime() / 86400000) *86400000")
        .Select("new Date($.Key()) + '\\t' + $.Sum('$.positive_rep - $.negative_rep') + '\\n'")
        .ToString();

        alert(output);

    });
});

Same code, using scripted lamdas

var context = new Soapi.ApiContext(apiKey);

context.initialize(function() {
    context.official.stackApps.users().byId(14).reputation()
    .fromdate("1/1/1970").todate("1/1/2040").pagesize(100).pagecount(0)
    .invoke(function(items) { // items = collection of all your rep_change

        var output = items
        .GroupBy(function(item) {
            return Math.floor(item.on_date.getTime() / 86400000) * 86400000
        }).Select(function(group) {
            return new Date(group.Key()) + '\t' + group.Sum(function(item) {
                return item.positive_rep - item.negative_rep
            }) + '\n'
        }).ToString();

        alert(output);

    });
});

Generated Requests:


http://api.stackapps.com/1.0/users/14/reputation?fromdate=25200&todate=2209014000&pagesize=100&page=1&jsonp=Soapi._jsonp2
http://api.stackapps.com/1.0/users/14/reputation?fromdate=25200&todate=2209014000&pagesize=100&page=2&jsonp=Soapi._jsonp3
http://api.stackapps.com/1.0/users/14/reputation?fromdate=25200&todate=2209014000&pagesize=100&page=3&jsonp=Soapi._jsonp4

Output:


Wed Aug 18 17:00:00 MST 2010    10
Tue Aug 17 17:00:00 MST 2010    20
Mon Aug 16 17:00:00 MST 2010    50
Sun Aug 15 17:00:00 MST 2010    305
Fri Aug 13 17:00:00 MST 2010    30
Thu Aug 12 17:00:00 MST 2010    110
Wed Aug 11 17:00:00 MST 2010    420
Tue Aug 10 17:00:00 MST 2010    350
Mon Aug 9 17:00:00 MST 2010 70
Sun Aug 8 17:00:00 MST 2010 75
Fri Aug 6 17:00:00 MST 2010 90
Thu Aug 5 17:00:00 MST 2010 30
Tue Aug 3 17:00:00 MST 2010 22
Mon Aug 2 17:00:00 MST 2010 35
Sat Jul 31 17:00:00 MST 2010    100
Thu Jul 29 17:00:00 MST 2010    115
Wed Jul 28 17:00:00 MST 2010    123
Tue Jul 27 17:00:00 MST 2010    10
Sun Jul 25 17:00:00 MST 2010    265
Sat Jul 24 17:00:00 MST 2010    -195
Fri Jul 23 17:00:00 MST 2010    10
Thu Jul 22 17:00:00 MST 2010    70
Wed Jul 21 17:00:00 MST 2010    50
Mon Jul 19 17:00:00 MST 2010    50
Sat Jul 17 17:00:00 MST 2010    50
Thu Jul 15 17:00:00 MST 2010    110
Wed Jul 14 17:00:00 MST 2010    20
Tue Jul 13 17:00:00 MST 2010    10
Mon Jul 12 17:00:00 MST 2010    38
Sat Jul 10 17:00:00 MST 2010    40
Thu Jul 8 17:00:00 MST 2010 40
Wed Jul 7 17:00:00 MST 2010 10
Tue Jul 6 17:00:00 MST 2010 173
Mon Jul 5 17:00:00 MST 2010 50
Sun Jul 4 17:00:00 MST 2010 50
Sat Jul 3 17:00:00 MST 2010 40
Fri Jul 2 17:00:00 MST 2010 10
Thu Jul 1 17:00:00 MST 2010 200
Wed Jun 30 17:00:00 MST 2010    130
Tue Jun 29 17:00:00 MST 2010    40
Mon Jun 28 17:00:00 MST 2010    70
Sun Jun 27 17:00:00 MST 2010    40
Sat Jun 26 17:00:00 MST 2010    40
Thu Jun 24 17:00:00 MST 2010    10
Tue Jun 22 17:00:00 MST 2010    55
Mon Jun 21 17:00:00 MST 2010    10
Sun Jun 20 17:00:00 MST 2010    70
Sat Jun 19 17:00:00 MST 2010    18
Fri Jun 18 17:00:00 MST 2010    30
Thu Jun 17 17:00:00 MST 2010    175
Wed Jun 16 17:00:00 MST 2010    60
Tue Jun 15 17:00:00 MST 2010    90
Mon Jun 14 17:00:00 MST 2010    60
Sun Jun 13 17:00:00 MST 2010    10
Sat Jun 12 17:00:00 MST 2010    20
Fri Jun 11 17:00:00 MST 2010    20
Sun Jun 6 17:00:00 MST 2010 10
Sat Jun 5 17:00:00 MST 2010 55
Tue Jun 1 17:00:00 MST 2010 45
Mon May 31 17:00:00 MST 2010    30
Sun May 30 17:00:00 MST 2010    10
deleted 2 characters in body
Source Link
Sky Sanders
  • 12.1k
  • 3
  • 32
  • 60
Loading
Source Link
Sky Sanders
  • 12.1k
  • 3
  • 32
  • 60
Loading