Seeking philosophical guidance on library interface design

Alex Tweedly alex at tweedly.net
Thu Apr 25 21:06:59 EDT 2019


On 26/04/2019 00:27, Quentin Long via use-livecode wrote:
> Hmmm… Seems like this library is intended for a summat limited subset of graph-styles. There are pie charts, radar charts, etc ad nauseum, and it's not clear to me how this library caan cope with any of those "non-standard" types of graph. As well, it's unclear to me how this library will deal with funky axis-styles (logarithmic?).

Yes, it is indeed, quite deliberately, limited in its aims.

If I tried to tackle the huge range of possible graph types, then I 
would never have thought it was a feasible project for a time-limited 
hobbyist - and there would be no library at all :-)

The library will, very loosely, define a flavour of interface - and 
anyone who wishes to cover some of those other graph styles could decide 
whether that can be done within that overall flavour, and then do such 
an extension. Personally, I have had a number of little apps I've done 
over the last 10-15 years (since I stopped being a software developer 
and became a software hobbyist) that have used some flavour of XY graph, 
maybe one or two that used a pie-chart - and none that wanted to use any 
of the other millions of chart types. So naturally that's what my target is.

There's no reason (afaict) why it shouldn't handle some funky axis 
types  - logarithmic should be easy, non-rectilinear less easy. (And 
anything involving a time-axis is way beyond the scope).

> Am *not* suggesting that the library must, or even should, be able to handle *every* graph-style that might conceivably be thrown at it—that way lies madness. Just thinking that it might be good to include, in the documentation, a prominent, clear statement of What This Library Can And Cannot Do, to manage user expectations.
>
I thought it did :-)

The first line of my enclosed description said:

" ... or more sets of data plotted as an XY graph."

I don't say that it (does or will) cover *every* kind of graph that 
could be described as "XY graph", but I think it's a good approximation. 
Many of the others (pie, radar, polar, box+whisker, violin, etc.) would 
not be described as "XY graph". OK - there are maybe some dubious ones - 
is a bubble chart an XY graph?

If there's a different description that would be clearer, I'd be happy 
to add that.

Thanks

Alex.







More information about the Use-livecode mailing list