Let $X$ and $Y$ be collections (often sets) for which assumptions has been made (has been given structures and/or are related somehow). A function $f\colon X \to Y$ is canonical if it is given by a rule using only the already given structure.
This explains the relation to the greek word rule (kanon). The precise meaning of the above are open for enterpretation: how much structure can the rule itself contain (maybe this can be made precise)! This "definition" somewhat contradicts many of the other answers, which for some reason is under the impression that canonical implies unique (or almost unique), which in my point of view is very wrong since different rules may define different maps. E.g. if we let $X$ be the objects in the category of abelian groups and $Y$ the morphisms then the definitions makes all the group homomorphisms $A \to A$ given by multiplication with an element in $\mathbb{Z}$ canonical, which to me is not a problem.