New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sorting linked DataTables messed up in Bokeh 0.12.16 #7924

Closed
stcoats opened this Issue May 22, 2018 · 2 comments

Comments

Projects
None yet
3 participants
@stcoats
Copy link

stcoats commented May 22, 2018

Two DataTable widgets rendered from the same source don't behave as expected in bokeh 0.12.16

from random import randint

from bokeh.io import output_file, show
from bokeh.layouts import widgetbox, gridplot, row, column
from bokeh.models import ColumnDataSource
from bokeh.models.widgets import DataTable, DateFormatter, TableColumn
from bokeh.plotting import figure

output_file("data_table.html")

data = dict(
    x=[randint(0, 100) for i in range(10)],
    y=[randint(0, 100) for i in range(10)],
    words = ["the","of","and","to","is","on","dog","when","France","lift"]
)
source = ColumnDataSource(data)

columns = [
    TableColumn(field="x", title="x"),
    TableColumn(field="words", title="Words"),
]
columns2 = [
    TableColumn(field="y", title="y"),
    TableColumn(field="words", title="Words"),
]

TOOLS = "pan,wheel_zoom,box_select,reset"
fig1 = figure(plot_width=200, plot_height=200, tools=TOOLS)
fig1.circle('x', 'y', source=source,size=10,selection_color="red", hover_color="green")
fig2 = figure(plot_width=200, plot_height=200, tools=TOOLS)
fig2.circle('x', 'y', source=source,size=10,selection_color="red", hover_color="green")


data_table1= DataTable(source=source, columns=columns, width=200, height=200)
data_table2= DataTable(source=source, columns=columns, width=200, height=200)

p = gridplot([[fig1,fig2],[data_table1,data_table2]],
                        toolbar_location = "above")
tot =row(p)
show(column(tot))

The first image is from 0.12.15. As expected, clicking on a row in the first DataTable highlights the corresponding row in the second DataTable, which has been sorted reverse alphabetically.

The second image is from 0.12.16. The corresponding row is not highlighted in the second DataTable, and although the second DataTable was sorted reverse alphabetically, upon clicking a row in DataTable1, DataTable2 reverts to its initial sorting.
bokeh_0 12 15
bokeh_0 12 16

This is using Python 3.6.3 in Centos 7 and Firefox 52.5.1 (64-bit).

@bryevdv

This comment has been minimized.

Copy link
Member

bryevdv commented May 23, 2018

Hi @stcoats thanks for the report. The core devs are pretty over-tasked right now. It would be a huge help if you could narrow down when this bug was introduced by installing and trying out different dev builds:

http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds

We are looking to find out the first dev build that doesn't work. That will make doing a real bisection later much easier.

@mattpap

This comment has been minimized.

Copy link
Contributor

mattpap commented May 25, 2018

This is caused by PR #7818, similarly to issue #7891.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment