日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【JFreeChart】JFreeChart—输出时序图

發布時間:2024/4/14 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【JFreeChart】JFreeChart—输出时序图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

時序圖(Time Series Chart)是按照時間軸顯示的圖形。通常可以按照年、月、日等時間周來顯示。

實現代碼:

TimeChartServlet.java

package com.lmb.jfreechart;import java.awt.BasicStroke; import java.io.IOException;import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartUtilities; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.XYPlot; import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer; import org.jfree.data.general.SeriesException; import org.jfree.data.time.Day; import org.jfree.data.time.TimeSeries; import org.jfree.data.time.TimeSeriesCollection; import org.jfree.data.xy.XYDataset;public class TimeChartServlet extends HttpServlet {private static final long serialVersionUID = -2380167170122284327L;public TimeChartServlet() {super();}public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {this.doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {// 設置返回類型為圖片response.setContentType("image/png");// 獲取數據集對象XYDataset dataset = createDataset();// 創建圖形對象JFreeChart jfreechart = ChartFactory.createTimeSeriesChart("時序圖","POLO歷史價格", "價格", dataset, false, false, false);XYPlot xyplot = (XYPlot) jfreechart.getPlot();//獲得折線顯示對象XYLineAndShapeRenderer xylineandshaperenderer = new XYLineAndShapeRenderer();//設置不顯示折線xylineandshaperenderer.setBaseShapesVisible(false);//設置折線的粗細xylineandshaperenderer.setSeriesStroke(0, new BasicStroke(0.5F, 1, 1, 5F, new float[] { 5F, 10F }, 0.0F));xyplot.setRenderer(xylineandshaperenderer);// 將圖表已數據流的方式返回給客戶端ChartUtilities.writeChartAsPNG(response.getOutputStream(), jfreechart,500, 270);}/*** 返回數據集* * @return*/private static XYDataset createDataset() {//創建時序對象TimeSeries timeseries = new TimeSeries("JAVA");//初始化日期為1990年1月1日Day day = new Day(1, 1, 1990);double d = 100000D;//添加1000條數據for (int i = 0; i < 4000; i++)try {//隨機取出100附近數d = (d + Math.random()) - 0.5D;//添加到時序對象timeseries.add(day, new Double(d));//之后的一天day = (Day) day.next();} catch (SeriesException seriesexception) {}//返回XYDataset數據集return new TimeSeriesCollection(timeseries);} }

web.xml略。。。

總結:

1、利用XYDataset數據集繪制時序圖,時序圖的數據集可以通過TimeSeries對象設置;

2、對應創建時序圖的方法是createTimeSeriesChart();

3、利用XYLineAndShapeRenderer對象設置繪制線條的顯示方式。

總結

以上是生活随笔為你收集整理的【JFreeChart】JFreeChart—输出时序图的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。