disable charts
This commit is contained in:
@@ -94,12 +94,6 @@
|
|||||||
<version>1.3.40</version>
|
<version>1.3.40</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<!-- JFreeChart for charts -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.jfree</groupId>
|
|
||||||
<artifactId>jfreechart</artifactId>
|
|
||||||
<version>1.5.4</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- MinIO for object storage -->
|
<!-- MinIO for object storage -->
|
||||||
<dependency>
|
<dependency>
|
||||||
|
|||||||
@@ -5,11 +5,6 @@ import kz.konturai.parser.model.MarketItem;
|
|||||||
import kz.konturai.parser.repository.MarketItemRepository;
|
import kz.konturai.parser.repository.MarketItemRepository;
|
||||||
import kz.konturai.parser.model.ReportHistory;
|
import kz.konturai.parser.model.ReportHistory;
|
||||||
import kz.konturai.parser.repository.ReportHistoryRepository;
|
import kz.konturai.parser.repository.ReportHistoryRepository;
|
||||||
import org.jfree.chart.ChartFactory;
|
|
||||||
import org.jfree.chart.JFreeChart;
|
|
||||||
import org.jfree.chart.encoders.EncoderUtil;
|
|
||||||
import org.jfree.chart.encoders.ImageFormat;
|
|
||||||
import org.jfree.data.general.DefaultPieDataset;
|
|
||||||
import org.springframework.http.MediaType;
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.apache.poi.xwpf.usermodel.XWPFDocument;
|
import org.apache.poi.xwpf.usermodel.XWPFDocument;
|
||||||
@@ -325,30 +320,9 @@ public class ReportGenerationService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private byte[] buildSentimentChart(Map<String, Long> sentiment) {
|
private byte[] buildSentimentChart(Map<String, Long> sentiment) {
|
||||||
try {
|
// Disable chart generation in Docker to avoid font library issues
|
||||||
// Disable font rendering to avoid Docker font issues
|
// Return null to skip chart insertion
|
||||||
System.setProperty("java.awt.headless", "true");
|
return null;
|
||||||
|
|
||||||
DefaultPieDataset<String> dataset = new DefaultPieDataset<>();
|
|
||||||
for (Map.Entry<String, Long> e : sentiment.entrySet()) {
|
|
||||||
dataset.setValue(e.getKey(), e.getValue());
|
|
||||||
}
|
|
||||||
|
|
||||||
JFreeChart chart = ChartFactory.createPieChart("Sentiment", dataset, true, false, false);
|
|
||||||
|
|
||||||
// Create buffered image with headless graphics
|
|
||||||
java.awt.image.BufferedImage image = new java.awt.image.BufferedImage(800, 500,
|
|
||||||
java.awt.image.BufferedImage.TYPE_INT_RGB);
|
|
||||||
java.awt.Graphics2D g2d = image.createGraphics();
|
|
||||||
g2d.setRenderingHint(java.awt.RenderingHints.KEY_ANTIALIASING, java.awt.RenderingHints.VALUE_ANTIALIAS_ON);
|
|
||||||
chart.draw(g2d, new java.awt.geom.Rectangle2D.Double(0, 0, 800, 500));
|
|
||||||
g2d.dispose();
|
|
||||||
|
|
||||||
return EncoderUtil.encode(image, ImageFormat.PNG);
|
|
||||||
} catch (Exception ex) {
|
|
||||||
// Return null if chart generation fails
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private Map<String, Long> collectEntityFreq(List<MarketItem> items, String key) {
|
private Map<String, Long> collectEntityFreq(List<MarketItem> items, String key) {
|
||||||
|
|||||||
Reference in New Issue
Block a user