¿Es posible cambiar el color de la barra?Jfreechart: ¿Es posible cambiar el color de la barra?
He codificado un programa simple para contar.
Quiero implementar una cosa más: si el número de conteo es mayor que 200, use el color azul para dibujar la barra. Si no, use el color amarillo para hacerlo.
Actualmente, todo el color de la barra está en rojo.
Entonces, me gustaría preguntar, ¿es posible cambiar el color de la barra?
En caso afirmativo, ¿alguien me puede dar alguna guía para realizar?
¡Gracias de antemano!
adjunta es mi codificación:
<%@page contentType="text/html"%>
<%@page import="java.io.*" %>
<%@page import="java.sql.*" %>
<%@page import="org.jfree.data.category.*" %>
<%@page import="org.jfree.chart.*" %>
<%@page import="org.jfree.chart.plot.*" %>
<html>
<body>
<%
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
try
{
Class.forName("com.mysql.jdbc.Driver");
java.sql.Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/delivery","root","root");
Statement sta = con.createStatement();
ResultSet res = sta.executeQuery("SELECT inventory, subject from statistics");
int count;
String subject;
while (res.next())
{
count = res.getInt("inventory");
subject = res.getString("subject");
dataset.addValue(count,"enrollment count statistics", subject);
}
}
catch (Exception e) {
System.err.println(e.getMessage());
}
JFreeChart bar = ChartFactory.createBarChart("Enrollment Chart", "subject","Count",dataset, PlotOrientation.HORIZONTAL,true, false, false);
//BarRenderer renderer = (BarRenderer) bar.getCategoryPlot().getRenderer();
String fileName = "/bar.png";
String file = application.getRealPath("/") + fileName;
try
{
FileOutputStream fileOut = new FileOutputStream(file);
ChartUtilities.writeChartAsPNG(fileOut, bar, 300, 300);
}
catch (IOException e)
{
out.print(e);
}
%>
<img src="/delivery/bar.png" alt="subject Bar Chart" />
</body>
</html>
Este método no se puede utilizar para establecer el color de las barras dentro de una serie, que es lo que quiere lograr OP. Utilice [Respuesta de Stobor] (http://stackoverflow.com/a/4953004/720425) en su lugar –