Gudmundur A. Thorisson wrote:
> Hi David. This is very cool stuff, precisely what I was looking for 
> for my work. I was half-way through with an ugly-looking hierarchical 
> thing within one of my lenses, but having the hierarchy in the facet 
> itself is much nicer and more powerful!
Hi Gudmundur, good to hear that :) Then you can help me test my code!

>   My application is somewhat analogous to the ant taxonomy: I have a 
> collection of items which represent methods for measuring human 
> phenotype properties (or traits), usually disease in biomedical 
> studies,  but could be things like height and weight. For a given 
> property there might be several ways of measuring or ascertaining it, 
> say 2x research groups studying the genetic basis of Alzheimer disease 
> using different clinical criteria, or different devices/conditions for 
> measuring blood pressure.
>   Anyway, the point is that the phenotype properties are categorized 
> and I want to enable filtering of my collection of phenotype methods 
> based on those categories. Examples: Alzheimers disease is a 
> neuro-degenerative disease and so is Parkinsons disease, and prostate 
> and breast cancer both fall in the category of 'cancer'. I was able to 
> make this work in a facet for filtering  the methods, but only after 
> artificially tagging each method with both the property itself AND the 
> root-level property (see json data below). The problem was that if 
> there is no method linked to a given property directly (like 'cancer' 
> ) it will not show up in the facet. This solution does come with a 
> caveat, however: if I want to show the PhenotypeProperty property in a 
> table or lens, the methods each have 2x values :!   See attached 
> screenshot.
So I presume my code does what you want in this case? Have you tried to 
remove "Eye disease" from the "amdstat" item and see if "Eye disease" 
still has a count of 2 in the facet?

>   Alternatively, I got the intended result without the trick above IF 
> I made my view show the actual properties themselves (i.e. the facet 
> expression was 'value'). But the tabular view and other views I want 
> to make are in fact based on the method items themselves so this 
> solution makes certain things difficult.
Let's keep the view you want and make the facet cooperate. I understand 
that some parts of Exhibit are still not expressive/powerful enough that 
sometimes you have to use tricks to get around them. Please do let me 
know and we'll try to figure it out.

>   Comparing this with your photo example: it's as if you didn't have 
> any photos tagged with 'nature' directly, but would still like to see 
> the 'nature' root node in your tree. 
Correct. In the JSON file
    
http://mire.environmentalchange.net/~webmaster/HierarchicalFacets/data.json
the photo "Storm over the Chocolate Hills" is only tagged with "hill", 
but it still counts toward "landscape" and "nature".

> Is there any way to somehow make the hierarchical facet aware of 
> 'unused'  tags, and display them in the tree as well? Or would that 
> fundamentally break things ? Some way to state in the facet-config 
> that I want to use all of the interlinked items in collection X 
> (properties) to filter the items in collection Y (methods)?
I see... you mean you want to show the whole tree of properties whether 
or not each node has any associated method. So, you will get a lot of 
zero counts once you start filtering other facets. This is certainly 
doable. But I'd like to understand more your motivation for wanting to 
see those zero counts. Is it so that the facet doesn't change too much, 
causing you to lose visual context?

>   BTW I suppose one ugly workaround is to create a collection of dummy 
> method items tagged with  each of missing root tags, and thereby force 
> these tags to be added to the facet to get the indended effect. But 
> then I'm stuck with these extra unwanted items in my collection!
David

_______________________________________________
General mailing list
[email protected]
http://simile.mit.edu/mailman/listinfo/general

Reply via email to