当前位置: 首页 > 面试题库 >

使用JFreeChart中的类将double转换为日期格式

赵晟睿
2023-03-14
问题内容

我想知道,是否可以将两个参数都设置为日期,在本示例中,它将第一个参数设为可比较,将第二个参数设为double。但我希望将双精度显示为日期。有没有可以使用的类。如果不是,是否有其他方法将两者都显示为日期。例如,我需要同时使用x轴和y轴作为日期。

为了 data.addValue("8/4/2012" ,7.0)

我想要这样(“ 8/4/2012 20:06:02”,“ 8/5/2012”)->下图是否可能?

在此先感谢您。

public class Example1 {

    public static void main(String args[]){

        DefaultKeyedValues data = new DefaultKeyedValues();
        data.addValue("8/4/2012" ,7.0);
        data.addValue("19/04/2012",5.0);

        CategoryDataset dataset = DatasetUtilities.createCategoryDataset("Population", data);
        JFreeChart chart = ChartFactory.createBarChart("Population","Date","Population",dataset,PlotOrientation.VERTICAL,true,true,false);
        ChartFrame frame = new ChartFrame("Test", chart);

        //Switch from a Bar Rendered to a LineAndShapeRenderer so the chart looks like an XYChart
        LineAndShapeRenderer renderer = new LineAndShapeRenderer();
        renderer.setBaseLinesVisible(false); //TUrn of the lines
        CategoryPlot plot = (CategoryPlot) chart.getPlot();
        plot.setRenderer(0, renderer);

        NumberAxis numberAxis = (NumberAxis)plot.getRangeAxis();        
        numberAxis.setRange(new Range(0,10));

        frame.pack();
        frame.setVisible(true);
    }  
}

问题答案:

而不是a
NumberAxis,请使用DateAxis。那将使您DateFormatsetDateFormatOverride()方法中使用a


更新:中有一个完整的示例org.jfree.chart.demo.TimeSeriesChartDemo1。您可能想要createLineChart()。您会在这里让范围轴显示日期。

public class Example1 {

    public static void main(String args[]) {
        DefaultKeyedValues data = new DefaultKeyedValues();
        data.addValue("8/4/2012", new Day(8, 4, 2012).getFirstMillisecond());
        data.addValue("19/04/2012", new Day(19, 4, 2012).getFirstMillisecond());
        CategoryDataset dataset = DatasetUtilities
            .createCategoryDataset("Population", data);

        JFreeChart chart = ChartFactory.createLineChart("Population", "Date",
            "Population", dataset, PlotOrientation.VERTICAL, true, true, false);
        CategoryPlot plot = (CategoryPlot) chart.getPlot();
        LineAndShapeRenderer renderer = (LineAndShapeRenderer) plot.getRenderer();
        renderer.setBaseShapesVisible(true);
        renderer.setBaseLinesVisible(false);

        DateAxis range = new DateAxis("Date");
        range.setDateFormatOverride(new SimpleDateFormat("dd/MM/yyyy"));
        plot.setRangeAxis(range);

        ChartFrame frame = new ChartFrame("Test", chart);
        frame.pack();
        frame.setVisible(true);
    }
}


 类似资料:
  • 问题内容: 我正在使用需要json日期格式的API。 我需要转换我的JavaScript日期 1970年1月17日星期六格林尼治标准时间+0100(浪漫标准时间) 以json日期格式 /日期(1405699200)/ 问题答案: 列各项可以吗?

  • 问题内容: 我有一个输出数据数组的PHP脚本。然后将其转换为使用函数。 我的问题是我的数组中有一个日期,但日期格式不正确。 我怎样才能在PHP中转换它呢? 代替上面的日期,我需要等效的JavaScript函数 新的Date() 当我输出上述内容时,我得到以下内容:“ Fri Jun 01 2012 11:08:48 GMT + 0100(GMT Daylight Time)”但是,如果我将PHP日

  • 问题内容: 我在使用此代码的php中有一个日期字段: 我如何将其转换为MySql格式的Registry,以便包含在db中。它是否遵循以下格式:date(’Ymd’strtotime($ date);.我问的原因是因为我尝试了此方法的变体,但似乎无法正常工作。显示为1970还是其他变体对此非常感谢 问题答案: 1.如果您的MySQL列为: 2.如果您的MySQL列为: 您无需工作,因为它不适用于破折

  • 我想使用angularjs将日期从2015-12-02T18:30:00.000 0000转换为2015年12月2日星期三00:00:00 GMT 0530(印度标准时间)。

  • 我有一个字符串变量,其中包含以下格式的日期和时间 编辑: 我需要使用简单的格式将其转换并解析为这种日期格式,如下所示: 但是我不知道使用简单格式转换的字符串模式。 我已经给出了 但它给了我错误的输出。 simpledateformat sdf的字符串模式是否正确?如果我错了,有人可以请纠正我在转换新日期到日期和格式。

  • 问题内容: 我正在使用Python访问某些Web服务的移动API,响应中包含以下奇怪的日期表示法:这应该是2014年9月1日。 我不确定这是哪种格式,但是我想将其转换为可读的格式,即a或a或Unix时间。 有人可以帮我吗? 问题答案: 时间字符串看起来像[Datetime的OData版本2JSON详细格式,可以在旧的ASP.NET或WCF应用程序中看到: “ / Date( [“ +” |“-”