Skip to content
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

Ordering by value not accurate enough #39

Open
Krukarius opened this issue Nov 21, 2019 · 4 comments
Open

Ordering by value not accurate enough #39

Krukarius opened this issue Nov 21, 2019 · 4 comments

Comments

@Krukarius
Copy link

I have some values such a:

43

12
5
11
16
18
51

when sorted by table, I got:

11
12
16
18
18
43
5
51

Could you tell me where can I fix the code and make these values in right order?

@deltamualpha
Copy link
Contributor

That comes in from the Sheetsee.js dependency; https://github.com/jlord/sheetsee-tables/blob/master/index.js#L20 looks to be your point of interest. It's doing a ASCIIbetical sort.

@Krukarius
Copy link
Author

Hi,

I tried twice the example https://github.com/jlord/sheetsee-tables/blob/master/index.js#L20, but I see no reaction at all.

The code, coming from there feature only ShowInfo function, which is the same in your project.
I entered sheetsee.js and found possibly relevant stuff inside:

1506 line: var sortable = []
for (var category in count) {
sortable.push([category, count[category]])
}
sortable.sort(function(a, b) {return b[1] - a[1]})
return sortable
// returns array of arrays, in order
}

7905 line:
queue.sort(function (a, b) {
return a.distanceTo(center) - b.distanceTo(center);
});

16138 line:

module.exports.sortThings = sortThings
function sortThings(opts, sorter, sorted, tableDiv) {
if (opts.tableDiv != tableDiv) return
opts.data.sort(function(a,b){
if (a[sorter]<b[sorter]) return -1
if (a[sorter]>b[sorter]) return 1
return 0
})
if (sorted === "descending") opts.data.reverse()
makeTable(opts)
var header
$(tableDiv + " .tHeader").each(function(i, el){
var contents = resolveDataTitle($(el).text())
if (contents === sorter) header = el
})
$(header).attr("data-sorted", sorted)
}

Any advice cordially appreciated! Thank you

@deltamualpha
Copy link
Contributor

@Krukarius hack-spots isn't my project; I just used to use it for a site (i've since rewritten it to not use sheetsee.js since I didn't need most of its functionality).

The sheetsee.js in this repository is a compiled, minified version of the one that I linked to above. If you want to modify it, you should fork sheetsee-tables, make your changes, compile+minify a version that has the sorting you want, then add it to your fork of hack-spots.

@Krukarius
Copy link
Author

Krukarius commented Nov 27, 2019

OK, thanks. So in this event maybe someone else can advise?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants
@deltamualpha @Krukarius and others