Tag: jfreechart

JFreeChart与SWT

我正在为eclipse开发一个插件并扩展org.eclipse.ui.views扩展点。 我想使用JFreeChart在eclipse视图中绘制一些图形。 是否可以在eclipse视图中使用JFreeChart和SWT?

如何使用Jfreechart绘制日图

我每15分钟就有一次数据。 我想绘制一个图表来显示从’date1’到’date2’的值。 该图应显示每15分钟的值。 但是在X轴上显示应该只显示日期。

JFReeChart x轴刻度

我有一个JFree XY线图,总是从x = 0开始。然后根据属性文件中的用户定义设置,应用程序根据该数字递增(这表示以分钟为单位的时间) 例如,x = 0以启动用户定义的设置为5 – 因此比例变为0,5,10,15,20 ……或者用户设置为3,因此它变为0,3,6,9,12。 ….. 很简单。 我遇到的问题是图表的开始方式。 如果我从0开始,则0位于图形的中间而不是左下角的-0.0000005,-0.000004,-0.000003 ….. 0.000000,0.000001,0.000002 …… 0.000005 我怎样才能在底部手动添加比例,即定义它应该是2的增量然后它维持它? 谢谢你的时间

JfreeChart:动态日期时间值到XY图表

我正在使用JfreeChart来创建动态图表。 目前,我正面临着创建图表以显示数据库中的动态日期时间值的问题。 显示上面的图片,我想在1月到12月之间修复Y轴。 由于长期以来的尝试,但我找不到任何解决方案。 请给我解决方案以解决上述问题

JDBCCategoryDataset – 执行多个查询

