首页    管理页面    写新日志    退出


«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31


公告

Welcome to Lin's Space !

Just enjoy yourself .

Contact me:

jerry585@gmail.com


我的分类(专题)

日志更新

最新评论

留言板

我的相册

链接

Blog信息
blog名称:Lin's Space
日志总数:20
评论数量:99
留言数量:0
访问次数:241086
建立时间:2007年5月15日




[java]3D bar(JfreeChart)
软件技术

Great Void 发表于 2007/5/20 16:06:21

import org.jfree.chart.ChartFactory;import org.jfree.chart.ChartPanel;import org.jfree.chart.JFreeChart;import org.jfree.chart.axis.CategoryAxis;import org.jfree.chart.axis.CategoryLabelPosition;import org.jfree.chart.axis.CategoryLabelPositions;import org.jfree.chart.axis.CategoryLabelWidthType;import org.jfree.chart.plot.CategoryPlot;import org.jfree.chart.plot.PlotOrientation;import org.jfree.data.category.CategoryDataset;import org.jfree.data.category.DefaultCategoryDataset;import org.jfree.text.TextBlockAnchor;import org.jfree.ui.ApplicationFrame;import org.jfree.ui.RectangleAnchor;import org.jfree.ui.RefineryUtilities;import org.jfree.ui.TextAnchor;import org.jfree.util.Log;import org.jfree.util.PrintStreamLogTarget;/** * A simple demonstration application showing how to create a horizontal 3D bar chart using data * from a {@link CategoryDataset}. * */public class BarChart3DDemo2 extends ApplicationFrame {    // ****************************************************************************    // * JFREECHART DEVELOPER GUIDE                                               *    // * The JFreeChart Developer Guide, written by David Gilbert, is available   *    // * to purchase from Object Refinery Limited:                                *    // *                                                                          *    // * http://www.object-refinery.com/jfreechart/guide.html                     *    // *                                                                          *    // * Sales are used to provide funding for the JFreeChart project - please    *     // * support us so that we can continue developing free software.             *    // ****************************************************************************    /**     * Creates a new demo.     *     * @param title  the frame title.     */    public BarChart3DDemo2(final String title) {        super(title);        // create the chart...        final DefaultCategoryDataset dataset = new DefaultCategoryDataset();        dataset.addValue(23.0, "Series 1", "London");        dataset.addValue(14.0, "Series 1", "New York");        dataset.addValue(14.0, "Series 1", "Istanbul");        dataset.addValue(14.0, "Series 1", "Cairo");        dataset.addValue(13.0, "Series 2", "London");        dataset.addValue(19.0, "Series 2", "New York");        dataset.addValue(19.0, "Series 2", "Istanbul");        dataset.addValue(19.0, "Series 2", "Cairo");        dataset.addValue(7.0, "Series 3", "London");        dataset.addValue(9.0, "Series 3", "New York");        dataset.addValue(9.0, "Series 3", "Istanbul");        dataset.addValue(9.0, "Series 3", "Cairo");        final JFreeChart chart = createChart(dataset);        // add the chart to a panel...        final ChartPanel chartPanel = new ChartPanel(chart);        chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));        setContentPane(chartPanel);    }    /**     * Creates a chart.     *      * @param dataset  the dataset.     *      * @return The chart.     */    private JFreeChart createChart(final CategoryDataset dataset) {        final JFreeChart chart = ChartFactory.createBarChart3D(            "3D Bar Chart Demo 2",       // chart title            "Category",                  // domain axis label            "Value",                     // range axis label            dataset,                     // data            PlotOrientation.HORIZONTAL,  // orientation            true,                        // include legend            true,                        // tooltips            false                        // urls        );        final CategoryPlot plot = chart.getCategoryPlot();        plot.setForegroundAlpha(1.0f);        // left align the category labels...        final CategoryAxis axis = plot.getDomainAxis();        final CategoryLabelPositions p = axis.getCategoryLabelPositions();        final CategoryLabelPosition left = new CategoryLabelPosition(            RectangleAnchor.LEFT, TextBlockAnchor.CENTER_LEFT,             TextAnchor.CENTER_LEFT, 0.0,            CategoryLabelWidthType.RANGE, 0.30f        );        axis.setCategoryLabelPositions(CategoryLabelPositions.replaceLeftPosition(p, left));        return chart;            }    /**     * Starting point for the demonstration application.     *     * @param args  ignored.     */    public static void main(final String[] args) {        Log.getInstance().addTarget(new PrintStreamLogTarget());        final BarChart3DDemo2 demo = new BarChart3DDemo2("3D Bar Chart Demo 2");        demo.pack();        RefineryUtilities.centerFrameOnScreen(demo);        demo.setVisible(true);    }}


阅读全文(1548) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.239 second(s), page refreshed 144751407 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号