2011-04-29 6 views
0

Возможно ли заполнить область между набором данных, строящим линию XY и ValueMarker? См. Рисунок для общей идеи (Предупреждение: Мои навыки MS Paint отсутствуют).Заполнение области между двумя линиями, которые пересекаются?

enter image description here

+0

Знаете ли вы интеграцию? –

+1

Наиболее похожий рендер - ** [XYDifferenceRenderer] (http://www.jfree.org/jfreechart/api/javadoc/org/jfree/chart/renderer/xy/XYDifferenceRenderer.html) ** – lschin

+0

@ Тревор Аржески, да я делаю и lschin, плохо взгляните на это, спасибо – wdziemia

ответ

1

Как lschin, XYDifferenceRenderer это лучший способ сделать это. Чтобы выполнить эту работу, вам нужно создать две отдельные многомерные двойные массивы для хранения координат X и Y. Первый массив настроен на сохранение вашей XY-линии x и y coor's. Второй массив - это постоянная строка XY. Чтобы установить эту строку, значения X одинаковы. Если ваша исходная строка находится выше вашей постоянной линии, значение Y является координатой, которую вы выбираете из позиции постоянной линии. Если оригинал находится ниже константы, значение Y константы соответствует исходной строке. Надеюсь, что это имеет смысл и полезно для всех, и прилагается код ниже для лучшего понимания.

setConstant = позиция вашей постоянной линии. ниже код помещается в цикле:

indLine[0][i]= XYIndLine.getXValue(1, i); 
indLine[1][i] = XYIndLine.getYValue(1, i); 
constant[0][i] = XYIndLine.getXValue(1, i); 
constant[1][i] = Math.min(setConstant, XYIndLine.getYValue); 

раз это делается затем использовать addSeries, чтобы добавить два массива в DefaultXYDataset

Смежные вопросы