javafx - 如何增加 JavaFX PieChart 的半径
问题描述
我想增加 JavaFX 饼图的半径,因为默认尺寸呈现的图表太小。我知道(来自@ItachiUchiha 4 年前发布的答案)不可能通过如下调用直接操纵饼图的尺寸:
piechart = new PieChart(pieChartData);
piechart.setPrefHeight(600); // no effect
piechart.setPrefWidth(600); // no effect
@ItachiUchiha 发布的答案建议使用 Region 的实例,实际上以下确实实现了这一点:
Region region = new Region();
region.setMaxHeight(600);
region.setMaxWidth(600);
region.setPrefHeight(600);
region.setPrefWidth(600);
region.setMinHeight(600);
region.setMinWidth(600);
但是我无法将饼图放入 Region 的实例中。直觉上我试过:
region.getChildren().add(piechart);
and
Region region = new Region(piechart);
但这些在语法上是错误的。
我知道饼图正在正确呈现数据,因为它在代码中显示正常:
detailPane.getChildren().add(piechart);
piechart.setVisible(true);
但这只是使用其默认半径呈现饼图。如何将饼图“链接”到 Region 的实例并根据需要调整其大小?
解决方案
我似乎通过在样式表中添加以下内容通过 .css 解决了这个问题:
.chart {
-fx-pref-width: 916;
-fx-pref-height: 620;
-fx-min-width: 916;
-fx-min-height: 620;
-fx-max-width: 916;
-fx-max-height: 620;
}
.chart-content {
-fx-padding: 20px;
}
图表尺寸与右侧拆分窗格的锚窗格大小完全匹配。结果是一个大小非常合适且比例合理的饼图,正好位于窗格的中心。
推荐阅读
- python - 熊猫输出到 json
- javascript - 我正在返回渲染,但问题仍然存在
- django - 我需要访问一个外键元素来填充 ModelForm
- sling - 如何在 Composum 平台上公开网站
- c++ - Poco 的 Path current() 没有返回 C++ 中的当前工作目录
- quarkus - 如何发布基于表单的身份验证
- java - 我如何在 android 中具有 xy 位置的图像上制作可移动的 perticuler 点?
- java - 在方法中初始化局部变量
- spring-boot - Openshift 容器运行状况探测连接被拒绝
- ubuntu - 通过SSH,Ubuntu 20.04(Focal)“无法获得引用控制台的文件描述符”