【问题标题】:Androidplot: Create a square plot areaAndroidplot:创建一个正方形的绘图区域
【发布时间】:2016-04-04 10:20:57
【问题描述】:

在 Androidplot 中,我需要创建一个正方形的绘图区域。即实际绘图区域而不是图形区域。这是为了使两个轴上的比例相同,即 x 轴上两个网格点之间的距离与 y 轴相同。我希望这是有道理的。

在 Androidplot 中,我可以使用以下方法设置图形区域大小:

    final Size sm = new Size(900, SizeLayoutType.ABSOLUTE, 900, SizeLayoutType.ABSOLUTE);
    myPositionLines.getGraphWidget().setSize(sm);

但是我如何确保情节区域也出现“方形”。我已确保所有边距/填充都设置为零...

会有这样的东西吗... myPlot.setPlotSize()...

请帮忙!

【问题讨论】:

    标签: android androidplot


    【解决方案1】:

    这里涉及到几个因素。正如您所指出的,绘图(Android 放置的实际 View 元素)和图形小部件(绘图视图内部的区域,直观地表示绘图的图形部分)之间存在差异。

    听起来您已经涵盖了视图部分,所以我将只关注图形小部件部分。您需要做的第一件事是在绘图内设置图形小部件的大小和方向。查看Styling Your Plot doc 的 X/Y 定位小部件和尺寸小部件部分。您可以通过调用plot.getGraphWidget() 来获取图形小部件的句柄。

    下一步是决定如何细分图形区域进行绘制;这决定了有多少行可见以及沿域或范围轴的每个刻度代表多少个单位。你可以通过设置界限来做到这一点。例如:

    plot.setDomainBoundaries(0, 10, BoundaryMode.FIXED);
    plot.setRangeBoundaries(0, 0, BoundaryMode.FIXED);
    

    这会将图形区域细分为一个 10x10 的网格。 BoundaryMode.FIXED 部分告诉 Androidplot 不要自动框出正在绘制的数据,默认情况下它会尝试这样做。

    【讨论】:

    • 谢谢尼克。这确实主要回答了这个问题,但是当我在上面的问题中引用绘图区域时,我的意思是绘图轴内的区域。需要明确的是,有绘图区域,其中是图形区域(小部件),其中是由绘图轴限定的区域。我正在寻找的是在轴内的区域,正方形。目前我正在调整 graphwidget 的底部填充,因为这与默认情况下的左侧填充不同。
    猜你喜欢
    • 2018-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多