使用圆形功能时不显示负值

时间:2019-07-08 19:31:08

标签: python pandas plot pandas-bokeh

当我使用bokeh s circle (or diamond_cross`函数和line函数时,会得到两个不同的结果。线函数包含负值,而圆不包含负值。

用线绘制 enter image description here 和一个使用diamond_cross的情节 enter image description here

我想绘制一段时间内某个地方的温度。我有很多价值观,因此我想通过散景制作散点图。

使用x函数时,我也会遇到同样的问题。

在下面的代码中,您可以使用行更改diamond_cross并删除fill_alpha和size,然后您可能还会得到两个不同的图形。

import pandas as pd
import numpy as np
import bokeh as bk
import scipy.special

from bokeh.plotting import figure, output_file, show
from bokeh.models import ColumnDataSource
from bokeh.models.tools import HoverTool
from bokeh.models.glyphs import Quad
from bokeh.layouts import gridplot


df = pd.read_csv('KNMI2.csv', sep=';',
                    usecols= ['YYYYMMDD','Techt', 'YYYY', 'MM', 'D'])


jan= df[df['MM'].isin(['1'])]

source_jan = ColumnDataSource(jan)


p = figure(plot_width = 800, plot_height = 800,
           x_range=(0,32), y_range=(-20,20))
p.diamond_cross(x='D', y='Techt', source=source_jan,
         fill_alpha=0.2, size=2)
p.title.text = 'Temperatuur per uur vanaf 1951 tot 2019'
p.xaxis.axis_label = 'januari'
p.yaxis.axis_label = 'Temperatuur (C)'
show(p)

如果circle / diamond_cross函数和直线函数的功能相同,则它们的图也将显示负值。

1 个答案:

答案 0 :(得分:0)

我有一个类似的问题,我试图绘制的变量的数据类型是字符串而不是整数。

尝试使用

jan = df[df['MM'].isin(['1'])]
jan['Techt'] = jan['Techt'].astype(int)
source_jan = ColumnDataSource(jan)