我想使用JDBCCategoryDataset类在JFrame中创建三个图表。 我怎样才能提出三个单独的查询? 我在数据集对象中给出了三个不同的查询,但结果显示了三个相似的图表。 另外,它执行所有三个的最后一个查询。 我已经看到了使用DefaultPieDataset给出默认(静态)值的方式,但我想从数据库中动态检索数据。 我知道我可以创建几个JDBCCategoryDataset对象吗? 有没有更好的办法? package barchart; import Extra.OpenFile; import java.awt.Color; import java.awt.Dimension; import java.awt.GridLayout; import java.io.FileNotFoundException; import java.io.IOException; import java.sql.SQLException; import javax.swing.JFrame; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartPanel; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.CategoryPlot; import org.jfree.chart.plot.PlotOrientation; import org.jfree.chart.renderer.category.BarRenderer; import org.jfree.data.jdbc.JDBCCategoryDataset; import org.jfree.ui.RefineryUtilities; public class Chart { public static void main(String[] args) throws IOException { try { […]

JFreeChart – Java堆空间问题

我第一次使用JFreeChart,我使用TimeSeriesCollection()来创建TimeSeriesChart。 我在数据库查询中的重新设置是应用程序。 记录了1000条记录。 我正在使用org.jfree.date.time.Minute.Minute(int min …..)对象将其添加到TimeSeries对象中。 我有一个JFrame,我直接添加ChartPanel。 用户将提供新的输入参数并使用新数据集重新加载图表数据。 所以我在每次重新加载之前通过在方法中调用以下来清理 dataset.removeAllSeries(); chart.removeLegend(); chart.getRenderingHints().clear(); cp.getChartRenderingInfo().setEntityCollection(null); cp.removeAll(); cp.revalidate(); 输出很完美。 但是我注意到在Eclipse中运行了几次这个程序后,我看到了以下关于Java堆空间的错误消息。 有时我也会在任务管理器中看到程序在PC内存中占用,即使数据集非常小(100条记录)。 Exception occurred during event dispatching: java.lang.OutOfMemoryError: Java heap space at sun.util.calendar.Gregorian.newCalendarDate(Gregorian.java:67) at java.util.GregorianCalendar.(GregorianCalendar.java:575) at java.util.Calendar.createCalendar(Calendar.java:1012) at java.util.Calendar.getInstance(Calendar.java:964) at org.jfree.chart.axis.DateTickUnit.addToDate(DateTickUnit.java:238) at org.jfree.chart.axis.DateAxis.refreshTicksHorizontal(DateAxis.java:1685) at org.jfree.chart.axis.DateAxis.refreshTicks(DateAxis.java:1556) at org.jfree.chart.axis.ValueAxis.reserveSpace(ValueAxis.java:809) at org.jfree.chart.plot.XYPlot.calculateDomainAxisSpace(XYPlot.java:3119) at org.jfree.chart.plot.XYPlot.calculateAxisSpace(XYPlot.java:3077) at org.jfree.chart.plot.XYPlot.draw(XYPlot.java:3220) at org.jfree.chart.JFreeChart.draw(JFreeChart.java:1237) at org.jfree.chart.ChartPanel.paintComponent(ChartPanel.java:1677) at javax.swing.JComponent.paint(JComponent.java:1029) […]

生成图像并在JSP中显示它以及其他内容

我正在使用JFreeChart根据用户输入生成动态图表。 我有一个带有一些文本框和combobox的JSP,用户进行输入并提交它,并且Action处理它,生成图表的图像。 我需要在文本框/combobox下面的同一个JSP上显示此图像。 如果我使用response.setContentType(“image/jpeg”); 等…然后我得到一个单独的图像页面。 我想把图像保存到一个文件,然后用访问它,但我不确定它是否会起作用(需要将它保存到WebContent,我可能无法一直访问它?)。 有没有办法以某种方式缓存图像,然后通过或其他东西在JSP中访问它? 也许JFreeChart有一个简单的方法来做我想要的事情? 如果重要的话,我也在我的webapp上使用struts和spring。 提前致谢。

如何在JFreeChart TimeSeries图表上显示降雨指数和温度?

目前,我的TimeSeries图表每2秒显示一个位置的温度。 现在,如果我想每2秒显示降雨指数和温度,我该如何实现呢? 这是我的代码: import testWeatherService.TestWeatherTimeLapseService; public class graph extends JFrame implements ActionListener { private static TimeSeries series; static final int COUNT = 200; /** The Constant WINDOW. */ public static final int WINDOW = 25; TestWeatherTimeLapseService getLocData = new TestWeatherTimeLapseService(); public graph(final String title) { super(title); this.series = new TimeSeries(“Random Data”, Millisecond.class); this.series2 = new […]

如何在股票条形图上绘制十字准线

嗨,我想在这个barchar上绘制十字线。可以给我一个帮助。我想要十字线打印X和y坐在我的鼠标指向或点击的地方。我很好,即使十字线打印X和Y坐在上面console。这是我的代码 import java.awt.Color; import java.awt.Dimension; import java.io.BufferedReader; import java.io.FileReader; import java.text.DateFormat; import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.StringTokenizer; import javax.swing.JPanel; import org.jfree.chart.ChartColor; import org.jfree.chart.ChartPanel; import org.jfree.chart.ChartUtilities; import org.jfree.chart.JFreeChart; import org.jfree.chart.axis.DateAxis; import org.jfree.chart.axis.NumberAxis; import org.jfree.chart.labels.StandardXYToolTipGenerator; import org.jfree.chart.plot.CombinedDomainXYPlot; import org.jfree.chart.plot.Marker; import org.jfree.chart.plot.ValueMarker; import org.jfree.chart.plot.XYPlot; import org.jfree.chart.renderer.xy.HighLowRenderer; import org.jfree.chart.renderer.xy.StandardXYBarPainter; import org.jfree.chart.renderer.xy.XYBarRenderer; import org.jfree.chart.renderer.xy.XYItemRenderer; import org.jfree.data.time.Day; import org.jfree.data.time.TimeSeries; […]

将JFreeChart从Itext 5迁移到7

我正在将我的应用程序从Itext 5迁移到7,并且无法找到有关如何将JFreeChart添加到我的文档的任何内容。 我问过那个论坛,但他们无能为力,所以他们把我送到了这里。 这是我的工作Itext 5代码: PdfContentByte cb=writer.getDirectContent(); PdfTemplate tp=cb.createTemplate(sizeX*scale+1,sizeY*scale+1); PdfGraphics2D g2d=new PdfGraphics2D(cb,sizeX*scale+1,sizeY*scale+1); tp.setWidth(sizeX*scale+1); tp.setHeight(sizeY*scale+1); Chart.getInstance().getChart().draw(g2d, new java.awt.geom.Rectangle2D.Float(0,0,sizeX*scale,sizeY*scale)); g2d.dispose(); cb.add(tp); 有人可以帮我创建等效的itext 7吗? TIA。