jfreechart生成折线图实例(修改鼠标提示内容)

该博客介绍了如何使用jfreechart库在Java中生成折线图,包括设置图表标题、数据源、X轴、Y轴以及自定义鼠标提示内容的方法。代码示例展示了如何根据查询条件生成曲线图,并调整图形样式,如颜色、网格线、日期轴显示等。
摘要由CSDN通过智能技术生成
package com.csair.gsms.client.view.transfer;


import java.awt.Color;
import java.awt.Font;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;


import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.StandardChartTheme;
import org.jfree.chart.axis.DateAxis;
import org.jfree.chart.axis.DateTickUnit;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.labels.StandardXYToolTipGenerator;
import org.jfree.chart.plot.XYPlot;
import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer;
import org.jfree.data.time.Day;
import org.jfree.data.time.TimeSeries;
import org.jfree.data.time.TimeSeriesCollection;
import org.jfree.experimental.chart.swt.ChartComposite;


import com.csair.gsms.client.common.util.DateUtil;
import com.csair.gsms.ghc.client.core.fltPsgrLugStatistics.FDLTrsConditionItem;
import com.csair.gsms.ghc.client.core.fltPsgrLugStatistics.FDLTrsCountInfoItem;


public class TransferPredictionChart extends Composite {


public static final String[] lineTitle = {"中转人数","vip人数","两舱人数"};
public static final Integer lineCount = 1;

private String chartTitle;
private List<Map<String,Integer>> transList = new ArrayList<Map<String,Integer>>();

/**
* 重载的构造方法
* @param parent 父面板
* @param style  样式
*/
public TransferPredictionChart(Composite parent, int style) {
super(parent, style);
createContents();
}

/**
* 根据查询条件生成图形的标题(格式:始发站三字码-中转站三字码-目的地三字码)
* @param conditionItem 查询条件
*/
public void setChartTitle(FDLTrsConditionItem conditionItem){
StringBuffer title = new StringBuffer();
String depCd,arvCD;
depCd = conditionItem.getdDepCd()==null?"":conditionItem.getdDepCd();
depCd = "".equals(depCd)?conditionItem.getiDepCd()==null?"":conditionItem.getiDepCd():depCd;

arvCD = conditionItem.getdArvCd()==null?"":conditionItem.getdArvCd();
arvCD = "".equals(arvCD)?conditionItem.getiArvCd()==null?"":conditionItem.getiArvCd():arvCD;

title.append("".equals(depCd)?"全部":depCd);
title.append("-");
title.append(conditionItem.getTransferCd());
title.append("-");
title.append("".equals(arvCD)?"全部":arvCD);
this.chartTitle = title.toString();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值