Paul,
Thank you for this example. It seems
indeed the current design is not specifically targeting this type of charts,
although I imagine this is still something supported when all Dials have the
same region/scale/grid defined. In that case, the three of them would paint the
exact same region (white in your example with a percentage scale from 0 to 100),
then each DialSerie would show a different needle.
So the answer is: yes this is supported,
although not being an obvious feature. We could add a third choice in the UI
for that type of charts (so the user enters the region settings only once), or
change the first choice to support multiple needles in a single region. The simplest
option would be to add a checkbox in the region page like “Use same
region settings for all dials”
We could even go further and make the dial
look like a virtual axis. So you could define multiple dials, each dial
allowing multiple needles. In fact the underlying design would create a dial
for each needle, but some dials regions will be indentical. The design would
need some amendment for that, as the superimposition is now defined on the
chart level, and that assumes some dials could be superimposed by groups. Unless
there is a specific requirement, we won’t go to that level.
I think in any case we need to do some
revision work on the two first tabs of the UI to allow more than 2 dials (what’s
the maximum required?) and to show the superimposition option.
Thanks,
David
From:
birt-charting-dev-bounces@xxxxxxxxxxx
[mailto:birt-charting-dev-bounces@xxxxxxxxxxx] On Behalf Of Paul Clenahan
Sent: Saturday, August 13, 2005
3:33 AM
To: For
developers on the BIRT Charting project
Cc: Christine Knight; Monika
Mikolajczyk
Subject: RE:
[birt-charting-dev]Chartfunctionalspecifications update-MeterCharts
David,
I have not been following all the
implementation level detail in this thread but do note the comment on the
usefulness of a dial with multiple needles. I'm not sure 100% from the
discussion if this is something that will be supported, so I wanted to kick in
with an example.
I've seen multiple needle type dials used
in "dashboard" type reports where the report is trying to convey
multiple pieces of information in an easily understood, compact and
compelling visual representation. For example, see the attached mockup that
would convey some key corporate metrics in one visual gauge.
I don't think this is that common, so it
is not a "must have".
Paul.
From:
birt-charting-dev-bounces@xxxxxxxxxxx [mailto:birt-charting-dev-bounces@xxxxxxxxxxx]
On Behalf Of David Michonneau
Sent: Friday, August 12, 2005 9:49
AM
To: For
developers on the BIRT Charting project
Cc: Christine Knight; Monika
Mikolajczyk
Subject: RE: [birt-charting-dev]
Chartfunctionalspecifications update-MeterCharts
Sheldon,
Thank you for the clarification. So if my
understanding is correct a dial is the axis representation, and the needle
would represent a serie. Your design assumes that one dial can only have one
needle, which is perfectly fine as a dial with multiple needles (one axis with
multiple series) doesn’t seem very useful. I think however a nice
addition would be to allow the user to choose if the dials are superimposed
like in your mockup or drawn next to each other.
Regarding the mockup, I was first confused
by the scale, I believe only one is shown in the mockup. How would the ones of
the other dials appear? Or does that mean that they all share the same dial
scale when superimposed?
So here is an updated proposal in
conclusion of this:
Let’s subclass ChartWithoutAxes and
add a DialSeries interface :
interface DialChart extends
ChartWithoutAxes
{
void setDialsSuperImposition(boolean areSuperImposed)
boolean getDialsSuperimposition();
}
interface DialSerie extend Series
{
Dial getDial();
void setDial(Dial dial);
Needle getNeedle();
void setNeedle(Needle needle);
}
Other interfaces Dial, Needle and
DialRegion will be as defined by the schema in the spec. Just some small
amendments: FormatSpecifier and Label are not needed in Dial as they are
already defined in SeriesDefinition and Series. FormatSpecifier in DialRegion
is not needed either.
How does that sound?
Thanks,
David
From:
birt-charting-dev-bounces@xxxxxxxxxxx
[mailto:birt-charting-dev-bounces@xxxxxxxxxxx] On Behalf Of Sheldon Lee-Loy
Sent: Friday, August 12, 2005 4:34
PM
To: For
developers on the BIRT Charting project
Cc: Christine Knight; Monika
Mikolajczyk
Subject: RE: [birt-charting-dev]
Chart functionalspecifications update-MeterCharts
Lets first break down the use cases for meter charts.
Meter
chart with one dial with one series
-----------------------------------------------------------
For a
simple meter chart I would have one dial that will contain a list of dial
regions, a scale and a needle. One series will also be associated with
the dial. This series will only contain one value that determines the
position of the needle. The value of the needle can only span over
the scale defined for this dial.
Meter
chart with multiple dials and multiple series
------------------------------------------------------------------------
In
this case we can logically treat each dial as a separate meter chart. For
example, lets say I have three series. One series represents the value of
Wind Speed, the second series represents a value of Temperature and the third
series represents the value of Precipitation. Lets now treat these
series individually. I would define a dial for each of these series.
Therefore, I would have a dial that has a scale, a needle and a list of
regions that is associated with Wind Speed. I would have two other dials
that are associated withTemperator and Precipitation. Visually I could
represent these three series in three distinct meter charts. However,
from the mockups I provided it is possible to merge these three dials into one
meter chart. It is basically trying to visually represent three meter
charts into one.
You
can think of a dial as a seperate chart. The proposal I presented is
trying to visually represent several dials in one plot area.
Thanks,
Sheldon
______________________________________
Sheldon Lee-Loy
Problem Deterministic Group, IBM Toronto Lab
email: sleeloy@xxxxxxxxxx
phone: 905.413.2610
"David Michonneau"
<dmichonneau@xxxxxxxxxxx>
Sent
by: birt-charting-dev-bounces@xxxxxxxxxxx
08/12/2005
09:47 AM
Please respond
to
For developers on the BIRT Charting project
|
|
To
|
"For developers on the
BIRT Charting project" <birt-charting-dev@xxxxxxxxxxx>
|
cc
|
Christine Knight/Toronto/IBM@IBMCA, Monika
Mikolajczyk/Toronto/IBM@IBMCA
|
Subject
|
RE: [birt-charting-dev] Chart functional specifications
update-MeterCharts
|
|
Hi Sheldon,
Regarding the single/multiple dial charts, let me try to
clarify things. Charts with Axes in general, can possibly have multiple axes
(an axis hold a scale and marker line/ranges) and multiple series (dials), each
being associated with an axis. If we apply this to Dials, I would say a given
axis with several series results in a superimposition of the dials like shown
in your mockup. However several axes will result in several charts being drawn
(sharing the legend), one chart for each axis. Furthermore, each serie(Dial) can
define several DialRegions (also called DialRange?) to allow a given needle to
go through different colors. I am not sure if that was what you had in mind, in
your design I got the impression each Dial is an axis and a serie at the same
time. But how can you have several scales within the same chart?
Another question is how many dials and/or axes do you want
the builder to support? So far the builder allows at most 2 axes and 2
series/axis for existing types.
Let’s first agree on what we support here, before
making a ChartWithoutAxes/ChartWithAxes decision. In the meantime, I have
merged the Dial spec with the latest version of the type spec. There are some
dial mockups for the two first screens of the new chart builder, let us know
your comments about them. Besides that, it includes minor updates, not
dial-related.
Thanks,
David
From:
birt-charting-dev-bounces@xxxxxxxxxxx
[mailto:birt-charting-dev-bounces@xxxxxxxxxxx] On Behalf Of Milind Padhye
Sent: Wednesday, August 10, 2005 9:19 PM
To: For developers on the BIRT Charting
project
Cc: Christine Knight; Monika Mikolajczyk
Subject: RE: [birt-charting-dev] Chart functional specifications
update-MeterCharts
Sheldon, David,
I am a little
concerned about using a ChartWithAxis mechanism directly for a Dial / Meter
chart type. To be sure, this is something that the underlying framework
supports. However, as far as I can tell, the only thing you are looking for is
to use the Scale and MarkerRegion concept from the axis. I think creating a
ChartWithAxis has some implications as far as handling of axis rendering etc.
is performed in the library and needs to be investigated before going down that
route. E.g. do you want to see the Axis UI in the builder for a Dial/Meter
chart? I would think not. This will however happen if you use a Chart with
Axis.
Further, by
creating a ChartWithAxis structure, you will need to use / set a bunch of
properties and will need to follow the structural restrictions it imposes while
not necessary applying to this chart type. E.g. The actual data carrying series
in the chart with axis will be residing under an axis which itself resides
under a separate axis. This looks like a very convoluted structure for a dial
chart (from an API standpoint).
I think this can be
done by creating a type that extends ChartWithoutAxis but has a collection of
scales associated with it. To make it possible to associate a MarkerRange, you
could consider specifying the color regions as statically defined for the
‘DialSeries’ at design time or alternatively the Scale structure
can be modified to support MarkerLines and MarkerRanges. This would allow for
maximum re-use of the existing structures without placing unnecessary
structural restrictions on the chart type.
Just my 2 cents.
Thanks,
Milind
From:
birt-charting-dev-bounces@xxxxxxxxxxx
[mailto:birt-charting-dev-bounces@xxxxxxxxxxx] On Behalf Of Sheldon Lee-Loy
Sent: Wednesday, August 10, 2005 10:43 AM
To: For developers on the BIRT Charting
project
Cc: Christine Knight; Monika Mikolajczyk
Subject: RE: [birt-charting-dev] Chart functional specifications
update -MeterCharts
The current design doesn't prevent you from creating separate charts with a
single dial. I believe one of the driving requirements for specifying
several dials within a meter chart is to fit in as much information as possible
within limited space. Usesablity wise this may not be good however in
some cases working in limited space may be necessary.
I guess a dial can be modelled after an axis since a dial has a scale and
marker regions are associated with a dial. This seems to be the way to
go.
Thanks,
Sheldon
______________________________________
Sheldon Lee-Loy
Problem Deterministic Group, IBM Toronto Lab
email: sleeloy@xxxxxxxxxx
phone: 905.413.2610
"David Michonneau"
<dmichonneau@xxxxxxxxxxx>
Sent by: birt-charting-dev-bounces@xxxxxxxxxxx
08/10/2005
12:31 PM
Please respond
to
For developers on the BIRT Charting project
|
|
To
|
"For developers on the
BIRT Charting project"
<birt-charting-dev@xxxxxxxxxxx>
|
cc
|
Christine Knight/Toronto/IBM@IBMCA, Monika
Mikolajczyk/Toronto/IBM@IBMCA
|
Subject
|
RE: [birt-charting-dev] Chart functional specifications
update - MeterCharts
|
|
Hi Sheldon,
Thank you for the specifications of this dial type. I have a few questions:
In case of multiple dials, did you consider as an alternative to show them next
to each other, like we do for pie charts? I think one of the advantages of this
approach is to allow multi-coloring of one given region, to act as a dashboard
indicator. For instance if the temperature is higher than 50, the region color
could change to red, then if the needle goes in the red, the user knows it
requires specific attention. It also minimizes the complexity of the chart
graphics, as it’s easier to read three separate dials than three
superimposed dials (imagine if your car speedometer, engine rotation counter,
and gas tank indicator were all in one same dial with three needles).
Regarding the model, I thought DialRegion would in fact be DialSeries in the
types.xsd. I also assume this new type falls in the ChartWithoutAxes category.
If we follow my suggestion above, it seems Dial and DialRegion will fusion
together. If we keep the current design, maybe Dial should subclass
ChartWithoutAxes instead of being a component, or maybe the other way would be
to make it a ChartWithAxes and subclass the Axis interface with a DialAxis
(Dial).
Thanks,
David
From: birt-charting-dev-bounces@xxxxxxxxxxx
[mailto:birt-charting-dev-bounces@xxxxxxxxxxx] On Behalf Of Sheldon Lee-Loy
Sent: Tuesday, August 09, 2005 10:47 PM
To: For developers on the BIRT Charting
project
Cc: Christine Knight; Monika Mikolajczyk
Subject: [birt-charting-dev] Chart functional specifications update
- MeterCharts
Hi All,
I updated the funtional specification document that covers the meter/dial chart
type. In this document I have included schema updates and mockups of the
chart builder. Let me know if you have any concerns and questions.
Thanks,
Sheldon
______________________________________
Sheldon Lee-Loy
Problem Deterministic Group, IBM Toronto Lab
email: sleeloy@xxxxxxxxxx
phone: 905.413.2610_______________________________________________
birt-charting-dev mailing list
birt-charting-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/birt-charting-dev[attachment
"BPS38 - Chart Types SPEC.pdf" deleted by Sheldon
Lee-Loy/Toronto/IBM] _______________________________________________
birt-charting-dev mailing list
birt-charting-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/birt-charting-dev