Je n'avais pas de tuto à fournir mais Deepin s'en est chargé. Par contre, attention : WPF est une API à deux niveaux et les tutos présenteront tous le niveau supérieur. Pour l'UI elle-même c'est ce qu'il faudra mais, pour le rendu du graphe, ce sera le niveau inférieur que tu devras utiliser.
Le niveau élevé c'est l'usage d'éléments hérités de UIElement avec un layout automatique, des animations gérées par le système et du databinding. Le niveau inférieur, c'est l'usage d'un simple canvas sans databinding et dans lequel on ajoute et positionne manuellement les primitives héritées de Visual (voire UIElement mais mieux vaut chercher à s'en passer). Voici un
un example d'usage direct de Canvas. La seule différence est que dans cet exemple les trois primitives sont ajoutées au Canvas via le XAML alors que dans ton cas toutes les primitives seront vraisemblablement créées, ajoutées et supprimées par le code.