⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 linechart.java

📁 该部分提供了对photo的一些操作
💻 JAVA
字号:
package photo;

import java.awt.Color;
import java.awt.Font;
import java.awt.GradientPaint;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Iterator;
import java.util.List;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.title.TextTitle;
import org.jfree.data.time.Hour;
import org.jfree.data.time.Month;
import org.jfree.data.time.TimeSeries;
import org.jfree.data.time.TimeSeriesCollection;
import org.jfree.data.time.TimeSeriesDataItem;


public class LineChart {
	public void createChart(OutputStream os, List lineValues, String title,
			String subtitle, String xTitle, String yTitle, int width, int height)
			throws IOException {
		TimeSeriesCollection dataset = getTimeSeriesCollection(lineValues);
		JFreeChart chart = ChartFactory.createTimeSeriesChart(title, xTitle,
				yTitle, dataset, false, false, false);
		TextTitle st = new TextTitle(subtitle, new Font("瀹嬩綋", Font.BOLD, 12));
		chart.addSubtitle(st);
		chart.setTitle(new TextTitle(title, new Font("闅朵功", Font.ITALIC, 15)));
		//		      pie.setSeriesLabelFont(new Font("榛戜綋", Font.BOLD, 15));
		chart.setBackgroundPaint(new GradientPaint(0, 0, Color.white, 0, 1000,
				Color.blue));
		ChartUtilities.writeChartAsJPEG(os, 1.0f, chart, width, height, null);
	}
	private TimeSeriesCollection getTimeSeriesCollection(List lineValues) {
		Iterator iter = lineValues.iterator();
		TimeSeriesCollection dataset = new TimeSeriesCollection();
		while (iter.hasNext()) {
			LineValue lv = (LineValue) iter.next();
			TimeSeries ts = new TimeSeries(lv.getName(), Hour.class);
			Iterator it = lv.getItems().iterator();
			while (it.hasNext()) {
				LineItem item = (LineItem) it.next();
				Calendar calendar=Calendar.getInstance();
				calendar.set(Calendar.HOUR_OF_DAY, item.getHour());
				calendar.set(Calendar.DAY_OF_MONTH, item.getDay());
				calendar.set(Calendar.MONTH, item.getMonth());
				calendar.set(Calendar.YEAR, item.getYear());
				//TimeZone timeZone=TimeZone.getDefault();
				//RegularTimePeriod period=RegularTimePeriod.createInstance(TimeZone.class, calendar.getTime(), timeZone);
				//System.out.println(period);
			//	ts.add(new TimeSeriesDataItem(period,item.getValue()));
				Hour current = new Hour(calendar.get(Calendar.HOUR_OF_DAY), calendar
						.get(Calendar.DAY_OF_MONTH),
						calendar.get(Calendar.MONTH) + 1, calendar.get(Calendar.YEAR));
				ts.add(new TimeSeriesDataItem(current, item.getValue()));
			}
			dataset.addSeries(ts);
		}
		return dataset;
	}
	public static void main(String[] args) {
		List list=new ArrayList();
	      LineValue lv=new LineValue();
	      lv.setName("鐢ㄥ弸");
	      for (int i = 1999; i < 2005; i++) {
		      for (int mon = 0; mon < 12; mon++) {
//		      ibm.add(new Month(mon+1,i),new Double(400-Math.random()*100));
		      lv.getItems().add(new LineItem( 1,1,mon+1,i,new Double(300 - Math.random() * 100)));
		      }
	}
	      LineValue lv2=new LineValue();
	      lv2.setName("閲戠

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -