Visual encoding uses marks and channels as foundational building blocks. Marks are simply identity while channels are attributes. For example, in a bar chart, marks will be simply the bar while channels is vertical height. Another example would be within scatterplots, a dot will be the mark while channels include vertical and horizontal point. Marks will need to show the relationship between multiple data items while channel needs to identify the items. Channel is simply a way to control the appearance of marks and size and position are commons forms of execution.
There are two main types of channels, which are identity and magnitude. Identity channels information about what and where something is while magnitude tells us how much. Identity channels are great for unordered attributes while magnitude is great when data are ordered. There are also two types of marks, connection, and containment. Connection shows pairwise relationship between the items and containment shows hierarchical relationships.