Thanks
I will check it out in a couple of days
stefan
Gesendet: Freitag, 18. November 2016 um 12:07 Uhr
Von: "Trig Chen" <[email protected]>
An: "Nebula Dev" <[email protected]>
Betreff: Re: [nebula-dev] save as bmp, or tif-fileswt xygraph
Von: "Trig Chen" <[email protected]>
An: "Nebula Dev" <[email protected]>
Betreff: Re: [nebula-dev] save as bmp, or tif-fileswt xygraph
Hi Lars,
You can create the plot with a toolbar. The toolbar has export button. The sample code is in:
http://git.eclipse.org/c/nebula/org.eclipse.nebula.git/plain/examples/org.eclipse.nebula.snippets/src/org/eclipse/nebula/snippets/visualization/SimpleToolbarArmedXYGraphExample.java
The relatived code in org.eclipse.nebula.visualization.xygraph.figures.XYGraphToolbar.java is:private void addSnapshotButton() { Button snapShotButton = new Button(XYGraphMediaFactory.getInstance().getImage("images/camera.png")); snapShotButton.setToolTip(new Label("Save Snapshot to PNG file")); addButton(snapShotButton); snapShotButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { // Have valid name, so get image ImageLoader loader = new ImageLoader(); Image image = xyGraph.getImage(); loader.data = "" ImageData[] { image.getImageData() }; image.dispose(); // Prompt for file name String path = SingleSourceHelper2.getImageSavePath(); if (path == null || path.length() <= 0) return; // Assert *.png at end of file name if (!path.toLowerCase().endsWith(".png")) path = path + ".png"; // Save loader.save(path, SWT.IMAGE_PNG); } }); }
Best regards,
Trig
2016-11-18 17:56 GMT+08:00 Lars Ohmann <[email protected]>:
Hellobelow is the code! It is easy, it just gives a simple plot. How can I save this plot (xygraph) asa bmp or jpg-file on the PC ? I posted the question on several forums, either the answer is toocomplicated or the problem is too trivial for the community.A hint would be very helpful!thanks!package org.eclipse.nebula.visualization.xygraph.examples;
/*******************************************************************************
* Copyright (c) 2010 Oak Ridge National Laboratory.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
******************************************************************************/
import org.eclipse.draw2d.LightweightSystem;
import org.eclipse.nebula.visualization.xygraph.dataprovider.CircularBufferDataProvider;
import org.eclipse.nebula.visualization.xygraph.figures.Ixygraph;
import org.eclipse.nebula.visualization.xygraph.figures.Trace;
import org.eclipse.nebula.visualization.xygraph.figures.xygraph;
import org.eclipse.nebula.visualization.xygraph.figures.Trace.PointStyle;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
/**
* A very simple example.
*
* @author Xihui Chen
*
*/
public class SimpleExample {
public static void main(String[] args) {
final Shell shell = new Shell();
shell.setSize(300, 250);
shell.open();
// use LightweightSystem to create the bridge between SWT and draw2D
final LightweightSystem lws = new LightweightSystem(shell);
// create a new XY Graph.
Ixygraph xygraph = new xygraph();
xygraph.setTitle("Simple Example");
// set it as the content of LightwightSystem
lws.setContents(xygraph);
// create a trace data provider, which will provide the data to the
// trace.
CircularBufferDataProvider traceDataProvider = new CircularBufferDataProvider(false);
traceDataProvider.setBufferSize(100);
traceDataProvider.setCurrentXDataArray(new double[] { 10, 23, 34, 45, 56, 78, 88, 99 });
traceDataProvider.setCurrentYDataArray(new double[] { 11, 44, 55, 45, 88, 98, 52, 23 });
// create the trace
Trace trace = new Trace("Trace1-XY Plot", xygraph.getPrimaryXAxis(), xygraph.getPrimaryYAxis(), traceDataProvider);
// set trace property
trace.setPointStyle(PointStyle.XCROSS);
// add the trace to xygraph
xygraph.addTrace(trace);
Display display = Display.getDefault();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}
}
_______________________________________________
nebula-dev mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/nebula-dev
_______________________________________________ nebula-dev mailing list [email protected] To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/nebula-dev
