我正在JavaFX中创建折线图.目前一切都很好,并且它成功地从数据库存储过程创建了我需要的数据图表.无论如何,如果可能,我需要的是LineChart上的每个数据点都有一个鼠标悬停事件,它指出特定点背后的值,例如£150,000.我已经看到在PieCharts上完成了这个例子,它显示了悬停时的%值,但我找不到LineCharts的任何示例,这甚至可以做到吗?
如果可能,有人能指出我正确的方向吗?
代码到目前为止:
private static final String MINIMIZED = "MINIMIZED";
private static final String MAXIMIZED = "MAXIMIZED";
private static String chartState = MINIMIZED;
// 12 Month Sales Chart
XYChart.Series<String, Number> series = new XYChart.Series<>();
XYChart.Series<String, Number> series2 = new XYChart.Series<>();
public void getDeltaData() {
try {
Connection con = DriverManager.getConnection(connectionUrl);
//Get all records from table
String SQL = "";
Statement stmt = con.createStatement();
//Create the result set from query execution.
ResultSet rs = stmt.executeQuery(SQL);
while (rs.next()) {
series.getData().add(new XYChart.Data<String, Number>(rs.getString(1), …Run Code Online (Sandbox Code Playgroud) 从这个代码我可以生成10条现在的条形图现在我想知道如何在条形图上显示每个条形的值,如附加图像:
这是代码:
public class BarChartSample extends Application {
@Override public void start(Stage stage) {
stage.setTitle("Bar Chart Sample");
final CategoryAxis xAxis = new CategoryAxis();
final NumberAxis yAxis = new NumberAxis();
final BarChart<String,Number> bc =
new BarChart<String,Number>(xAxis,yAxis);
bc.setTitle("Country Summary");
xAxis.setLabel("bars");
yAxis.setLabel("Value");
XYChart.Series series1 = new XYChart.Series();
series1.setName("...");
for(int i=0;i<10;i++)
{
//here i want to change color of bar if value of i is >5 than red if i>8 than blue
series1.getData().add(new XYChart.Data("Value", i));
}
}
public static void main(String[] args) {
launch(args); …Run Code Online (Sandbox Code Playgroud)