From 245cdac475bf73d8f9a5b15e8dd2e14bee365e34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nikola=20=C5=A0ibali=C4=87?= Date: Thu, 1 Aug 2019 10:35:53 +0200 Subject: [PATCH] fix figures not showing with mix of upper and lower case variables Before naming variables with lower and upper case could cause them to be sorted in wrong order since Python sorts by default first upper case strings (AB...ab...), and then lower case strings, whereas order in JavaScript is aAbB... --- ifigures/interact.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ifigures/interact.py b/ifigures/interact.py index 339ea20..76d79b0 100644 --- a/ifigures/interact.py +++ b/ifigures/interact.py @@ -226,7 +226,8 @@ def _output_html(self): defaults = tuple([widget.default for widget in self.widgets.values()]) #Now reorder alphabetically by names so divnames match javascript - names,values,defaults = zip(*sorted(zip(names,values,defaults))) + names,values,defaults = zip(*sorted(zip(names,values,defaults), + key=lambda tup: tup[0].lower())) results = [self.function(**dict(zip(names, vals))) for vals in itertools.product(*values)]