【问题标题】:Make a line graph without labels制作没有标签的折线图
【发布时间】:2019-09-02 07:24:15
【问题描述】:

我正在制作一个股票市场游戏,其中应用程序会在互联网上搜索不同的股票。我在网上看到了一个股票游戏的想法,[我不拥有这张图片]:

https://dribbble.com/shots/4161894-Invest-App-UI-Dark-Version

右图有微小的折线图,用于显示基于该股票先前价值的股票价值变化。

我想知道是否有一种方法可以简单地制作一个折线图,该折线图可以使用 java.lang.我不希望它是一个完整的图表,带有标签和 X 和 Y 标记,我只希望线条本身存在

我尝试过使用 JavaFX 折线图,但它的背景、标签和其他数字是我不想要的。

【问题讨论】:

  • @too_broad_sayers 如果您对 JavaFX 有所了解,那么您会意识到这个问题与beeing 过于宽泛相反。相反,它涉及一个真正的 API 问题,值得讨论。

标签: java user-interface javafx graph linegraph


【解决方案1】:

基本上,图表由许多部分组成(f.i. 轴、背景网格、图例、图表)。您的任务是配置所有状态,以便仅显示您想要的那些,在您的情况下(或多或少)仅显示图表。

令人惊讶的是,几乎所有内容都可以配置为可见或不可见 - 除了轴:这些必须手动从其父级中删除。

用于取消装饰 LineChart 的代码 sn-p:

protected void undecorate(LineChart chart) {
    chart.setLegendVisible(false);
    chart.setCreateSymbols(false);
    chart.setHorizontalGridLinesVisible(false);
    chart.setHorizontalZeroLineVisible(false);
    chart.setVerticalGridLinesVisible(false);
    chart.setVerticalZeroLineVisible(false);
    undecorateAxis(chart.getXAxis());
    undecorateAxis(chart.getYAxis());
}

protected void undecorateAxis(Axis axis) {
    // trying to hide: not working
    // xAxis.setVisible(false);
    // configure all ticks/label to not visible doesn't work
    // if (axis instanceof ValueAxis)
    //    ((ValueAxis<?>) axis).setMinorTickVisible(false);
    // axis.setTickLabelsVisible(false);
    //axis.setTickMarkVisible(false);
    // remove from parent does work
    Pane parent = (Pane) axis.getParent();
    parent.getChildren().removeAll(axis);
}

【讨论】:

    猜你喜欢
    • 2020-08-17
    • 1970-01-01
    • 2014-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-04
    • 1970-01-01
    相关资源
    最近更新 更多