我正在尝试使用 matplotlib 和 mpld3 绘制东西。这是我用来生成图表的代码:
_fig = plt.figure()
_pl = _fig.add_subplot(111)
_pl.plot(_times, _values)
_pl.set_xlabel("Time")
_pl.set_ylabel("Value")
_pl.tick_params(direction="out", axis="both", colors="white", which="both")
_pl.xaxis.label.set_color("white")
_pl.yaxis.label.set_color("white")
_data = mpld3.fig_to_html(_fig)
.... send to client to be rendered
创建了一个图表,所有的动态控件都工作了。“时间”和“值”标签以白色打印,但刻度标签以黑色打印。
如果我跳过 mpld3 并使用 plt.show() 对其进行测试,所有刻度标签都会以白色打印。当我检查 mpld3 生成的 javascript 代码时,我似乎没有检测到刻度标签的颜色设置。
如果我在 tick_params 中使用另一个参数,比如字体大小,它确实有效果。只有颜色会被忽略,这会导致标签在深蓝色背景上以黑色打印。
我该如何改变?
编辑:
在检查实际呈现的页面时,似乎有一个“填充”属性决定了颜色。
div#fig_el249691400950908834083380374260 .mpld3-xaxis text
{font-family:sans-serif; font-size:10px; fill:black; stroke:none; }
我尝试在 css 中覆盖它,但我不知道该怎么做。这似乎覆盖了我在其他地方设置的任何内容。似乎 mpld3 设置了刻度标签的颜色,但我该如何修改呢?
汉努