There are a number of factors influencing how an arrow appears. In this section we describe the order of precedence among them. See Defining Styles for more information on styles.
->
or =>
. In case
of multi-segment arrows, which use multiple types of arrow symbols, such as
a->b=>c
each refinement style is applied in the order the arrow points.
Thus in the case of a->b=>c
any attribute specified in style =>
takes precedence over the value (if any) specified in ->
for the same
attribute. The same order (the order towards the destination end of the arrow)
is applied even if the arrow is specified backwards, as c<=b<-a
.
For bidirectional arrows, the order is as written in the input file.
Line attributes are special, because they are also recorded and applied to
the respective segments. (This is why normally refinement styles only
specify line attributes. Specifying the arrowhead could also make sense,
but those are not applied to individual segments, but to the whole arrow.)
aline.*
,
atext.*
or arrow.*
attribute of the source entity, respectively.
(For bidirectional arrows, first entity written in the text file.) Since refinement styles
usually overwrite the line type, it makes more sense to set e.g., line color
in these attributes, if you want to automatically highlight arrows starting
from a specific entity.
arrow
default style. (Chart designs change this
to impact all arrows.) This style is guaranteed a value for all attributes,
except text.*
.
text.*
attributes take their values from the
value set in the text.*
chart options (used to globally set the font
for example) or, if none set, a default font.