List of usage examples for org.jfree.chart ChartRenderingInfo ChartRenderingInfo
public ChartRenderingInfo()
From source file:com.swordlord.gozer.components.generic.graph.ChartImage.java
/** * @return/*from w ww .j a v a 2 s . c o m*/ */ public BufferedImage createBufferedImage() { if (image == null) { renderingInfo = new ChartRenderingInfo(); image = chart.createBufferedImage(width, height, renderingInfo); } return image; }
From source file:com.manydesigns.portofino.pageactions.chart.jfreechart.JFreeChartInstance.java
public JFreeChartInstance(JFreeChart chart, File file, String mapId, String alt, int width, int height, String chartUrl) throws IOException { this.chart = chart; this.file = file; this.mapId = mapId; this.alt = alt; this.width = width; this.height = height; this.chartUrl = chartUrl; renderingInfo = new ChartRenderingInfo(); ChartUtilities.saveChartAsPNG(file, chart, width, height, renderingInfo); }
From source file:com.manydesigns.portofino.pageactions.chart.JFreeChartInstance.java
public JFreeChartInstance(JFreeChart chart, File file, String mapId, String alt, int width, int height, String chartUrl) throws IOException { this.chart = chart; this.file = file; this.mapId = mapId; this.alt = alt; this.width = width; this.height = height; this.chartUrl = chartUrl; renderingInfo = new ChartRenderingInfo(); ChartUtilities.saveChartAsPNG(file, chart, width, height, renderingInfo); }
From source file:de.bund.bfr.knime.pmm.common.chart.ChartUtilities.java
public static PNGImageContent convertToPNGImageContent(JFreeChart chart, int width, int height) { try {/*from www . j a v a2s. co m*/ BufferedImage img; if (chart != null) { ChartRenderingInfo info = new ChartRenderingInfo(); img = chart.createBufferedImage(width, 5000, info); img = chart.createBufferedImage(width, (int) (img.getHeight() - info.getPlotInfo().getDataArea().getHeight() + height)); } else { img = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); } return new PNGImageContent(org.jfree.chart.ChartUtilities.encodeAsPNG(img)); } catch (IOException e) { e.printStackTrace(); } return null; }
From source file:org.webguitoolkit.ui.controls.chart.Chart.java
/** * generate the image an send the url to the client *//*from www . ja va 2s .c o m*/ public void load() { HttpSession session = Page.getServletRequest().getSession(true); ChartRenderingInfo info = new ChartRenderingInfo(); JFreeChart chart = getModel().getChart(); if (chart == null) return; // happen for example in the init process try { String filename = ServletUtilities.saveChartAsPNG(chart, getWidth(), getHeight(), info, session); filename = URLEncoder.encode(filename, "UTF-8"); String mapName = id4Map() + filename + ".name"; String imagemap = ImageMapUtilities.getImageMap(mapName, info, new OverLIBToolTipTagFragmentGenerator(), null); // no urls // transfer image map to clinet getContext().add(id4Map(), imagemap, IContext.TYPE_HTML, IContext.STATUS_NOT_EDITABLE); // the img-tag to use the map getContext().add(id4Img() + ".usemap", "#" + mapName, IContext.TYPE_ATT, IContext.STATUS_NOT_EDITABLE); // transfer src- atribute to client String imageUrl = "Chart/DisplayChart?filename=" + filename; getContext().add(id4Img() + ".src", imageUrl, IContext.TYPE_ATT, IContext.STATUS_NOT_EDITABLE); } catch (IOException e) { e.printStackTrace(); throw new WGTException(e); } }
From source file:msi.gama.outputs.layers.charts.ChartJFreeChartOutput.java
public ChartJFreeChartOutput(final IScope scope, final String name, final IExpression typeexp) { super(scope, name, typeexp); info = new ChartRenderingInfo(); }
From source file:org.pentaho.plugin.jfreereport.reportcharts.JFreeChartReportDrawable.java
public JFreeChartReportDrawable(final JFreeChart chart, final boolean collectRenderingInfo) { debugRendering = ClassicEngineBoot.getInstance().getExtendedConfig() .getBoolProperty("org.pentaho.plugin.jfreereport.reportcharts.DebugChartEntities"); buggyDrawArea = ClassicEngineBoot.getInstance().getExtendedConfig() .getBoolProperty("org.pentaho.plugin.jfreereport.reportcharts.DrawAreaBug"); this.chart = chart; if (collectRenderingInfo) { this.chartRenderingInfo = new ChartRenderingInfo(); }//from ww w . jav a 2 s . c o m }
From source file:net.sf.jasperreports.charts.util.ChartUtil.java
/** * /*www.j a v a 2s .co m*/ */ public static List<JRPrintImageAreaHyperlink> getImageAreaHyperlinks(JFreeChart chart, ChartHyperlinkProvider chartHyperlinkProvider, Graphics2D grx, Rectangle2D renderingArea)// throws JRException { List<JRPrintImageAreaHyperlink> areaHyperlinks = null; if (chartHyperlinkProvider != null && chartHyperlinkProvider.hasHyperlinks()) { ChartRenderingInfo renderingInfo = new ChartRenderingInfo(); if (grx == null) { chart.createBufferedImage((int) renderingArea.getWidth(), (int) renderingArea.getHeight(), renderingInfo); } else { chart.draw(grx, renderingArea, renderingInfo); } EntityCollection entityCollection = renderingInfo.getEntityCollection(); if (entityCollection != null && entityCollection.getEntityCount() > 0) { areaHyperlinks = new ArrayList<JRPrintImageAreaHyperlink>(entityCollection.getEntityCount()); for (@SuppressWarnings("unchecked") Iterator<ChartEntity> it = entityCollection.iterator(); it.hasNext();) { ChartEntity entity = it.next(); JRPrintHyperlink printHyperlink = chartHyperlinkProvider.getEntityHyperlink(entity); if (printHyperlink != null) { JRPrintImageArea area = getImageArea(entity); JRPrintImageAreaHyperlink areaHyperlink = new JRPrintImageAreaHyperlink(); areaHyperlink.setArea(area); areaHyperlink.setHyperlink(printHyperlink); areaHyperlinks.add(areaHyperlink); } } } } return areaHyperlinks; }
From source file:electroStaticUI.Save.java
/** * Save chart as SVG file.//from w w w .j av a2s . c o m * Required libs: Apache Batik (batik-svggen.jar, batik-dom.jar, dom.jar). * * @param chart JFreeChart to save. * @param fileName Name of file to save chart in. * @param width Width of chart graphic. * @param height Height of chart graphic. * @return Final file name used. * @throws IOException if failed. * * To Do: Add a save/open method for saving a file native to this application. It should save the users current charge distribution * to be re-loaded at a later time. */ static public final String saveChartToSVG(final JFreeChart chart, String fileName, final int width, final int height) throws IOException { String result = null; if (chart != null) { if (fileName == null) { final String chartTitle = chart.getTitle().getText(); if (chartTitle != null) { fileName = chartTitle; } else { fileName = "chart"; } } result = fileName + ".svg"; final DOMImplementation domImpl = GenericDOMImplementation.getDOMImplementation(); final Document document = domImpl.createDocument(null, "svg", null); final SVGGraphics2D svgGenerator = new SVGGraphics2D(document); // svgGenerator.getGeneratorContext().setEmbeddedFontsOn(true); //embed fonts //set anti-aliasing bug fix for SVG generator: //setting rendering hints of svgGenerator doesn't help as it seems to use the rendering hints from the chart final boolean antiAlias = chart.getAntiAlias(); final RenderingHints rh = chart.getRenderingHints(); if (antiAlias) { rh.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); rh.put(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_OFF); //fix } else { rh.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF); rh.put(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON); //fix } // svgGenerator.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); // svgGenerator.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_OFF); // svgGenerator.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY); // svgGenerator.setRenderingHint(RenderingHints.KEY_COLOR_RENDERING, RenderingHints.VALUE_COLOR_RENDER_QUALITY); // svgGenerator.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); // svgGenerator.setRenderingHint(RenderingHints.KEY_ALPHA_INTERPOLATION, RenderingHints.VALUE_ALPHA_INTERPOLATION_QUALITY); chart.draw(svgGenerator, new Rectangle2D.Double(0, 0, width, height), new ChartRenderingInfo()); //undo anti-aliasing bugfix settings for chart to use correct settings: if (antiAlias) { rh.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); rh.put(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON); } else { rh.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF); rh.put(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_OFF); } final boolean useCSS = true; Writer out = null; try { out = new OutputStreamWriter( new BufferedOutputStream(new FileOutputStream(new File(result), false)), "iso-8859-1"); //UTF-8 svgGenerator.stream(out, useCSS); } finally { svgGenerator.dispose(); IOUtils.closeQuietly(out); } } //else: input unavailable return result; }
From source file:org.adempiere.webui.editor.WChartEditor.java
private void render(JFreeChart chart) { ChartRenderingInfo info = new ChartRenderingInfo(); int width = 400; int height = chartModel.getWinHeight(); BufferedImage bi = chart.createBufferedImage(width, height, BufferedImage.TRANSLUCENT, info); try {//from w w w . ja va2 s.c o m byte[] bytes = EncoderUtil.encode(bi, ImageFormat.PNG, true); AImage image = new AImage("", bytes); Imagemap myImage = new Imagemap(); Panel panel = getComponent(); myImage.setContent(image); if (panel.getPanelchildren() != null) { panel.getPanelchildren().getChildren().clear(); panel.getPanelchildren().appendChild(myImage); } else { Panelchildren pc = new Panelchildren(); panel.appendChild(pc); pc.appendChild(myImage); } int count = 0; for (Iterator<?> it = info.getEntityCollection().getEntities().iterator(); it.hasNext();) { ChartEntity entity = (ChartEntity) it.next(); String key = null; String seriesName = null; if (entity instanceof CategoryItemEntity) { CategoryItemEntity item = ((CategoryItemEntity) entity); Comparable<?> colKey = item.getColumnKey(); Comparable<?> rowKey = item.getRowKey(); if (colKey != null && rowKey != null) { key = colKey.toString(); seriesName = rowKey.toString(); } } else if (entity instanceof PieSectionEntity) { Comparable<?> sectionKey = ((PieSectionEntity) entity).getSectionKey(); if (sectionKey != null) { key = sectionKey.toString(); } } if (entity instanceof XYItemEntity) { XYItemEntity item = ((XYItemEntity) entity); if (item.getDataset() instanceof TimeSeriesCollection) { TimeSeriesCollection data = (TimeSeriesCollection) item.getDataset(); TimeSeries series = data.getSeries(item.getSeriesIndex()); TimeSeriesDataItem dataitem = series.getDataItem(item.getItem()); seriesName = series.getKey().toString(); key = dataitem.getPeriod().toString(); } } if (key == null) continue; Area area = new Area(); myImage.appendChild(area); area.setCoords(entity.getShapeCoords()); area.setShape(entity.getShapeType()); area.setTooltiptext(entity.getToolTipText()); area.setId(count + "_WG__" + seriesName + "__" + key); count++; } myImage.addEventListener(Events.ON_CLICK, new EventListener() { public void onEvent(Event event) throws Exception { MouseEvent me = (MouseEvent) event; String areaId = me.getArea(); if (areaId != null) { String[] strs = areaId.split("__"); if (strs.length == 3) { chartMouseClicked(strs[2], strs[1]); } } } }); } catch (Exception e) { log.log(Level.SEVERE, "", e); } }