ASE Home Page Products Download Purchase Support About ASE
ChartDirector Support
Forum HomeForum Home   SearchSearch

Message ListMessage List     Post MessagePost Message

  box whisker layer hidden behind overlapping bar issue
Posted by Martin Gross on Oct-18-2014 00:17
Hi Peter,

I have a simple overlapping bar set up with two whisker layers. I can see the ends of the
whisker marks, as they are wider then the overlapping bar, but the overlapping bar covers
the whisker's middle. I have tried ordering the sequence of bar vs whisker layer to no
avail.

Do you have any thoughts on this?

Thank you so much for your time.

Martin Gross

  Re: box whisker layer hidden behind overlapping bar issue
Posted by Peter Kwan on Oct-18-2014 04:04
Attachments:
Hi Martin,

If you want the box-whisker layer to stay in front of the bar layer, you may add the box-
whisker layer first, followed by the bar layer. For example:

use perlchartdir;

# Sample data for the Box-Whisker chart. Represents the minimum, 1st quartile,
# medium, 3rd quartile and maximum values of some quantities
my $Q0Data = [40, 45, 40, 30, 20, 50, 25, 44];
my $Q2Data = [62, 70, 60, 50, 48, 70, 62, 70];
my $Q4Data = [80, 90, 75, 70, 60, 85, 80, 84];

# The labels for the chart
my $labels = ["Group A", "Group B", "Group C", "Group D", "Group E", "Group F",
    "Group G", "Group H"];

# Create a XYChart object of size 550 x 250 pixels
my $c = new XYChart(550, 250);

# Set the plotarea at (50, 25) and of size 450 x 200 pixels. Enable both horizontal
# and vertical grids by setting their colors to grey (0xc0c0c0)
$c->setPlotArea(50, 25, 450, 200)->setGridColor(0xc0c0c0, 0xc0c0c0);

# Add a title to the chart
$c->addTitle("Computer Vision Test Scores");

# Set the labels on the x axis and the font to Arial Bold
$c->xAxis()->setLabels($labels)->setFontStyle("arialbd.ttf");

# Set the font for the y axis labels to Arial Bold
$c->yAxis()->setLabelStyle("arialbd.ttf");

# Add a Box Whisker layer first
$c->addBoxWhiskerLayer([], [], $Q4Data, $Q0Data, [], 0x9999ff, 0x0000ff)-
>setLineWidth(2);

# Follow by a bar layer
$c->addBarLayer($Q2Data, 0x00aa00);

$c->makeChart("test.png");

Hope this can help.

Regards
Peter Kwan
boxwhisker.png