小编um8*_*8ra的帖子

具有自定义日期时间/时间戳值的 Bokeh FixedTicker

目标:我只想在 2017/10/2 和 2017/10/5 在 x 轴上有刻度线。一个限制是我的时间不能保证均匀分开,因此转换为字符串并执行分类轴是不可能的。它们需要是数字/日期时间。

问题:我不确定如何正确设置所需日期的格式,以便 Bokeh 正确呈现它们。我试过除以 10 ** 9 等以转换为毫秒。这没有奏效。

示例代码:

from bokeh.plotting import figure, show
from bokeh.models import FixedTicker
import pandas as pd
import numpy as np

y = list(range(3))
x = [pd.Timestamp('2017-10-01'), pd.Timestamp('2017-10-09'), pd.Timestamp('2017-10-10')]

tick_vals = pd.Series([pd.Timestamp('2017-10-02'), 
                       pd.Timestamp('2017-10-05')]).astype(np.int64)
tick_vals = tick_vals
tick_vals = tick_vals.astype(float)

fig = figure(x_axis_type='datetime')
fig.line(x, y, y_range_name=None)
fig.xaxis.ticker = FixedTicker(ticks=list(tick_vals)) # Commenting this line works okay using the x values. They are properly formatted.

show(fig)
Run Code Online (Sandbox Code Playgroud)

版本:散景:0.12.9 熊猫:0.20.3 Python:3.5.4 Numpy:1.13.3

python pandas bokeh

5
推荐指数
1
解决办法
2887
查看次数

使用 twinx 绘制熊猫图

我正在尝试使用 Pandas matplotlib API 在同一个图形上绘制条形图和线图。然而,进展并不顺利。我正在使用 twinx() 这似乎是实现这一目标的普遍接受的方式。

请注意,这是在 Jupyter Notebook 中完成的,绘图显示为内联。感谢您的帮助!

fig0, ax0 = matplotlib.pyplot.subplots()
ax1 = ax0.twinx()

trend_df_hours.plot(kind='bar', stacked=True, color=color_list, ax=ax0)
trend_df_qty.plot(kind='line', secondary_y=True, ax=ax1)
matplotlib.pyplot.show()
matplotlib.pyplot.close()
Run Code Online (Sandbox Code Playgroud)

python plot matplotlib pandas

2
推荐指数
1
解决办法
5843
查看次数

标签 统计

pandas ×2

python ×2

bokeh ×1

matplotlib ×1

plot ×1