我将在python中使用nvd3来构建一个线条图。代码如下:
from nvd3 import lineChart
chart = lineChart(name="lineChart", x_is_date=True, x_axis_format="%Y")
xdata = [599644800000,694252800000,788947200000,883641600000,1167638400000,1199174400000,1230796800000,1262332800000,1357027200000]
ydata = [26.2, 22.4, 17.7, 14.8, 9.29, 8.08, 7.48, 6.96, 5.5]
extra_serie = {"tooltip": {"y_start": "There are ", "y_end": " calls"}}
chart.add_serie(y=ydata, x=xdata, name='Current Smokers ', extra=extra_serie, **kwargs1)
chart
我有三个问题:
我没有在Python中使用NVD3,但是我可以指出使用JavaScript库是如何实现的。以下是你问题的答案。在
默认情况下,NVD3会根据图表宽度减少图表中呈现的刻度数。在
a)在图表X轴上显示更多刻度的一种方法是增加图表的宽度。也许不是最好的方法,但它是有效的。在
chart = lineChart(..., width="500")
。在b)另一种方法是定义要在图表上显示的点,并将其作为数组传递给图表。Check line 29 here。在
chart.xAxis.tickValues(tickArr);
请记住,刻度标签可能会重叠,这取决于图表的宽度和您试图在图表中显示的数量
当呈现时,在记号的末尾附加
%
。在您可以按原样传递日期
e.g: 1998-02-11
有关date & time parsing here的更多信息希望这对你有帮助。在
相关问题 更多 >
编程相关推荐