1. 程式人生 > >JFreechart的Axis座標設定的方法總結

JFreechart的Axis座標設定的方法總結

一些關於AXIS類的方法:

  • Axis 類:
    void setVisible(boolean flag)座標軸是否可見
    void setAxisLinePaint(Paint paint)座標軸線條顏色(3D軸無效)
    void setAxisLineStroke(Stroke stroke) 座標軸線條筆觸(3D軸無效)
    void setAxisLineVisible(boolean visible)座標軸線條是否可見(3D軸無效)
    void setFixedDimension(double dimension)(用於複合表中對多座標軸的設定)
    void setLabel(String label)座標軸標題
    void setLabelFont(Font font)座標軸標題字型
    void setLabelPaint(Paint paint)座標軸標題顏色
    void setLabelAngle(double angle)`座標軸標題旋轉角度(縱座標可以旋轉)
    void setTickLabelFont(Font font)座標軸標尺值字型
    void setTickLabelPaint(Paint paint)座標軸標尺值顏色
    void setTickLabelsVisible(boolean flag)座標軸標尺值是否顯示
    void setTickMarkPaint(Paint paint)座標軸標尺顏色
    void setTickMarkStroke(Stroke stroke) 座標軸標尺筆觸
    void setTickMarksVisible(boolean flag)座標軸標尺是否顯示

  • ValueAxis(Axis) 類:

    void setAutoRange(boolean auto)自動設定資料軸資料範圍
    void setAutoRangeMinimumSize(double size)自動設定資料軸資料範圍時資料範圍的最小跨度
    void setAutoTickUnitSelection(boolean flag)資料軸的資料標籤是否自動確定(預設為true)
    void setFixedAutoRange(double length)資料軸固定資料範圍(設定100的話就是顯示MAXVALUE到MAXVALUE-100那段資料範圍)
    void setInverted(boolean flag)資料軸是否反向(預設為false)
    void setLowerMargin(double margin)資料軸下(左)邊距
    void setUpperMargin(double margin)資料軸上(右)邊距
    void setLowerBound(double min)資料軸上的顯示最小值
    void setUpperBound(double max)資料軸上的顯示最大值
    void setPositiveArrowVisible(boolean visible)是否顯示正向箭頭(3D軸無效)
    void setNegativeArrowVisible(boolean visible)是否顯示反向箭頭(3D軸無效)
    void setVerticalTickLabels(boolean flag)資料軸資料標籤是否旋轉到垂直
    void setStandardTickUnits(TickUnitSource source) 資料軸的資料標籤(可以只顯示整數標籤,需要將AutoTickUnitSelection設false)

  • NumberAxis(ValueAxis) 類:

    void setAutoRangeIncludesZero(boolean flag)是否強制在自動選擇的資料範圍中包含0
    void setAutoRangeStickyZero(boolean flag)是否強制在整個資料軸中包含0,即使0不在資料範圍中
    void setNumberFormatOverride(NumberFormat formatter) 資料軸資料標籤的顯示格式
    void setTickUnit(NumberTickUnit unit) 資料軸的資料標籤(需要將AutoTickUnitSelection設false)

  • DateAxis(ValueAxis) 類:

    void setMaximumDate(Date maximumDate) 日期軸上的最小日期
    void setMinimumDate(Date minimumDate) 日期軸上的最大日期
    void setRange(Date lower,Date upper) 日期軸範圍
    void setDateFormatOverride(DateFormat formatter) 日期軸日期標籤的顯示格式
    void setTickUnit(DateTickUnit unit) 日期軸的日期標籤(需要將AutoTickUnitSelection設false)
    void setTickMarkPosition(DateTickMarkPosition position) 日期標籤位置(引數常量在org.jfree.chart.axis.DateTickMarkPosition類中定義)

  • CategoryAxis(Axis) 類:

    void setCategoryMargin(double margin)分類軸邊距
    void setLowerMargin(double margin)分類軸下(左)邊距
    void setUpperMargin(double margin)分類軸上(右)邊距
    void setVerticalCategoryLabels(boolean flag)分類軸標題是否旋轉到垂直
    void setMaxCategoryLabelWidthRatio(float ratio)分類軸分類標籤的最大寬度

  • jfreechart 設定技巧

    1. 橫座標內容豎立
      XYPlot xyplot = jfreechart.getXYPlot();
      DateAxis dateaxis = (DateAxis)xyplot.getDomainAxis();
      dateaxis.setTickUnit(new DateTickUnit(1, 1, new SimpleDateFormat(“MMM-yyyy”)));
      dateaxis.setVerticalTickLabels(true);
      2.設定最大座標範圍
      ValueAxis axis = xyplot.getRangeAxis() ;
      axis.setRange(0,100) ;
      xyplot.setRangeAxis(axis);

      numberaxis1.setUpperBound(6500D);//最大值
      numberaxis1.setLowerBound(5500D);//最小值
      2.設定時間軸的間隔時間
      dateaxis.setTickUnit(new DateTickUnit(DateTickUnit.DAY,1));//設定時間間隔為一天