Стучите головой об это в течение 3-6 месяцев. Вот как я это сделал, и до сих пор все получалось очень хорошо.
А если серьезно, кривая обучения отстой.
Там есть библиотеки библиотек для Silverlight, вы можете взять одну из них, но я бы не стал тратить на это деньги. Относительно легко написать такой код самостоятельно.
Все, что вам действительно нужно, это DrawingVisual. Как только у вас есть это, вы можете визуализировать то, что вам нужно на его поверхности. Хитрость заключается в том, чтобы при рендеринге у вас было достаточно информации о макете. Поскольку это векторная графика, вы можете использовать ScaleTransform для соответствия границ вашего контента вместо перерисовки по измененному размеру. Кроме того, вы хотите разместить свой DrawingVisual в UIFrameworkElement и позволить измерению этого объекта определять, где и как вы рисуете свои данные. Это даст вам все преимущества макета WPF / Silverlight.
Для рисования существует множество классов Geometry, на которые вы можете положиться, но есть одна вещь, которую вы захотите сделать, это настроить уровень детализации в ваших точках данных относительно вашего чертежа. Это трюк номер один, чтобы убедиться, что вы не перегружаете процессор.
Избегайте рисования более одной точки данных на пиксель. Если у вас много точек данных и небольшая поверхность рисования, вы можете использовать скользящее среднее, чтобы сгладить результат.
Если вы подойдете к этому с учетом вышесказанного, вы сможете написать элемент гибкого графического интерфейса пользователя, с помощью которого вы сможете визуализировать данные в кратчайшие сроки.
Я сделал это в приложении WPF, я полагаю, что вы можете делать то же самое с Silverlight 2.0, вы просто кричите на меня, если не можете?