簡體   English   中英

Jfree圖表更改Y軸數據

[英]Jfree chart change Y axis data

我正在使用Jfree圖表0.9.20的XYLineChartDemo繪制程序中正在運行的進程的執行時間。 我的X軸表示時間,Y軸表示Pid。 如何編輯Jfreechart文件以使我的Y軸表示我想要的值而不是0范圍的數字? 還有辦法使繪制的線的寬度變粗嗎?

研究這個:

public JFreeChart createChart(String axisX, String axisY){

    JFreeChart chart = ChartFactory.createTimeSeriesChart(null, axisX, axisY, dataSeries, true, true, false);

    final XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer();
    renderer.setSeriesLinesVisible(0,true);
    renderer.setSeriesShapesVisible(0, true);

    //percentage (y-axis)
    final NumberAxis percentAxis = new NumberAxis(axisY);
    percentAxis.setInverted(false);
    percentAxis.setRange(0.0, 100.0);

    //time (x-axis)
    final DateAxis timeAxis = new DateAxis(axisX);
    timeAxis.setStandardTickUnits(DateAxis.createStandardDateTickUnits(TimeZone.getDefault(), Locale.ENGLISH));

    double range = 0;

    switch (format){
        case ONE_MINUTE_RANGE: range = 60*1000; break;
        case TEN_MINUTE_RANGE: range = 10*60*1000; break;
        case ONE_HOUR_RANGE: range = 60*60*1000; break;
    }

    timeAxis.setRange(System.currentTimeMillis()-range/2, System.currentTimeMillis()+range/2); //time duration based on format chosen

    XYPlot plot = chart.getXYPlot();
    plot.setDomainAxis(timeAxis);
    plot.setRangeAxis(percentAxis);

    plot.setBackgroundPaint(Color.white);
    plot.setRangeGridlinePaint(Color.gray);
    plot.setRangeZeroBaselinePaint(Color.gray);
    plot.setDomainGridlinePaint(Color.gray);
    plot.setForegroundAlpha(0.5f);
    plot.setRenderer(renderer);

    chart.setBackgroundPaint(Color.white);

    return chart;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM