Intellij idea 有人能提供在IntelliJ项目中使用jfreechart的分步说明吗
我无法让JFreeChart在IntelliJ中工作 到目前为止我所做的:Intellij idea 有人能提供在IntelliJ项目中使用jfreechart的分步说明吗,intellij-idea,jfreechart,Intellij Idea,Jfreechart,我无法让JFreeChart在IntelliJ中工作 到目前为止我所做的: 使用Win 7、IntelliJ 13.1.4和Java 1.7 我对IntelliJ比较陌生 在IntelliJ中启动了一个新项目,该项目创建默认目录root\out和root\src 添加了我自己的根目录\lib 将外部库作为.jar和.zip文件放在其中(jcommon-1.0.23.zip、jfreechart-1.0.19.zip、junit-4.7.jar) 在IntelliJ中,打开“项目结构”对话框(C
- 使用Win 7、IntelliJ 13.1.4和Java 1.7
- 我对IntelliJ比较陌生
- 在IntelliJ中启动了一个新项目,该项目创建默认目录root\out和root\src
- 添加了我自己的根目录\lib
- 将外部库作为.jar和.zip文件放在其中(jcommon-1.0.23.zip、jfreechart-1.0.19.zip、junit-4.7.jar)
- 在IntelliJ中,打开“项目结构”对话框(Ctrl+Alt+Shift+S)
- 在左侧面板中,选择“模块”
- 在中间的面板中选择了这个项目(唯一存在的东西)
- 在右侧面板的“源”选项卡上,选择“src”目录
- 切换到“依赖项”选项卡
- 单击右侧的绿色“+”按钮
- 选择“2库…>Java”
- 导航到root\lib并选择了一个.zip/.jar文件
- 一个“检测到的根”对话框弹出-我刚刚点击确定
- 一个“配置库”对话框弹出-我给了库一个合理的名称,然后单击OK
- 该库出现在“依赖项”选项卡中,旁边有一个符号,看起来像一些书籍,与“项目工具”窗口中“外部库”节点旁边的符号相同(因此我猜这就是库符号)
- 对其他两个库重复此操作
- 在项目的源文件中,我尝试键入“import org.jfree.*”;但在键入“jfree”时,该位是红色的,当我在行尾按enter键时,该行消失
- 我也尝试过输入“JFreeChart JFreeChart=new JFreeChart();”,但是JFreeChart是红色的,当我点击它时,我没有选择导入;仅创建类、接口、枚举等
- 顺便说一句,运行jUnit测试效果很好
- 顺便提一下,项目工具窗口中的“外部库”节点确实显示<1.7>(即JDK),但不显示jUnit、JComon或jFreeChart
编辑:jUnit正在工作,但现在不行了。哦 我以前从未使用过IntelliJ,但我下载了它并立即创建了一个名为JFreeChartExample
文件->新项目的新项目。接下来,我单击文件->项目结构…
并选择库
条目,然后单击+
添加jcommon-1.0.23.jar
和jfreechart-1.0.19.jar
(解压jfreechart发行版后,我在本地文件系统上拥有)。然后在src/
目录中,我创建了一个新的Java文件BarChartDemo.Java
(见下文)。现在,我的项目如下所示:
BarChartDemo1.java如下所示:
/* ==================
* BarChartDemo1.java
* ==================
*
* Copyright (c) 2005-2014, Object Refinery Limited.
* All rights reserved.
*
* http://www.jfree.org/jfreechart/index.html
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* - Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* - Neither the name of the Object Refinery Limited nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL OBJECT REFINERY LIMITED BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* Original Author: David Gilbert (for Object Refinery Limited);
* Contributor(s): -;
*
* Changes
* -------
* 09-Mar-2005 : Version 1 (DG);
* 11-Mar-2014 : Use new ChartFactory method (DG);
* 25-Jun-2014 : Update to use real data (DG);
*
*/
import java.awt.Color;
import java.awt.Dimension;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.StandardChartTheme;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.block.BlockBorder;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.renderer.category.BarRenderer;
import org.jfree.chart.title.TextTitle;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
/**
* A simple demonstration application showing how to create a bar chart.
*/
public class BarChartDemo extends ApplicationFrame {
private static final long serialVersionUID = 1L;
static {
// set a theme using the new shadow generator feature available in
// 1.0.14 - for backwards compatibility it is not enabled by default
ChartFactory.setChartTheme(new StandardChartTheme("JFree/Shadow",
true));
}
/**
* Creates a new demo instance.
*
* @param title the frame title.
*/
public BarChartDemo(String title) {
super(title);
CategoryDataset dataset = createDataset();
JFreeChart chart = createChart(dataset);
ChartPanel chartPanel = new ChartPanel(chart, false);
chartPanel.setBackground(null);
chartPanel.setFillZoomRectangle(true);
chartPanel.setMouseWheelEnabled(true);
chartPanel.setDismissDelay(Integer.MAX_VALUE);
chartPanel.setPreferredSize(new Dimension(500, 270));
setContentPane(chartPanel);
}
/**
* Returns a sample dataset.
*
* @return The dataset.
*/
private static CategoryDataset createDataset() {
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(7445, "JFreeSVG", "Warm-up");
dataset.addValue(24448, "Batik", "Warm-up");
dataset.addValue(4297, "JFreeSVG", "Test");
dataset.addValue(21022, "Batik", "Test");
return dataset;
}
/**
* Creates a sample chart.
*
* @param dataset the dataset.
*
* @return The chart.
*/
private static JFreeChart createChart(CategoryDataset dataset) {
JFreeChart chart = ChartFactory.createBarChart(
"Performance: JFreeSVG vs Batik", null /* x-axis label*/,
"Milliseconds" /* y-axis label */, dataset);
chart.addSubtitle(new TextTitle("Time to generate 1000 charts in SVG "
+ "format (lower bars = better performance)"));
chart.setBackgroundPaint(null);
CategoryPlot plot = (CategoryPlot) chart.getPlot();
plot.setBackgroundPaint(null);
// ******************************************************************
// More than 150 demo applications are included with the JFreeChart
// Developer Guide...for more information, see:
//
// > http://www.object-refinery.com/jfreechart/guide.html
//
// ******************************************************************
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
BarRenderer renderer = (BarRenderer) plot.getRenderer();
renderer.setDrawBarOutline(false);
chart.getLegend().setFrame(BlockBorder.NONE);
return chart;
}
/**
* Starting point for the demonstration application.
*
* @param args ignored.
*/
public static void main(String[] args) {
BarChartDemo demo = new BarChartDemo("JFreeChart: BarChartDemo1.java");
demo.pack();
RefineryUtilities.centerFrameOnScreen(demo);
demo.setVisible(true);
}
}
我可以在项目中右键单击此文件并运行它以获取以下内容:
我花了几个小时来解决这个问题,终于让它起作用了
您必须下载.jar文件
您可以从JFreeChart网站下载压缩文件
下面给出了两个文件的链接
你好。谢谢你。回答得很好。似乎我缺少的是解压下载并在未下载的文件夹中找到.jar文件-我试图直接添加.zip文件。我现在让它工作了。谢谢