我想创建LineChartReport使用超过1000个数据点。问题在于X轴应该显示时间戳,并且由于数据点太多,数据会重叠,并且不会显示可理解的数据。因此,我需要以下两点的帮助: 1.将X轴上的数据点(仅限于)限制为25.图形/图表的数据点数仍为1000 2.将时间戳数据旋转90度,以便Timestamp数据被正确记录并且不被截断。DynamicReport - 如何绘制太多的数据点
Have tried to get the domain axis and manipulate it, like this, but the library does not allow that:
CategoryAxis domainAxis = chart.getCategoryPlot().getDomainAxis();
domainAxis.setMinorTickMarksVisible(false);
domainAxis.clearCategoryLabelToolTips();
chart.getCategoryPlot().getDataset().getColumnKeys()
CategoryDataset ds = chart.getCategoryPlot().getDataset();
List ls = ds.getColumnKeys();
List ls2 = new ArrayList();
int i = 0;
for (Iterator it = ls.iterator(); it.hasNext();) {
it.next();
if (i % 2 != 0) {
ls2.add(ls.get(i));
}
i++;
}
chart.getCategoryPlot().setDataset(ds);
Sample image with 10 data points appear here: https://drive.google.com/drive/u/0/folders/0B-m6SCJULOTRdHZ6cUwxX041SHM
Any suggestions ??
嗨,旋转的东西工作。但我需要在一天内(也许每隔5秒)绘制收集的数据。有了50个数据点,X轴看起来像这样:https://drive.google.com/open?id=0B-m6SCJULOTRUzVERVJwYllTY0E有了1000个数据点,它变得一团糟。我只需要显示小时值,例如12:00,01:00,02:00等,而不是所有的时间戳。 – SuDu
如果您不希望数据中有1000个点,那么只需在数据源中输入所需的点。你需要操纵你的数据源。 – Laurence
嗯..我需要1000s的数据点。我不需要显示所有的X轴值。只需要显示其中的一些。在gdrive的例子中,如果我们可以将X轴项目限制为10,但仍然具有全部50个数据点,那将是非常好的。 – SuDu