示例#1
0
 /// <summary>
 /// Interval axis initializer.
 /// </summary>
 /// <param name="name">name of interval scaled attribute</param>
 /// <param name="max"></param>
 /// <param name="dir"></param>
 public void Init(IntervalAttributeStats m, AxisDirection dir = AxisDirection.Y)
 {
     Init(m as AttributeStats, dir);
     this.min    = m.min;
     this.max    = m.max;
     this.length = 1f;
     this.tipped = true;
     this.ticked = true;
     CalculateTickResolution();
     AssembleIntervalAxis(m);
 }
示例#2
0
        public static IntervalAttributeStats CalculateStats(IList <InfoObject> os, int aID, IDictionary <string, string> intervalTranslators)
        {
            var measures = new IntervalAttributeStats(
                CalculateDistribution(os, aID),
                os[0].ivlVALbyID[aID].name,
                intervalTranslators[os[0].ivlVALbyID[aID].name],
                CalculateMin(os, aID),
                CalculateMax(os, aID)
                );

            return(measures);
        }
示例#3
0
        // (TEMPLATE METHOD)
        protected override void GenerateIntervalTicks(IntervalAttributeStats m)
        {
            var tickDir = DefineTickDirection(axisDirection);

            // Draw ticks
            for (int i = m.min; i <= m.max; i++)
            {
                var tick = Services.instance.Factory2DPrimitives.CreateTick(true);
                tick.lr.SetPosition(1, tickDir * diameter * 4f);
                tick.SetDirection(axisDirection);
                tick.label.text = IntervalValueConverters.Translate(i, m.intervalTranslator);

                tick.transform.parent        = Anchor.transform;
                tick.transform.localPosition = direction * TransformToAxisSpace(i);
                ticks.Add(tick);
            }
        }
示例#4
0
 protected abstract void GenerateIntervalTicks(IntervalAttributeStats m);
示例#5
0
 // (HELPER METHOD)
 private void AssembleIntervalAxis(IntervalAttributeStats m)
 {
     DrawBaseAxis();
     GenerateIntervalTicks(m);
     UpdateLabels();
 }