JFreeChart - 상한선, 하한선의 설정

카탈로그
package jp.avaj.lib.chart;

import java.awt.Color;

import org.jfree.chart.ChartFrame;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.axis.ValueAxis;
import org.jfree.chart.plot.Marker;
import org.jfree.chart.plot.Plot;
import org.jfree.chart.plot.ValueMarker;
import org.jfree.chart.plot.XYPlot;
import org.jfree.chart.renderer.xy.StandardXYItemRenderer;
import org.jfree.chart.renderer.xy.XYItemRenderer;
import org.jfree.data.xy.XYDataset;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;

/**
■ JFreeChart-上限線、下限線の設定

・測定値などの場合、許容範囲の上限と下限を示すために、グラフの中に線を引くと分かりやすい.

 */
public class Chart18_03 {

  public static void main(String[] args) {
    // 表示データを生成
    XYDataset dataset = createDataset();
    // 軸を生成
    ValueAxis xAxis = new NumberAxis();
    ValueAxis yAxis = new NumberAxis();
    // レンダラ ⇒ これが全体のレンダラになる
    XYItemRenderer renderer = new StandardXYItemRenderer();
    // Plotを生成してチャートを表示する
    XYPlot xyPlot = new XYPlot(dataset,xAxis,yAxis,renderer);
    JFreeChart jfreeChart = new JFreeChart("limit-line",(Plot)xyPlot);
    ChartFrame cFrame = new ChartFrame("limit-line",(JFreeChart)jfreeChart);
    cFrame.pack();
    cFrame.setVisible(true);

    // 上限線、下限線を引く
    {
      Marker marker = new ValueMarker(10);
      marker.setPaint(Color.red);
      xyPlot.addRangeMarker(marker);
      //
      marker = new ValueMarker(2);
      marker.setPaint(Color.blue);
      xyPlot.addRangeMarker(marker);
    }
  }

  private static XYDataset createDataset() {
    XYSeriesCollection dataset = new XYSeriesCollection();
    // 一本目
    XYSeries xySeries = new XYSeries("data-0");
    for (int j=0; j<10; j++) {
    xySeries.add(j,j+Math.random()*4.0D);
    }
    dataset.addSeries(xySeries);
    // 二本目
    xySeries = new XYSeries("data-1");
    for (int j=0; j<10; j++) {
    xySeries.add(j,9-j+Math.random()*4.0D);
    }
    dataset.addSeries(xySeries);
    return dataset;
  }
}

JFreeChart 샘플

좋은 웹페이지 즐겨찾기