From 79593505114e38a44659337daf6eb54507efd4e9 Mon Sep 17 00:00:00 2001 From: rir Date: Thu, 9 Mar 2023 20:27:07 -0500 Subject: 207 --- challenge-207/0rir/raku/ch-1.raku | 109 ++++++++++++++++++++++++++++++++++++++ challenge-207/0rir/raku/ch-2.raku | 64 ++++++++++++++++++++++ 2 files changed, 173 insertions(+) create mode 100644 challenge-207/0rir/raku/ch-1.raku create mode 100644 challenge-207/0rir/raku/ch-2.raku diff --git a/challenge-207/0rir/raku/ch-1.raku b/challenge-207/0rir/raku/ch-1.raku new file mode 100644 index 0000000000..1276bc31ef --- /dev/null +++ b/challenge-207/0rir/raku/ch-1.raku @@ -0,0 +1,109 @@ +#!/usr/bin/env raku +# :vim ft=raku sw=4 expandtab # 🦋 ∅ ≡ ∩ ≢ ∈ « ␤ » ∴ +use v6.d; +use Test; + +=begin comment +207-1: Keyboard Word Submitted by: Mohammad S Anwar +Given an array of words, print all the words in the given array that can +be types using alphabet on only one row of the keyboard. + +Let us assume the keys are arranged as below: +Row 1: qwertyuiop +Row 2: asdfghjkl +Row 3: zxcvbnm + +Example 1 +Input: @words = ("Hello","Alaska","Dad","Peace") +Output: ("Alaska","Dad") +Example 2 +Input: @array = ("OMG","Bye") +Output: () + +=end comment + +my @Test = + [ ["Hello","Alaska","Dad","Peace"], ["Alaska","Dad"].Set ], + [ ["Hello","Alaska","Dad","Peace"], ["Dad","Alaska"].Set ], + [ ["Try","Daff","XXX"], ["Try","Daff","XXX"].Set ], + [ ["OMG","Bye"], [].Set ], + [ ["were","tort","yup","trey","popeye","pout","we", + "you","i","rue","quiet","etiquette","tire","retort", + "wet", "wry","rye", "trope","yet",], + ["were","tort","yup","trey","popeye","pout","we", + "you","i","rue","quiet","etiquette","tire","retort", + "wet", "wry","rye", "trope","yet",].Set ], + [ ["tie","rotor","op","worry","queue","or","try","type","True", + "out","iop","write","put","rw","ro","quit","top","tree", + "as","has","add","trie"], + ["tie","rotor","op","worry","queue","or","try","type","True", + "out","iop","write","put","rw","ro","quit","top","tree", + "as","has","add","trie"].Set ], +; + +my @T-keyboard-live = + ['qwer', 'tyuiop', 'asd', 'fghjkl', 'zxc',' vbnm'], ['a','b'], + ['qwertyuiop', 'asdfghjkl', 'zxcvbnm'], ['a',], + ['qwertyuiopasdfghjklzxcvbnm'], +; + +my @T-keyboard-die = + [,].Array, ['qwe', 'asd', '', 'zxc'], + ['qawe', 'asd', 'zxc'], ['qwe', 'asd', 'zxec'], + ['qwe', 'axsd', '', 'zxc'], +; +plan @Test + @T-keyboard-die + @T-keyboard-die; + +my @qwerty-def = 'qwertyuiop', 'asdfghjkl', 'zxcvbnm'; + +# Keyboard convert and validate. +sub keyboard-valid( @kb-def where * !~~ Empty --> Array) { + + my @kr = @kb-def.map: *.lc.comb.Set; + + for ^@kr -> $me { + for ^@kr -> $other { + next if $me == $other; + if (@kr[$me] ∩ @kr[$other] ≢ Empty ) + or (@kr[$me] ≡ Empty.Set) + or ( @kr[$other] ≡ Empty.Set) + { + die 'Bad keyboard: empty line or shared keys.'; # ??? rules + } } } + @kr; +} + +sub filter-one-row-words( @word, @key-row-def --> Set) { + my @one-row-word = gather for @word -> $w { + if $w.lc.comb.Set ⊆ @key-row-def.any { + take $w; + next; + } } + @one-row-word.Set; +} + +for @T-keyboard-live -> @t { + lives-ok { keyboard-valid @t }, 'live'; +} +for @T-keyboard-die -> @t { + dies-ok { keyboard-valid @t }, 'die'; +} + +my @kr = keyboard-valid( @qwerty-def); + +for @Test -> (@in, $exp) { + my $got = filter-one-row-words( @in, @kr); + is-deeply $got, $exp, "$got" +} +done-testing; + +my @array = 'Raku','do', 'does', 'any', "tie","rotor","worry", + "queue","or","try","type","True", 'when','error', + "out","write","put",'for',"rw","ro","quit","tree", + "as","has","add","trie", 'once'; + +my $set = filter-one-row-words( @array, @kr); +say "\nInput: @array = (@array.sort())"; +say " Output: ", $set.keys.sort; + +exit; diff --git a/challenge-207/0rir/raku/ch-2.raku b/challenge-207/0rir/raku/ch-2.raku new file mode 100644 index 0000000000..1154f74e67 --- /dev/null +++ b/challenge-207/0rir/raku/ch-2.raku @@ -0,0 +1,64 @@ +#!/usr/bin/env raku +# :vim ft=raku sw=4 expandtab # 🦋 ∅ ≡ ∩ ≢ ∈ « ␤ » ∴ +use v6.e.PREVIEW; +use Test; + +=begin comment +207-2: H-Index Submitted by: Mohammad S Anwar +Given an array of integers containing citations a researcher has received +for each paper, compute the researcher’s H-Index. For more information +please checkout the wikipedia page. + +The H-Index is the largest number h such that h articles have at least h +citations each. For example, if an author has five publications, with 9, 7, +6, 2, and 1 citations (ordered from greatest to least), then the author’s +h-index is 3, because the author has three publications with 3 or more +citations. However, the author does not have four publications with 4 or +more citations. + +Example 1 +Input: @citations = (10,8,5,4,3) +Output: 4 + +Because the 4th publication has 4 citations and the 5th has only 3. +Example 2 +Input: @citations = (25,8,5,3,3) +Output: 3 + +The H-Index is 3 because the fourth paper has only 3 citations. + +=end comment + +my @Test = + [ (), 0], + [ (0,), 0], + [ (0,0,0), 0], + [ (1,), 1], + [ (∞,), 1], + [ (∞,∞), 2], + [ (1,∞,1,∞,∞), 3], + [ (1,∞,∞,1), 2], + [ (1,∞,1,1), 1], + [ (10,), 1], + [ (0,0,1), 1], + [ (10,8,5,4,3), 4 ], + [ (25,8,5,3,3), 3 ], +; +plan +@Test; + +sub h-index( $l = (10,8,5,4,3) --> Int ) { + my $r = $l.sort({$^b <=> $^a}) + .pairs + .List + .first( {.key ≤ .value -1}, :end) + .key; + // $r ?? $r + 1 !! 0; +} + +for @Test -> ($t, $exp) { + is h-index($t), $exp, "$exp <- $t.Str()"; +} +done-testing; +my @citations = (0,0,1,0,3,2,7,∞,∞,∞); +say "\nInput: @citations = @citations[]\nOutput: ", h-index(@citations); +exit; -- cgit From 69e5455842b6434bcd932c635c684c202ff57db6 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Mon, 13 Mar 2023 12:47:43 +0000 Subject: - Added solutions by Carlos Oliveira. - Added solutions by James Smith. - Added solutions by Simon Green. - Added solutions by Ali Muradi. - Added solutions by Lubos Kolouch. - Added solutions by Roger Bell_West. - Added solutions by Jaldhar H. Vyas. - Added solutions by Bruce Gray. - Added solutions by Jan Krnavek. - Added solutions by Duncan C. White. - Added solutions by Colin Crain. --- challenge-207/colin-crain/blog.txt | 1 + challenge-207/colin-crain/perl/ch-1.pl | 265 ++++++ stats/pwc-challenge-007.json | 463 +++++----- stats/pwc-challenge-008.json | 469 +++++----- stats/pwc-current.json | 610 ++++++++----- stats/pwc-language-breakdown-summary.json | 58 +- stats/pwc-language-breakdown.json | 1372 ++++++++++++++--------------- stats/pwc-leaders.json | 812 ++++++++--------- stats/pwc-summary-1-30.json | 108 +-- stats/pwc-summary-121-150.json | 94 +- stats/pwc-summary-151-180.json | 28 +- stats/pwc-summary-181-210.json | 50 +- stats/pwc-summary-211-240.json | 42 +- stats/pwc-summary-241-270.json | 38 +- stats/pwc-summary-271-300.json | 60 +- stats/pwc-summary-31-60.json | 92 +- stats/pwc-summary-61-90.json | 36 +- stats/pwc-summary-91-120.json | 68 +- stats/pwc-summary.json | 634 ++++++------- 19 files changed, 2870 insertions(+), 2430 deletions(-) create mode 100644 challenge-207/colin-crain/blog.txt create mode 100755 challenge-207/colin-crain/perl/ch-1.pl diff --git a/challenge-207/colin-crain/blog.txt b/challenge-207/colin-crain/blog.txt new file mode 100644 index 0000000000..df950c70f9 --- /dev/null +++ b/challenge-207/colin-crain/blog.txt @@ -0,0 +1 @@ +https://colincrain.com/2023/03/12/cool-key-lime-pie diff --git a/challenge-207/colin-crain/perl/ch-1.pl b/challenge-207/colin-crain/perl/ch-1.pl new file mode 100755 index 0000000000..50ad9d64f0 --- /dev/null +++ b/challenge-207/colin-crain/perl/ch-1.pl @@ -0,0 +1,265 @@ +#!/Users/colincrain/perl5/perlbrew/perls/perl-5.32.0/bin/perl +# +# 207-1-hot-key-lime.pl +# +# Keyboard Word +# Submitted by: Mohammad S Anwar +# You are given an array of words. +# +# Write a script to print all the words in the given array that can +# be types using alphabet on only one row of the keyboard. +# +# Let us assume the keys are arranged as below: +# +# Row 1: qwertyuiop +# Row 2: asdfghjkl +# Row 3: zxcvbnm +# +# Example 1 +# Input: @words = ("Hello","Alaska","Dad","Peace") +# Output: ("Alaska","Dad") +# +# Example 2 +# Input: @array = ("OMG","Bye") +# Output: () + +# analysis: +# +# Not counting any added-on computer-specific extras, a normal +# English-language keyboard contains five rows of keys: one +# comprising number digits, three containing letters and at the +# bottom a space bar and special qualifiers. We are asked +# whether we can construct a given word using only one of these +# available rows. The letters are kept to the central portion +# of the rows, with the outer keys devoted to various brackets +# and punctuation, along with functions to select character +# case and ratchet the text down to the begining of the next +# line, or delete a charater already written. +# +# Thus have three rows on our keyboard that come into play +# here, as all of the letter options of the alphabet are +# contained within these rows. We'll note the apostrophe is +# located on one of these rows as well, but we'll get to that. +# Suffice to say for now it works. +# +# The rows as laid out are physical lists of keys, distributed +# left-to-right. Given a word, we can look at each letter in +# turn and see which row contains it, and if we go through the +# whole word without changing rows then we have a winner. +# Doen't seem so hard. We could go about this a few ways. +# +# The physical model of the problem set suggests searching for +# each letter in turn, and while this certainly would work as +# outlines above it also sounds terrible ineficient. I think +# the best abstraction to apply here is set theory. Readers of +# thses pages will know that me and set theory go way back, and +# I consider us to be very close. +# +# Viewed this way each row, then, contains a subset of the +# alphabet and now this is the core to the problem at hand: to +# determine whether the letters that make up a word, considered +# as a set of letters, in wholly contained within one of these +# three other sets. +# +# Same thing said just a little bit differently, really. +# +# THe problem though is that Perl doesn't really *do* sets as +# such. There's no "set" operator, or data type for that +# matter, out-of-the-box. But we can, however, make perfectly +# good sets out of what Perl does provide us, in what turns out +# to be a fast and very efficient manner for the character data +# we're using here. Perl, as we know, is very good for +# manipulating text. +# +# Perl has only three basic data types for holding scraps of +# information: individual items contained as scalars, ordered +# lists of these scalars, and associated mappings of scalars to +# other scalars. It's this last type, so-called associative +# arrays, or hashes, that we use to make our sets. +# +# A hash is a collection of data, with keys, exclusively +# strings, that map to other scalars which can be characters, +# references or anything. Given a key, the item that the key +# points to is returned. The thing is, though, that the keys +# are kept as a collection themselves, with no inherent +# ordering and Perl's own private method for locating them with +# this collection. Lookup is fast and efficient and for all +# practical purposes completely independant of the size of the +# collection. Lookup time is swift and constant, no matter +# whether the hash has ten or ten billion elements. It's kind +# of freaky, actually, that. Perl can find a key, if it exists, +# very quickly. +# +# The keys, then, considered just by themselves, make a pretty +# good model of a set, don't they? And they do. It doesn't even +# matter what the other half of the association is, either, +# although we can choose to use it if we want, because we get +# the whole package when we buy in. +# +# Special Cases: +# +# Before we begin let's cosider what it means to be a word. Not +# is a deep, metaphysical existential-crisis sort of way, but +# just superfically: what characters are we looking at, really? +# Letters, obviously, but actually there are some other +# legitimate options one might not think of out-of-hand. +# Punctuation can be viewed in modern phrasing as metadata +# applied to lists of words, and is thus by definition not part +# of the words it refers to. Sounds right. But some special +# characters are parts of words and not punctuation. In English +# these would be hyphens and apostrophes, to make compound and +# contracted words respecively. So on the other hand we'll need +# to accomodate them. +# +# Numbers, though, are never a part of any text word I can +# think of, when used properly. Used improperly, such as in +# "leetspeek", the sky's the limit, but we really can't go into +# the realm of evey possible encoding of a word in every +# possible filthy degenerate way. It's too much. +# +# I mean, practically it would be trivial to expand our method +# to do this, but I do think it loses some the focus around the +# problem, with what amounts to raising the noise-floor to +# little practical benefit. So leetspeek is out, with all +# numbers. Let's keep it tight. Dictionary words it is. +# +# Lastly, what of capitalization? The temptation would be to +# lowercase everything as a data-purification ritual, as +# parsing apart a sentence could yield a word beginning with a +# capital letter. It's interestinfg speci=ulation but there is +# no mention made of any sentences, and I think the best +# assumption to be made should be that we are given a word, +# relaxed, as it would be found in its natural habitat. We want +# the words to be comfortable. +# +# Compassion is a virtue. +# +# But some words, specifically proper nouns, are valid words +# that contain capital letters. Diminishing those letters seems +# to me morally dubious if not blatently wrong. It's about +# respect for one's elders, kids. We need to take capitals into +# account when they are required. I mean, maybe we don't *have* +# to, but my moral compass demands that I do the right thing +# here. YMMV. +# + + +# method: +# +# We can go about constucting our set model two ways. In one, +# we construct a single hash of all three rows of keyboard +# characters and use these keys to point to their respective +# rows. We keep track of the row of the first character found +# and if any other rows don't match we throw the deadbeats out. +# We run a repectible estabishment here, after all. +# +# Alternately we can compose three separate lookups, one for +# each keyboard row. In this case we can just use the key +# values as sets, not even bothering with values, and using the +# `exists` keyword to see whether a particular key is found. +# +# It's little difference either way, but the second makes it +# slightly easier to accomodate the special cases, so we'll use +# that. It's also more pure to the underlying set theory, if +# you care about such things it models the methodology closer, +# which might matter more were we to upscale the technique for +# some other prupose. I mean, maybe? Sure, why not? +# +# The apostophe is, in this method, just another character. The +# fact we can't actually make any contracted words using the +# middle row is an unfortunate fact of life and is not my +# fault. Then again, we can just make something up as I have no +# intention fo evaluating whether the input is a meaningful +# word. That'd be a very difficult problem indeed, and I'd +# argue not even linguistically meaningful. I'm a +# dyed-in-the-wool descriptionist and you'll claw my coinage +# from my cold, dead hands. +# +# Hyphens are solid, proper characters too, but the hyphen +# character is up on the row with the digits, without any +# characters on it. Thus the hyphen is not included in any of +# the letter-row sets and any hyphenated word will fail the +# test. Such is life. This is however robustly modeled and as +# such is also fine. +# +# For capitalizations we could get clever and create some sort +# of capitalization flag. Somehow. Seems legit. Then, if you +# look, we have a modifier key on two two rows that we can use +# to change case: the "shift" key and the "caps lock" key, on +# the lower and middle rows respectively. As we are being asked +# what is possible, toggling the caps lock on, typing a letter +# and toggling it off again is a perfectly legitimate option. +# So we could set a flag on detecting a capital, then check to +# see if the lowercase letter is in one of these two rows +# before continuing, as we can only allow a capital if we can +# type the character using any single row. +# +# Or to be double-plus clever we can encode the capital letters +# when we build our hash sets, and afterwards treat every +# letter same as any other, and not worry about any setting or +# unsetting flags. I like this idea. +# +# In the end, I will note, that the keyboard itself needs to be +# hard-coded. The distribution of the keys is unique, odd, and +# a little bit arbitrary on top of it all, so it is what it is +# and we will need to start with a row-wise keyboard map. But +# these will be encodes as the physical ordered lists of keys +# we described at the beginning, and we will convert them to +# our various hashes. We'll leave out punctuation and remember +# where the case-keys are when we process the middle and lower +# rows. +# + +# +# © 2022 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +use warnings; +use strict; +use utf8; +use feature ":5.26"; +use feature qw(signatures); +no warnings 'experimental::signatures'; + +## the middle three keyboard rows +my @top = qw( q w e r t y u i o p ); +my @mid = qw( a s d f g h j k l ' ); +my @bot = qw( z x c v b n m ); + +## the lookups, accommodating capitals in middle and bottom rows +my $top = { map { $_ => undef } @top }; +my $mid = { map { $_ => undef, uc($_) => undef } @mid }; +my $bot = { map { $_ => undef, uc($_) => undef } @bot }; + +## input +my @words = @ARGV; +@words == 0 and @words = qw( hello Alaska dad peace ); +my @out; + + +WORD: for my $word (@words) { + my $row; + my $char = substr $word, 0, 1; + + ## select the row containing the first character + for ( $top, $mid, $bot ) { + $row = $_ and last if exists $_->{$char} + } + + ## short-circuit out if we can't find any remaining letter in the row + for ( 1..length($word)-1 ) { + next WORD if not exists $row->{substr $word, $_, 1} + } + + ## ergo, the word can be created from the row, so add it to the output + push @out, $word; +} + +## the output from the examples is in my opinion unnecessarily complicated +## but reproducing the formatting provided a fun challenge in itself + +say '( ', (join ', ', map {qq("$_")} @out) ,' )'; + + diff --git a/stats/pwc-challenge-007.json b/stats/pwc-challenge-007.json index 296b92c025..0e40820deb 100644 --- a/stats/pwc-challenge-007.json +++ b/stats/pwc-challenge-007.json @@ -1,186 +1,23 @@ { - "legend" : { - "enabled" : 0 - }, - "xAxis" : { - "type" : "category" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } + "yAxis" : { + "title" : { + "text" : "Total Solutions" } }, - "tooltip" : { - "pointFormat" : "{point.name}: {point.y:f}
", - "headerFormat" : "{series.name}
", - "followPointer" : 1 - }, "chart" : { "type" : "column" }, - "subtitle" : { - "text" : "[Champions: 28] Last updated at 2022-06-29 12:43:27 GMT" + "tooltip" : { + "headerFormat" : "{series.name}
", + "pointFormat" : "{point.name}: {point.y:f}
", + "followPointer" : 1 }, "title" : { "text" : "The Weekly Challenge - 007" }, - "series" : [ - { - "name" : "The Weekly Challenge - 007", - "colorByPoint" : 1, - "data" : [ - { - "name" : "Adam Russell", - "drilldown" : "Adam Russell", - "y" : 3 - }, - { - "name" : "Alicia Bielsa", - "y" : 1, - "drilldown" : "Alicia Bielsa" - }, - { - "name" : "Andrezgz", - "y" : 1, - "drilldown" : "Andrezgz" - }, - { - "name" : "Arne Sommer", - "drilldown" : "Arne Sommer", - "y" : 3 - }, - { - "name" : "Athanasius", - "y" : 2, - "drilldown" : "Athanasius" - }, - { - "y" : 2, - "drilldown" : "Daniel Mantovani", - "name" : "Daniel Mantovani" - }, - { - "name" : "Dave Jacoby", - "drilldown" : "Dave Jacoby", - "y" : 4 - }, - { - "name" : "E. Choroba", - "y" : 3, - "drilldown" : "E. Choroba" - }, - { - "name" : "Finley", - "y" : 2, - "drilldown" : "Finley" - }, - { - "name" : "Francis Whittle", - "y" : 2, - "drilldown" : "Francis Whittle" - }, - { - "name" : "Guillermo Ramos", - "y" : 1, - "drilldown" : "Guillermo Ramos" - }, - { - "name" : "Gustavo Chaves", - "drilldown" : "Gustavo Chaves", - "y" : 2 - }, - { - "y" : 4, - "drilldown" : "Jaldhar H. Vyas", - "name" : "Jaldhar H. Vyas" - }, - { - "name" : "Jo Christian Oterhals", - "drilldown" : "Jo Christian Oterhals", - "y" : 3 - }, - { - "name" : "Joelle Maslak", - "drilldown" : "Joelle Maslak", - "y" : 4 - }, - { - "name" : "Kian-Meng Ang", - "drilldown" : "Kian-Meng Ang", - "y" : 3 - }, - { - "y" : 1, - "drilldown" : "Kjetil Skotheim", - "name" : "Kjetil Skotheim" - }, - { - "y" : 1, - "drilldown" : "Lakpa Tashi Bhutia", - "name" : "Lakpa Tashi Bhutia" - }, - { - "y" : 6, - "drilldown" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld" - }, - { - "name" : "Luis F. Uceta", - "y" : 2, - "drilldown" : "Luis F. Uceta" - }, - { - "drilldown" : "Max Kossek", - "y" : 1, - "name" : "Max Kossek" - }, - { - "drilldown" : "Maxim Nechaev", - "y" : 2, - "name" : "Maxim Nechaev" - }, - { - "drilldown" : "Ozzy", - "y" : 1, - "name" : "Ozzy" - }, - { - "name" : "Paulo Custodio", - "y" : 2, - "drilldown" : "Paulo Custodio" - }, - { - "name" : "Ruben Westerberg", - "y" : 4, - "drilldown" : "Ruben Westerberg" - }, - { - "name" : "Ryan Thompson", - "drilldown" : "Ryan Thompson", - "y" : 2 - }, - { - "name" : "Simon Proctor", - "drilldown" : "Simon Proctor", - "y" : 1 - }, - { - "name" : "Stuart Little", - "y" : 2, - "drilldown" : "Stuart Little" - } - ] - } - ], "drilldown" : { "series" : [ { - "id" : "Adam Russell", - "name" : "Adam Russell", "data" : [ [ "Perl", @@ -190,27 +27,29 @@ "Blog", 1 ] - ] + ], + "id" : "Adam Russell", + "name" : "Adam Russell" }, { - "name" : "Alicia Bielsa", - "id" : "Alicia Bielsa", "data" : [ [ "Perl", 1 ] - ] + ], + "id" : "Alicia Bielsa", + "name" : "Alicia Bielsa" }, { - "id" : "Andrezgz", - "name" : "Andrezgz", "data" : [ [ "Perl", 1 ] - ] + ], + "name" : "Andrezgz", + "id" : "Andrezgz" }, { "id" : "Arne Sommer", @@ -227,14 +66,14 @@ ] }, { + "name" : "Athanasius", + "id" : "Athanasius", "data" : [ [ "Perl", 2 ] - ], - "name" : "Athanasius", - "id" : "Athanasius" + ] }, { "data" : [ @@ -243,10 +82,12 @@ 2 ] ], - "name" : "Daniel Mantovani", - "id" : "Daniel Mantovani" + "id" : "Daniel Mantovani", + "name" : "Daniel Mantovani" }, { + "id" : "Dave Jacoby", + "name" : "Dave Jacoby", "data" : [ [ "Perl", @@ -256,11 +97,11 @@ "Blog", 2 ] - ], - "id" : "Dave Jacoby", - "name" : "Dave Jacoby" + ] }, { + "id" : "E. Choroba", + "name" : "E. Choroba", "data" : [ [ "Perl", @@ -270,13 +111,11 @@ "Blog", 1 ] - ], - "name" : "E. Choroba", - "id" : "E. Choroba" + ] }, { - "id" : "Finley", "name" : "Finley", + "id" : "Finley", "data" : [ [ "Raku", @@ -291,12 +130,12 @@ 2 ] ], - "name" : "Francis Whittle", - "id" : "Francis Whittle" + "id" : "Francis Whittle", + "name" : "Francis Whittle" }, { - "id" : "Guillermo Ramos", "name" : "Guillermo Ramos", + "id" : "Guillermo Ramos", "data" : [ [ "Perl", @@ -305,8 +144,8 @@ ] }, { - "id" : "Gustavo Chaves", "name" : "Gustavo Chaves", + "id" : "Gustavo Chaves", "data" : [ [ "Perl", @@ -325,12 +164,12 @@ 2 ] ], - "id" : "Jaldhar H. Vyas", - "name" : "Jaldhar H. Vyas" + "name" : "Jaldhar H. Vyas", + "id" : "Jaldhar H. Vyas" }, { - "id" : "Jo Christian Oterhals", "name" : "Jo Christian Oterhals", + "id" : "Jo Christian Oterhals", "data" : [ [ "Raku", @@ -357,6 +196,8 @@ "name" : "Joelle Maslak" }, { + "id" : "Kian-Meng Ang", + "name" : "Kian-Meng Ang", "data" : [ [ "Perl", @@ -366,9 +207,7 @@ "Blog", 2 ] - ], - "name" : "Kian-Meng Ang", - "id" : "Kian-Meng Ang" + ] }, { "id" : "Kjetil Skotheim", @@ -391,6 +230,8 @@ ] }, { + "id" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld", "data" : [ [ "Perl", @@ -404,13 +245,21 @@ "Blog", 2 ] - ], - "id" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld" + ] + }, + { + "id" : "Lubos Kolouch", + "name" : "Lubos Kolouch", + "data" : [ + [ + "Perl", + 2 + ] + ] }, { - "id" : "Luis F. Uceta", "name" : "Luis F. Uceta", + "id" : "Luis F. Uceta", "data" : [ [ "Raku", @@ -419,34 +268,34 @@ ] }, { + "id" : "Max Kossek", + "name" : "Max Kossek", "data" : [ [ "Perl", 1 ] - ], - "id" : "Max Kossek", - "name" : "Max Kossek" + ] }, { - "name" : "Maxim Nechaev", - "id" : "Maxim Nechaev", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Maxim Nechaev", + "id" : "Maxim Nechaev" }, { + "name" : "Ozzy", + "id" : "Ozzy", "data" : [ [ "Raku", 1 ] - ], - "id" : "Ozzy", - "name" : "Ozzy" + ] }, { "data" : [ @@ -469,12 +318,12 @@ 2 ] ], - "id" : "Ruben Westerberg", - "name" : "Ruben Westerberg" + "name" : "Ruben Westerberg", + "id" : "Ruben Westerberg" }, { - "name" : "Ryan Thompson", "id" : "Ryan Thompson", + "name" : "Ryan Thompson", "data" : [ [ "Perl", @@ -487,30 +336,196 @@ ] }, { + "name" : "Simon Proctor", + "id" : "Simon Proctor", "data" : [ [ "Raku", 1 ] - ], - "name" : "Simon Proctor", - "id" : "Simon Proctor" + ] }, { - "name" : "Stuart Little", - "id" : "Stuart Little", "data" : [ [ "Raku", 2 ] - ] + ], + "id" : "Stuart Little", + "name" : "Stuart Little" } ] }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" + "legend" : { + "enabled" : 0 + }, + "subtitle" : { + "text" : "[Champions: 29] Last updated at 2023-03-13 08:32:43 GMT" + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + }, + "borderWidth" : 0 + } + }, + "series" : [ + { + "data" : [ + { + "name" : "Adam Russell", + "drilldown" : "Adam Russell", + "y" : 3 + }, + { + "y" : 1, + "drilldown" : "Alicia Bielsa", + "name" : "Alicia Bielsa" + }, + { + "y" : 1, + "drilldown" : "Andrezgz", + "name" : "Andrezgz" + }, + { + "y" : 3, + "drilldown" : "Arne Sommer", + "name" : "Arne Sommer" + }, + { + "name" : "Athanasius", + "y" : 2, + "drilldown" : "Athanasius" + }, + { + "name" : "Daniel Mantovani", + "y" : 2, + "drilldown" : "Daniel Mantovani" + }, + { + "name" : "Dave Jacoby", + "drilldown" : "Dave Jacoby", + "y" : 4 + }, + { + "drilldown" : "E. Choroba", + "y" : 3, + "name" : "E. Choroba" + }, + { + "name" : "Finley", + "drilldown" : "Finley", + "y" : 2 + }, + { + "name" : "Francis Whittle", + "drilldown" : "Francis Whittle", + "y" : 2 + }, + { + "name" : "Guillermo Ramos", + "y" : 1, + "drilldown" : "Guillermo Ramos" + }, + { + "drilldown" : "Gustavo Chaves", + "y" : 2, + "name" : "Gustavo Chaves" + }, + { + "name" : "Jaldhar H. Vyas", + "y" : 4, + "drilldown" : "Jaldhar H. Vyas" + }, + { + "name" : "Jo Christian Oterhals", + "y" : 3, + "drilldown" : "Jo Christian Oterhals" + }, + { + "name" : "Joelle Maslak", + "y" : 4, + "drilldown" : "Joelle Maslak" + }, + { + "name" : "Kian-Meng Ang", + "y" : 3, + "drilldown" : "Kian-Meng Ang" + }, + { + "drilldown" : "Kjetil Skotheim", + "y" : 1, + "name" : "Kjetil Skotheim" + }, + { + "drilldown" : "Lakpa Tashi Bhutia", + "y" : 1, + "name" : "Lakpa Tashi Bhutia" + }, + { + "y" : 6, + "drilldown" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld" + }, + { + "name" : "Lubos Kolouch", + "y" : 2, + "drilldown" : "Lubos Kolouch" + }, + { + "y" : 2, + "drilldown" : "Luis F. Uceta", + "name" : "Luis F. Uceta" + }, + { + "y" : 1, + "drilldown" : "Max Kossek", + "name" : "Max Kossek" + }, + { + "name" : "Maxim Nechaev", + "y" : 2, + "drilldown" : "Maxim Nechaev" + }, + { + "drilldown" : "Ozzy", + "y" : 1, + "name" : "Ozzy" + }, + { + "name" : "Paulo Custodio", + "y" : 2, + "drilldown" : "Paulo Custodio" + }, + { + "name" : "Ruben Westerberg", + "drilldown" : "Ruben Westerberg", + "y" : 4 + }, + { + "y" : 2, + "drilldown" : "Ryan Thompson", + "name" : "Ryan Thompson" + }, + { + "y" : 1, + "drilldown" : "Simon Proctor", + "name" : "Simon Proctor" + }, + { + "drilldown" : "Stuart Little", + "y" : 2, + "name" : "Stuart Little" + } + ], + "colorByPoint" : 1, + "name" : "The Weekly Challenge - 007" } + ], + "xAxis" : { + "type" : "category" } } diff --git a/stats/pwc-challenge-008.json b/stats/pwc-challenge-008.json index 94e5f08838..e9e5baea3f 100644 --- a/stats/pwc-challenge-008.json +++ b/stats/pwc-challenge-008.json @@ -1,32 +1,186 @@ { + "title" : { + "text" : "The Weekly Challenge - 008" + }, "chart" : { "type" : "column" }, - "legend" : { - "enabled" : 0 + "tooltip" : { + "headerFormat" : "{series.name}
", + "pointFormat" : "{point.name}: {point.y:f}
", + "followPointer" : 1 + }, + "xAxis" : { + "type" : "category" }, + "series" : [ + { + "name" : "The Weekly Challenge - 008", + "colorByPoint" : 1, + "data" : [ + { + "name" : "Adam Russell", + "y" : 3, + "drilldown" : "Adam Russell" + }, + { + "y" : 2, + "drilldown" : "Alicia Bielsa", + "name" : "Alicia Bielsa" + }, + { + "name" : "Andrezgz", + "y" : 2, + "drilldown" : "Andrezgz" + }, + { + "name" : "Arne Sommer", + "y" : 3, + "drilldown" : "Arne Sommer" + }, + { + "name" : "Athanasius", + "drilldown" : "Athanasius", + "y" : 2 + }, + { + "name" : "Daniel Mantovani", + "drilldown" : "Daniel Mantovani", + "y" : 2 + }, + { + "drilldown" : "Dave Jacoby", + "y" : 4, + "name" : "Dave Jacoby" + }, + { + "name" : "Duncan C. White", + "y" : 2, + "drilldown" : "Duncan C. White" + }, + { + "name" : "E. Choroba", + "drilldown" : "E. Choroba", + "y" : 3 + }, + { + "drilldown" : "Francis Whittle", + "y" : 3, + "name" : "Francis Whittle" + }, + { + "y" : 2, + "drilldown" : "Guillermo Ramos", + "name" : "Guillermo Ramos" + }, + { + "name" : "Gustavo Chaves", + "y" : 2, + "drilldown" : "Gustavo Chaves" + }, + { + "name" : "Jaldhar H. Vyas", + "drilldown" : "Jaldhar H. Vyas", + "y" : 4 + }, + { + "y" : 4, + "drilldown" : "James Smith", + "name" : "James Smith" + }, + { + "name" : "Joelle Maslak", + "drilldown" : "Joelle Maslak", + "y" : 6 + }, + { + "y" : 4, + "drilldown" : "Kian-Meng Ang", + "name" : "Kian-Meng Ang" + }, + { + "drilldown" : "Lakpa Tashi Bhutia", + "y" : 2, + "name" : "Lakpa Tashi Bhutia" + }, + { + "name" : "Laurent Rosenfeld", + "drilldown" : "Laurent Rosenfeld", + "y" : 7 + }, + { + "name" : "Lubos Kolouch", + "drilldown" : "Lubos Kolouch", + "y" : 2 + }, + { + "name" : "Luis F. Uceta", + "y" : 2, + "drilldown" : "Luis F. Uceta" + }, + { + "y" : 2, + "drilldown" : "Max Kossek", + "name" : "Max Kossek" + }, + { + "drilldown" : "Maxim Nechaev", + "y" : 2, + "name" : "Maxim Nechaev" + }, + { + "name" : "Neil Bowers", + "drilldown" : "Neil Bowers", + "y" : 1 + }, + { + "name" : "Ozzy", + "drilldown" : "Ozzy", + "y" : 1 + }, + { + "y" : 2, + "drilldown" : "Paulo Custodio", + "name" : "Paulo Custodio" + }, + { + "drilldown" : "Ruben Westerberg", + "y" : 4, + "name" : "Ruben Westerberg" + }, + { + "drilldown" : "Simon Proctor", + "y" : 3, + "name" : "Simon Proctor" + }, + { + "name" : "Stuart Little", + "drilldown" : "Stuart Little", + "y" : 2 + }, + { + "name" : "Yozen Hernandez", + "y" : 2, + "drilldown" : "Yozen Hernandez" + } + ] + } + ], "plotOptions" : { "series" : { - "borderWidth" : 0, "dataLabels" : { "format" : "{point.y}", "enabled" : 1 - } - } - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" + }, + "borderWidth" : 0 } }, - "xAxis" : { - "type" : "category" + "subtitle" : { + "text" : "[Champions: 29] Last updated at 2023-03-13 08:32:43 GMT" }, "drilldown" : { "series" : [ { - "id" : "Adam Russell", - "name" : "Adam Russell", "data" : [ [ "Perl", @@ -36,27 +190,29 @@ "Blog", 1 ] - ] + ], + "name" : "Adam Russell", + "id" : "Adam Russell" }, { + "id" : "Alicia Bielsa", + "name" : "Alicia Bielsa", "data" : [ [ "Perl", 2 ] - ], - "id" : "Alicia Bielsa", - "name" : "Alicia Bielsa" + ] }, { - "id" : "Andrezgz", - "name" : "Andrezgz", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Andrezgz", + "name" : "Andrezgz" }, { "name" : "Arne Sommer", @@ -73,28 +229,28 @@ ] }, { + "id" : "Athanasius", + "name" : "Athanasius", "data" : [ [ "Perl", 2 ] - ], - "id" : "Athanasius", - "name" : "Athanasius" + ] }, { - "name" : "Daniel Mantovani", - "id" : "Daniel Mantovani", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Daniel Mantovani", + "id" : "Daniel Mantovani" }, { - "name" : "Dave Jacoby", "id" : "Dave Jacoby", + "name" : "Dave Jacoby", "data" : [ [ "Perl", @@ -107,14 +263,14 @@ ] }, { + "name" : "Duncan C. White", + "id" : "Duncan C. White", "data" : [ [ "Perl", 2 ] - ], - "name" : "Duncan C. White", - "id" : "Duncan C. White" + ] }, { "data" : [ @@ -131,6 +287,8 @@ "id" : "E. Choroba" }, { + "id" : "Francis Whittle", + "name" : "Francis Whittle", "data" : [ [ "Raku", @@ -140,29 +298,27 @@ "Blog", 1 ] - ], - "name" : "Francis Whittle", - "id" : "Francis Whittle" + ] }, { - "id" : "Guillermo Ramos", - "name" : "Guillermo Ramos", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Guillermo Ramos", + "name" : "Guillermo Ramos" }, { + "name" : "Gustavo Chaves", + "id" : "Gustavo Chaves", "data" : [ [ "Perl", 2 ] - ], - "name" : "Gustavo Chaves", - "id" : "Gustavo Chaves" + ] }, { "name" : "Jaldhar H. Vyas", @@ -179,8 +335,6 @@ ] }, { - "name" : "James Smith", - "id" : "James Smith", "data" : [ [ "Perl", @@ -190,7 +344,9 @@ "Raku", 2 ] - ] + ], + "id" : "James Smith", + "name" : "James Smith" }, { "data" : [ @@ -207,8 +363,6 @@ "name" : "Joelle Maslak" }, { - "id" : "Kian-Meng Ang", - "name" : "Kian-Meng Ang", "data" : [ [ "Perl", @@ -218,21 +372,21 @@ "Blog", 2 ] - ] + ], + "id" : "Kian-Meng Ang", + "name" : "Kian-Meng Ang" }, { - "name" : "Lakpa Tashi Bhutia", - "id" : "Lakpa Tashi Bhutia", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Lakpa Tashi Bhutia", + "name" : "Lakpa Tashi Bhutia" }, { - "name" : "Laurent Rosenfeld", - "id" : "Laurent Rosenfeld", "data" : [ [ "Perl", @@ -246,7 +400,19 @@ "Blog", 3 ] - ] + ], + "name" : "Laurent Rosenfeld", + "id" : "Laurent Rosenfeld" + }, + { + "data" : [ + [ + "Perl", + 2 + ] + ], + "id" : "Lubos Kolouch", + "name" : "Lubos Kolouch" }, { "data" : [ @@ -255,12 +421,12 @@ 2 ] ], - "id" : "Luis F. Uceta", - "name" : "Luis F. Uceta" + "name" : "Luis F. Uceta", + "id" : "Luis F. Uceta" }, { - "id" : "Max Kossek", "name" : "Max Kossek", + "id" : "Max Kossek", "data" : [ [ "Perl", @@ -269,14 +435,14 @@ ] }, { + "id" : "Maxim Nechaev", + "name" : "Maxim Nechaev", "data" : [ [ "Perl", 2 ] - ], - "id" : "Maxim Nechaev", - "name" : "Maxim Nechaev" + ] }, { "data" : [ @@ -289,14 +455,14 @@ "name" : "Neil Bowers" }, { + "id" : "Ozzy", + "name" : "Ozzy", "data" : [ [ "Raku", 1 ] - ], - "name" : "Ozzy", - "id" : "Ozzy" + ] }, { "data" : [ @@ -305,10 +471,12 @@ 2 ] ], - "id" : "Paulo Custodio", - "name" : "Paulo Custodio" + "name" : "Paulo Custodio", + "id" : "Paulo Custodio" }, { + "name" : "Ruben Westerberg", + "id" : "Ruben Westerberg", "data" : [ [ "Perl", @@ -318,13 +486,9 @@ "Raku", 2 ] - ], - "name" : "Ruben Westerberg", - "id" : "Ruben Westerberg" + ] }, { - "id" : "Simon Proctor", - "name" : "Simon Proctor", "data" : [ [ "Raku", @@ -334,7 +498,9 @@ "Blog", 1 ] - ] + ], + "id" : "Simon Proctor", + "name" : "Simon Proctor" }, { "data" : [ @@ -343,8 +509,8 @@ 2 ] ], - "name" : "Stuart Little", - "id" : "Stuart Little" + "id" : "Stuart Little", + "name" : "Stuart Little" }, { "data" : [ @@ -358,163 +524,12 @@ } ] }, - "series" : [ - { - "colorByPoint" : 1, - "data" : [ - { - "drilldown" : "Adam Russell", - "y" : 3, - "name" : "Adam Russell" - }, - { - "name" : "Alicia Bielsa", - "y" : 2, - "drilldown" : "Alicia Bielsa" - }, - { - "drilldown" : "Andrezgz", - "y" : 2, - "name" : "Andrezgz" - }, - { - "y" : 3, - "drilldown" : "Arne Sommer", - "name" : "Arne Sommer" - }, - { - "name" : "Athanasius", - "drilldown" : "Athanasius", - "y" : 2 - }, - { - "name" : "Daniel Mantovani", - "y" : 2, - "drilldown" : "Daniel Mantovani" - }, - { - "drilldown" : "Dave Jacoby", - "y" : 4, - "name" : "Dave Jacoby" - }, - { - "name" : "Duncan C. White", - "y" : 2, - "drilldown" : "Duncan C. White" - }, - { - "y" : 3, - "drilldown" : "E. Choroba", - "name" : "E. Choroba" - }, - { - "name" : "Francis Whittle", - "drilldown" : "Francis Whittle", - "y" : 3 - }, - { - "drilldown" : "Guillermo Ramos", - "y" : 2, - "name" : "Guillermo Ramos" - }, - { - "name" : "Gustavo Chaves", - "drilldown" : "Gustavo Chaves", - "y" : 2 - }, - { - "name" : "Jaldhar H. Vyas", - "y" : 4, - "drilldown" : "Jaldhar H. Vyas" - }, - { - "drilldown" : "James Smith", - "y" : 4, - "name" : "James Smith" - }, - { - "name" : "Joelle Maslak", - "y" : 6, - "drilldown" : "Joelle Maslak" - }, - { - "name" : "Kian-Meng Ang", - "y" : 4, - "drilldown" : "Kian-Meng Ang" - }, - { - "name" : "Lakpa Tashi Bhutia", - "y" : 2, - "drilldown" : "Lakpa Tashi Bhutia" - }, - { - "drilldown" : "Laurent Rosenfeld", - "y" : 7, - "name" : "Laurent Rosenfeld" - }, - { - "name" : "Luis F. Uceta", - "drilldown" : "Luis F. Uceta", - "y" : 2 - }, - { - "name" : "Max Kossek", - "drilldown" : "Max Kossek", - "y" : 2 - }, - { - "drilldown" : "Maxim Nechaev", - "y" : 2, - "name" : "Maxim Nechaev" - }, - { - "y" : 1, - "drilldown" : "Neil Bowers", - "name" : "Neil Bowers" - }, - { - "y" : 1, - "drilldown" : "Ozzy", - "name" : "Ozzy" - }, - { - "y" : 2, - "drilldown" : "Paulo Custodio", - "name" : "Paulo Custodio" - }, - { - "name" : "Ruben Westerberg", - "drilldown" : "Ruben Westerberg", - "y" : 4 - }, - { - "name" : "Simon Proctor", - "y" : 3, - "drilldown" : "Simon Proctor" - }, - { - "name" : "Stuart Little", - "y" : 2, - "drilldown" : "Stuart Little" - }, - { - "y" : 2, - "drilldown" : "Yozen Hernandez", - "name" : "Yozen Hernandez" - } - ], - "name" : "Perl Weekly Challenge - 008" - } - ], - "title" : { - "text" : "Perl Weekly Challenge - 008" - }, - "subtitle" : { - "text" : "[Champions: 28] Last updated at 2021-04-17 15:59:26 GMT" + "legend" : { + "enabled" : 0 }, - "tooltip" : { - "pointFormat" : "{point.name}: {point.y:f}
", - "headerFormat" : "{series.name}
", - "followPointer" : 1 + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } } } diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 70b25291f3..da07a75c4a 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,191 +1,18 @@ { - "tooltip" : { - "followPointer" : 1, - "pointFormat" : "{point.name}: {point.y:f}
", - "headerFormat" : "{series.name}
" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "legend" : { - "enabled" : 0 - }, - "subtitle" : { - "text" : "[Champions: 29] Last updated at 2023-03-11 23:38:58 GMT" - }, - "title" : { - "text" : "The Weekly Challenge - 207" - }, - "series" : [ - { - "name" : "The Weekly Challenge - 207", - "colorByPoint" : 1, - "data" : [ - { - "y" : 4, - "drilldown" : "Ali Moradi", - "name" : "Ali Moradi" - }, - { - "y" : 3, - "drilldown" : "Arne Sommer", - "name" : "Arne Sommer" - }, - { - "drilldown" : "Avery Adams", - "y" : 2, - "name" : "Avery Adams" - }, - { - "name" : "Bob Lied", - "y" : 3, - "drilldown" : "Bob Lied" - }, - { - "name" : "Cheok-Yin Fung", - "drilldown" : "Cheok-Yin Fung", - "y" : 2 - }, - { - "drilldown" : "Dave Jacoby", - "y" : 3, - "name" : "Dave Jacoby" - }, - { - "name" : "David Ferrone", - "drilldown" : "David Ferrone", - "y" : 2 - }, - { - "drilldown" : "E. Choroba", - "y" : 2, - "name" : "E. Choroba" - }, - { - "drilldown" : "Flavio Poletti", - "y" : 6, - "name" : "Flavio Poletti" - }, - { - "drilldown" : "Jorg Sommrey", - "y" : 2, - "name" : "Jorg Sommrey" - }, - { - "drilldown" : "Kjetil Skotheim", - "y" : 2, - "name" : "Kjetil Skotheim" - }, - { - "y" : 5, - "drilldown" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld" - }, - { - "drilldown" : "Lubos Kolouch", - "y" : 2, - "name" : "Lubos Kolouch" - }, - { - "y" : 8, - "drilldown" : "Luca Ferrari", - "name" : "Luca Ferrari" - }, - { - "name" : "Mariano Spadaccini", - "y" : 2, - "drilldown" : "Mariano Spadaccini" - }, - { - "y" : 2, - "drilldown" : "Mark Anderson", - "name" : "Mark Anderson" - }, - { - "name" : "Marton Polgar", - "y" : 2, - "drilldown" : "Marton Polgar" - }, - { - "name" : "Matthew Neleigh", - "y" : 2, - "drilldown" : "Matthew Neleigh" - }, - { - "y" : 3, - "drilldown" : "Matthias Muth", - "name" : "Matthias Muth" - }, - { - "y" : 2, - "drilldown" : "Paulo Custodio", - "name" : "Paulo Custodio" - }, - { - "name" : "Peter Campbell Smith", - "drilldown" : "Peter Campbell Smith", - "y" : 3 - }, - { - "name" : "Pip Stuart", - "drilldown" : "Pip Stuart", - "y" : 4 - }, - { - "y" : 3, - "drilldown" : "Robbie Hatley", - "name" : "Robbie Hatley" - }, - { - "name" : "Robert DiCicco", - "drilldown" : "Robert DiCicco", - "y" : 4 - }, - { - "y" : 4, - "drilldown" : "Roger Bell_West", - "name" : "Roger Bell_West" - }, - { - "drilldown" : "Solathian", - "y" : 2, - "name" : "Solathian" - }, - { - "drilldown" : "Thomas Kohler", - "y" : 4, - "name" : "Thomas Kohler" - }, - { - "name" : "Ulrich Rieke", - "y" : 4, - "drilldown" : "Ulrich Rieke" - }, - { - "name" : "W. Luis Mochan", - "y" : 3, - "drilldown" : "W. Luis Mochan" - } - ] - } - ], - "chart" : { - "type" : "column" - }, "plotOptions" : { "series" : { + "borderWidth" : 0, "dataLabels" : { "enabled" : 1, "format" : "{point.y}" - }, - "borderWidth" : 0 + } } }, "drilldown" : { "series" : [ { + "name" : "Ali Moradi", + "id" : "Ali Moradi", "data" : [ [ "Perl", @@ -195,9 +22,7 @@ "Raku", 2 ] - ], - "name" : "Ali Moradi", - "id" : "Ali Moradi" + ] }, { "data" : [ @@ -214,16 +39,17 @@ "name" : "Arne Sommer" }, { + "id" : "Avery Adams", "data" : [ [ "Perl", 2 ] ], - "id" : "Avery Adams", "name" : "Avery Adams" }, { + "name" : "Bob Lied", "data" : [ [ "Perl", @@ -234,20 +60,54 @@ 1 ] ], - "id" : "Bob Lied", - "name" : "Bob Lied" + "id" : "Bob Lied" }, { + "name" : "Bruce Gray", "data" : [ [ - "Perl", + "Raku", + 2 + ] + ], + "id" : "Bruce Gray" + }, + { + "name" : "Carlos Oliveira", + "data" : [ + [ + "Raku", 2 ] ], + "id" : "Carlos Oliveira" + }, + { "name" : "Cheok-Yin Fung", - "id" : "Cheok-Yin Fung" + "id" : "Cheok-Yin Fung", + "data" : [ + [ + "Perl", + 2 + ] + ] + }, + { + "id" : "Colin Crain", + "data" : [ + [ + "Perl", + 1 + ], + [ + "Blog", + 1 + ] + ], + "name" : "Colin Crain" }, { + "id" : "Dave Jacoby", "data" : [ [ "Perl", @@ -258,12 +118,11 @@ 1 ] ], - "name" : "Dave Jacoby", - "id" : "Dave Jacoby" + "name" : "Dave Jacoby" }, { - "id" : "David Ferrone", "nam