Since you mentioned that the output is what you want what you want your code to look like is:
#!/usr/bin/perl -w
use strict;
use warnings;
use diagnostics;
my @data = [
'17-02-2005','18-02-2005','19-02-2005',
'20-02-2005','21-02-2005','22-02-2005',
'23-02-2005','24-02-2005'
];
my %labels = (
'C' => [0,0,0,0,7,0,0,2],
'A' => [0,0,0,0,0,0,5,4],
'B' => [0,0,0,0,0,0,0,0]
);
foreach my $item (sort {$a cmp $b} keys %labels) {
# replaced
#push @{$data[$item]}, $labels{$item};
# with
push @{$data[0]}, $labels{$item};
}
use Data::Dumper;
print Dumper @data;
The problem is that in the push you are using
$data[$item] in which case
$item (being the hash keys 'A','B','C') not being a numeric are being converted to 0 (and hence pushing things onto the first array in your AoA (
@data) and a warning is thrown. Which is why I replaced
$item with zero in the code above.
-enlil
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.