Visualization

From Hegemon Wiki
Revision as of 08:23, 4 March 2017 by H3g3m0n (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
  • Probably in Rust.
  • Reactive/functional.
    • When Data is changed the graph gets updated.
    • Instead of data, can plot can be defined by a function that changes at runtime. Data is really just a mapping function anyway.
    • Pub/sub? Channels?
    • Can I put in a fixed value without having to manually wrap it?
      • Rust generics?
    • What about passing things up the hierarchy? ie, graph size changes, the axis size need to change too...
    • Can the number of dimensions change?
    • What about animating the changes (interpolation function between old and new)? Animation itself can be a function. How fast? Linear, quadratic? 'Fade' vs more elaborate things like 'morphing' eg a scatter plots that moves the dots, or text that changes?
    • Wouldn't just be for fixed data, could be interpolating between 2 functions while they are still being updated.
  • Basic things like the Axis themselves can be functions.
    • Axis size/position.
    • Number of 'nodes' that show numbers and such. Mark a point every 10? Split up based on the length and put a point every 1/5th. Function to generate text? Function that defines points?
  • 2D and 3D?
    • When to extrude a 2D graph in 3D space.
      • A bar chart could be flat or have thickness.
      • A function could become a surface.
  • How to deal with data that defines the plot points, vs plot points based on the graph.
    • For example a scatter plot vs pixel plot of a continuous function.
    • When you zoom in on the continious pixel one, you increase the resolution.
    • Zooming in on the scatter plot 'might' increase the size of the points or not.
    • A continuous function could wrap a scatter plot style one, but it would be a pain
      • Would have to define circle points as a formula across the data.
      • Would loose metadata about the points.
      • Would be very inefficient as you would have to scan across the whole plotting canvas.
    • What about a function that is 'continuous' (in a non-mathematical sense) but with gaps.
      • A scatter plot of graphs?
      • Can points on a scatter plot have sizes, width/height/depth in general.
  • What about allowing data to be modified by dragging points on the graph around?
  • Non-square graphs
    • eg, Polar graphs
  • Complex numbers?
  • Are the things that we draw on the 'points' on a scatter plot returned by a function (ie a circle, a triangle?). They could be small 'graphs' themselves. Ie a circle.
  • Different things should be graphical 'objects' or 'graph elements'. A circle when zoomed in shouldn't pixelate. But a bitmap of a circle would. Same kind of thing with a line.
  • How do we get the resolution of things like lines and circles? What about in 3d?
  • Line widths for things like axis? Could be a function itself. Could be animated.
  • Color as a function. Could be animated. Could be for a specific position along a line. A specific point in a scatter plot.
  • Plotting things could return a 'graph elements'.
    • Ie a bitmap, line, circle, etc...
    • Plotting an array could return 'points'.
    • Points could be interperated as a bunch of circles, a line, a smooth line (a bezier curve, function fitted to points).
  • What about 4D/5D/etc...
  • What about plots that are 'distorted', for example a function in a torus?

Misc