2011-10-03 97 views
5

我想將使用JFreeChart創建的圖表的PNG嵌入到PDF文檔中。這裏的問題是,圖表的質量很差。我的目標是擁有300 DPI的PNG。我搜索了近一個小時,但我找不到解決方案。JFreeChart圖表質量更高

有沒有辦法將生成的圖表從JFreeCharts作爲PNG(或JPEG)以300 DPI導出?

+0

你如何導出圖表? – peshkira

+0

@peshkira目前與ChartUtilities.saveChartAsPNG(新文件(「/用戶/ myuser/test.png」),demo.getChart(),1000,1000);但我當然願意接受任何符合我的要求的建議:) –

+1

只需將它保存在更大的尺寸? 1000x1000應該爲您提供300dpi的3in x 3圖像。 – millimoose

回答

0

您可以使用XChart爲此,因爲出口Charts在某些DPI的高分辨率是自version 2.2.0以來的新功能。代碼看起來像這樣:

double[] xData = new double[] { 0.0, 1.0, 2.0 }; 
double[] yData = new double[] { 2.0, 1.0, 0.0 }; 

// Create Chart 
Chart chart = QuickChart.getChart("Sample Chart", "X", "Y", "y(x)", xData, yData); 

// Show it 
new SwingWrapper(chart).displayChart(); 

// Save it 
BitmapEncoder.savePNG(chart, "./Sample_Chart.png"); // default 72 DPI 
BitmapEncoder.savePNGWithDPI(chart, "./Sample_Chart_300_DPI.png", 300); 

聲明:我是XChart的首席開發人員。我最近面臨與你完全相同的問題。我需要300 DPI的圖表來發表科學出版物。歡迎反饋!

+0

謝謝herrtim,XCharts看起來很棒。我一定會考慮將它用於我的下一個項目。 –