Как отобразить несколько графиков с общей осью X с помощью библиотеки ZedGraph?

Мне нужно отобразить несколько графиков, которые имеют общую ось X и легенду. То, чего я хочу добиться, отображается на картинке. Основная цель состоит в том, чтобы несколько осей Y располагались на одной линии, а не параллельно. Таким образом, несколько кривых могут отображаться без пересечения друг с другом.

Я умею отображать несколько графиков, но тогда у каждого из них своя легенда и ось Y.

введите здесь описание изображения


person Peter17    schedule 06.07.2011    source источник
comment
Вы внимательно изучили документацию для своей версии? См. здесь: sourceforge.net/projects/zedgraph/files/   -  person dario_ramos    schedule 15.07.2011
comment
У меня есть, но я не нашел то, что мне нужно.   -  person Peter17    schedule 20.09.2011


Ответы (1)


Я работал с ZedGraph в двух своих проектах, и, похоже, он не поддерживает эту функцию. По сути, на данный момент у вас есть два варианта:

<сильный>1. Использовать другую библиотеку графиков

Если у вас уже не так много вещей, зависящих от ZedGraph, возможно, еще не поздно переключиться на другой элемент управления графикой. Я работал с этой библиотекой (ссылка CodeProject), и она имеет достойный вид и поддержка сложенных графиков:

введите здесь описание изображения

Он менее многофункционален по сравнению с ZedGraph, но если 2D-графика — это все, что вам действительно нужно, вам, вероятно, стоит попробовать.

<сильный>2. Обманывайте, создавая несколько панелей ZedGraph

Вы можете сделать так, чтобы все панели графиков имели одинаковую ширину и одинаковый масштаб. Установив для свойства IsSynchronizeXAxes значение true, вы гарантируете, что все панели в элементе управления ZedGraph автоматически синхронизируют оси X.

Есть несколько полезных статей, которые помогут вам добиться желаемого эффекта. Хотя они и на русском языке, они содержат примеры кода и иллюстрации и должны быть полезны даже без понимания комментариев.

Вы также должны скрыть ось X и все остальное, что вам не нужно. Единственная легенда сложна, но ее можно добиться, показав легенду только для самого верхнего графика и добавив к этому графику поддельные фиктивные кривые без точек, чтобы заполнить легенду.

person Dyppl    schedule 20.09.2011
comment
Спасибо. Теперь у меня есть несколько вариантов для рассмотрения. Кстати, русский мой родной язык, поэтому первая ссылка определенно крута :) - person Peter17; 20.09.2011
comment
@Peter17: да, это действительно крутая шпаргалка ZedGraph, гораздо полезнее официальной документации - person Dyppl; 20.09.2011