Join Lines allows a group of line features to be joined based on a common attribute. For example, it may be desirable to join all segments of a particular street by the common attribute of street name in order to create a single line element representing that street. When Join Lines is completed, a new map layer is created that contains the joined lines. These lines contain an attribute column based on the column used to join them.

Join Lines can be very useful for reducing the size of a data file by joining related lines and thus reducing the number of segments and associated data present in the file. It is also very useful to run Join Lines prior to labeling with Label Features in order to reduce the occurrence of duplicate labels.


Join Lines can only be used on MAP Line layers.

Using Join Lines

To use Join Lines, click the Join > Join Lines button on the MAPublisher toolbar or choose Object > MAPublisher > Join Lines. The Join Lines dialog box has two tabs: Join and Attributes.


Target Layer

In the Target Layer drop-down list, select the Line layer where the join will be performed.


On the Join tab, in the Destination options, choose either to perform the join on the original target layer or specify a name for the new line layer that MAPublisher will create to hold the joined lines.

Join Options

On the Join tab, a Proximity value should be entered and proximity Units assigned. Units can be specified in map units or page units. A proximity value of zero will only join line segments that are touching. If the distance between the end of a segment and the start of another is greater than the set proximity value, these lines will not be joined. If two line segments in the selection are separated by a distance less than the set proximity value, check the Close segment gaps option to create a line segment that connects the two lines. When not selected, a compound path will be created. By default, the Only join lines with shared values from option is checked. Specify an attribute which the join will be based on. It is noted in the Operation column as Join on. For example, when joining streets, join based on a common identifier or street name. To further narrow down which lines should be joined, check the Only Join selected lines option. These lines should be selected prior to opening the Join Lines dialog box.


Click the Attributes tab to manage which attributes and operations are used.



The Original Attributes are listed with its intended operation and associated options. Click the Edit Original Attribute Operation button to change the original attribute operation.


When lines are joined, attributes are combined based on an operation. Often, these combinations are straight forward. However, depending on attribute and operation, some results may require additional thought. For example, after joining street lines based on a Name field, the field containing street direction may no longer be valid, as each street may have have differing values. Thus, operations can be set to determine how each attribute field is handled. By default all attribute operations are Set to default if different, meaning that the attribute is cleared if there are more than two unique values present after the join.


Only certain operations are available for a specific attribute type. The following details the operation, which attribute types are affected, and its description.



Affects Attribute Type


Set to default


The original attribute is retained after the join.

Set to default if different


The attribute is cleared if there are more than two unique values present after the join.



Joins string values together and separates them with a separator (tab, space, comma, comma then space, dash, underscore). No separator can also be used.


Integer, Double

The addition of two or more numbers.



The average of a set of numbers.


Integer, Double

The middle value in a range of numbers.


String, Integer, Double, Boolean

The value which appears most often in a range of numbers.


Integer, Double

The difference between the lowest and highest values.

Standard Deviation


A measure of how spread out numbers are.

Largest value

Integer, Double

The largest value in a range of numbers.

Smallest value

Integer, Double

The smallest value in a range of numbers.

Least alphabetical


Returns least alphabetical sort (Z-A).

Most alphabetical


Returns most alphabetical sort (A-Z).

First value


First value of an attribute.

Last value


Last value of an attribute.


information When adding Calculated Attributes, it is possible for certain outcomes to change the attribute type. For example, a Concatenate operation performed on an Integer attribute type will result in the creation of a String attribute type.


To add a Calculated Attribute, click the Add Operation button. The Add Attribute Operation dialog box allows you to choose a source and new operation with associated options. Choose an Operation based on availability set by the attribute data type. Provide a Name, result type and provide settings for associated options.



There are two options to apply attribute operations to grouped components. Choose Apply to every grouped component option to apply all. Alternatively, choose Only apply to grouped components that satisfy to enable the expression builder to enter an expression that will only apply the attribute operations to values of the object where the expression condition is met. All other values that aren't satisfied will be cleared. For example, the expression "Continent = Africa" would only apply the operations to attributes of the object that has the attribute "Continent" and value of "Africa". All attributes for this art object will maintain its attributes.

Copyright © 1995-2020 Avenza Systems. All rights reserved.


Last updated: 4/9/2019