Closed touretzkyds closed 3 years ago
The actual values in the text boxes should be the words we're currently using for gender, not the five pairs listed above, which were just an example. Also, 12 lines might not be enough; perhaps we should leave room for 16 lines.
I have added the first draft of custom user defined features without error checking yet. I'm not happy with the state of the code as it is getting messier (potentially hiding bugs) so I think a big refactor is in order. I will post the code to Code Review Stack Exchange (I think the code should be licensed GPLv3 but anyhow it is free software) to get input from more experienced users.
The final feature we need for this demo is to allow for user-defined semantic dimensions to replace the hard-coded age and gender vectors. Here's how this should work:
There should be another accordion fold-out panel for the semantic dimensions. Like the vector artihmetic panel, it should initially be hidden.
The panel should be labeled "Semantic Dimensions" and divided into two halves. The left half should be labeled "First Dimension" and the right half should be labeled "Second Dimension".
Each half begins with a text box labeled "Dimension Name".
Below the name are two large text boxes side by side, each with room to hold a dozen words, one per line. I want to use two large text boxes instead of lots of little boxes so the user can easily cut and paste an entire list of words.
The left half of the panel should be pre-populated with information for "gender", e.g., the Dmension Name should be "gender", and the first text box should contain a list of male words such as "man, father, brother, husband, king". The second text box should contain the corresponding female words: "woman, mother, sister, wife, queen".
Similarly, the right half of the display should be devoted to the "age" dimension,
When the user changes the dimension names, this should be reflected in the axis labels of the 3D plot, and the buttons that will be added for displaying the vectors for each semantic dimension.