【问题标题】:negative values not showing when using circle function使用圆形功能时不显示负值
【发布时间】:2019-11-18 08:32:51
【问题描述】:

当我使用 bokehs circle (ordiamond_cross` 函数)和 line 函数时,我得到了两个不同的结果。 line 函数包含负值,而 circle 不包含。

用线绘制 和一个带有 diamond_cross 的情节

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

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

在我下面的代码中,您可以使用 line 更改 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 函数与 line 函数的工作方式相同,则它们的图也将显示负值。

【问题讨论】:

  • 令人震惊的是,我也有同样的问题

标签: python pandas plot pandas-bokeh


【解决方案1】:

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

尝试使用

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-03
    • 2014-12-22
    • 2019-05-25
    • 2020-07-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多