Нужна помощь в выставление точки центра тяжести треугольника вместо самого треугольника [требует правки]

394
22 июня 2017, 07:13

var results = { 
  "total": { 
    "businessman": "63", 
    "manager": "64", 
    "consultant": "75" 
  }, 
  "example": { 
    "businessman": "66", 
    "manager": "68", 
    "consultant": "68" 
  }, 
  "relative": { 
    "businessman": "80", 
    "manager": "85", 
    "consultant": "93" 
  }, 
  "questions": { 
    "1": { 
      "name": "Аналитичность", 
      "businessman": "100", 
      "manager": "100", 
      "consultant": "100" 
    }, 
    "2": { 
      "name": "Визионарность", 
      "businessman": "51", 
      "manager": "24", 
      "consultant": "82" 
    }, 
    "3": { 
      "name": "Конструктивность", 
      "businessman": "100", 
      "manager": "100", 
      "consultant": "100" 
    }, 
    "4": { 
      "name": "Гибкость и адаптивность", 
      "businessman": "56", 
      "manager": "100", 
      "consultant": "80" 
    }, 
    "5": { 
      "name": "Инновативность", 
      "businessman": "70", 
      "manager": "100", 
      "consultant": "69" 
    }, 
    "6": { 
      "name": "Коллективность и командность", 
      "businessman": "100", 
      "manager": "100", 
      "consultant": "100" 
    }, 
    "7": { 
      "name": "Коммуникабельность", 
      "businessman": "64", 
      "manager": "37", 
      "consultant": "100" 
    }, 
    "8": { 
      "name": "Креативность", 
      "businessman": "100", 
      "manager": "81", 
      "consultant": "76" 
    }, 
    "9": { 
      "name": "Организованность", 
      "businessman": "43", 
      "manager": "100", 
      "consultant": "100" 
    }, 
    "10": { 
      "name": "Ориентация на качество", 
      "businessman": "86", 
      "manager": "77", 
      "consultant": "100" 
    }, 
    "11": { 
      "name": "Ориентация на результат", 
      "businessman": "44", 
      "manager": "65", 
      "consultant": "88" 
    }, 
    "12": { 
      "name": "Пассионарность", 
      "businessman": "100", 
      "manager": "64", 
      "consultant": "55" 
    }, 
    "13": { 
      "name": "Позитивность", 
      "businessman": "41", 
      "manager": "100", 
      "consultant": "100" 
    }, 
    "14": { 
      "name": "Презентативность", 
      "businessman": "100", 
      "manager": "87", 
      "consultant": "100" 
    }, 
    "15": { 
      "name": "Пытливость", 
      "businessman": "100", 
      "manager": "100", 
      "consultant": "100" 
    }, 
    "16": { 
      "name": "Регулируемость", 
      "businessman": "95", 
      "manager": "100", 
      "consultant": "97" 
    }, 
    "17": { 
      "name": "Решение проблем", 
      "businessman": "39", 
      "manager": "75", 
      "consultant": "100" 
    }, 
    "18": { 
      "name": "Решительность", 
      "businessman": "25", 
      "manager": "77", 
      "consultant": "100" 
    }, 
    "19": { 
      "name": "Саморазвитие", 
      "businessman": "48", 
      "manager": "100", 
      "consultant": "100" 
    }, 
    "20": { 
      "name": "Саморегуляция", 
      "businessman": "100", 
      "manager": "100", 
      "consultant": "79" 
    }, 
    "21": { 
      "name": "Сервисность", 
      "businessman": "100", 
      "manager": "100", 
      "consultant": "97" 
    }, 
    "22": { 
      "name": "Системность и концептуальность", 
      "businessman": "73", 
      "manager": "100", 
      "consultant": "100" 
    }, 
    "23": { 
      "name": "Способность быть лидером", 
      "businessman": "68", 
      "manager": "76", 
      "consultant": "100" 
    }, 
    "24": { 
      "name": "Способность планировать", 
      "businessman": "100", 
      "manager": "61", 
      "consultant": "100" 
    }, 
    "25": { 
      "name": "Стратегичность", 
      "businessman": "48", 
      "manager": "46", 
      "consultant": "70" 
    }, 
    "26": { 
      "name": "Стрессоустойчивость", 
      "businessman": "95", 
      "manager": "69", 
      "consultant": "100" 
    }, 
    "27": { 
      "name": "Творческий подход", 
      "businessman": "100", 
      "manager": "68", 
      "consultant": "100" 
    }, 
    "28": { 
      "name": "Терпимость", 
      "businessman": "98", 
      "manager": "100", 
      "consultant": "83" 
    }, 
    "29": { 
      "name": "Толерантность", 
      "businessman": "100", 
      "manager": "100", 
      "consultant": "100" 
    }, 
    "30": { 
      "name": "Целостность", 
      "businessman": "100", 
      "manager": "83", 
      "consultant": "100" 
    }, 
    "31": { 
      "name": "Честность", 
      "businessman": "100", 
      "manager": "100", 
      "consultant": "100" 
    }, 
    "32": { 
      "name": "Эмпатия", 
      "businessman": "100", 
      "manager": "100", 
      "consultant": "100" 
    }, 
    "33": { 
      "name": "Якорность", 
      "businessman": "100", 
      "manager": "100", 
      "consultant": "100" 
    } 
  } 
}; 
var chartColors = { 
  red: 'rgb(255, 99, 132)', 
  orange: 'rgb(255, 159, 64)', 
  yellow: 'rgb(255, 205, 86)', 
  green: 'rgb(75, 192, 192)', 
  blue: 'rgb(54, 162, 235)', 
  purple: 'rgb(153, 102, 255)', 
  grey: 'rgb(201, 203, 207)' 
}; 
 
var color = Chart.helpers.color; 
var config = { 
  type: 'radar', 
  data: { 
    labels: ["Предприниматель", "Консультант", "Менеджер"], 
    datasets: [{ 
        label: "Эталон", 
        backgroundColor: color(chartColors.red).alpha(0.2).rgbString(), 
        borderColor: chartColors.red, 
        pointBackgroundColor: chartColors.red, 
        data: [ 
          results.example.businessman, 
          results.example.consultant, 
          results.example.manager 
        ] 
      }, 
      { 
        label: "Кандидат", 
        backgroundColor: color(chartColors.blue).alpha(0.2).rgbString(), 
        borderColor: chartColors.blue, 
        pointBackgroundColor: chartColors.blue, 
        data: [ 
          results.total.businessman, 
          results.total.consultant, 
          results.total.manager 
        ] 
      } 
    ] 
  }, 
  options: { 
    legend: { 
      display: true, 
      position: 'top' 
    }, 
    title: { 
      display: false 
    }, 
    scale: { 
      reverse: true, 
      ticks: { 
        reverse: true, 
        beginAtZero: true, 
        min: 0, 
        max: 100, 
        userCallback: function(value, index, values) { 
          return value + '%'; 
        } 
      }, 
      gridLines: { 
        display: true, 
      } 
    } 
  } 
}; 
 
var questions = { 
  labels: [], 
  consultant: [], 
  manager: [], 
  businessman: [] 
}; 
 
Object.keys(results.questions).map(function(objectKey, index) { 
  var value = results.questions[objectKey]; 
  questions.labels.push(value.name); 
  questions.consultant.push(value.consultant); 
  questions.manager.push(value.manager); 
  questions.businessman.push(value.businessman); 
}); 
 
var lineChartData = { 
  labels: questions.labels, 
  datasets: [{ 
      label: "Предприниматель", 
      borderColor: window.chartColors.red, 
      backgroundColor: window.chartColors.red, 
      fill: false, 
      data: questions.businessman 
    }, { 
      label: "Менеджер", 
      borderColor: window.chartColors.blue, 
      backgroundColor: window.chartColors.blue, 
      fill: false, 
      data: questions.manager, 
    }, 
    { 
      label: "Консультант", 
      borderColor: window.chartColors.green, 
      backgroundColor: window.chartColors.green, 
      fill: false, 
      data: questions.consultant 
    } 
  ] 
}; 
 
window.onload = function() { 
  window.myRadar = new Chart(document.getElementById("canvas_total"), config); 
 
  var ctx = document.getElementById("canvas_overview").getContext("2d"); 
  window.myLine = Chart.Line(ctx, { 
    data: lineChartData, 
    options: { 
      responsive: true, 
      hoverMode: 'index', 
      stacked: false, 
      title: { 
        display: false 
      }, 
      scales: { 
        xAxes: [{ 
          ticks: { 
            beginAtZero: true, 
            min: 0, 
            max: 100, 
            autoSkip: false 
          } 
        }], 
        yAxes: [{ 
          type: "linear", // only linear but allow scale type registration. This allows extensions to exist solely for log scale for instance 
          display: true, 
          position: "left", 
          ticks: { 
            beginAtZero: false, 
            maxTicksLimit: 8, 
            userCallback: function(value, index, values) { 
              return value + '%'; 
            } 
          } 
        }] 
      } 
    } 
  }); 
};
<div> 
  <div class="tab-content"> 
    <div role="tabpanel" class="tab-pane active" id="total"> 
      <div style="width: 40%"> 
        <canvas id="canvas_total" style="display: block; width: 944px; height: 944px;" width="944" height="944"></canvas> 
      </div> 
    </div> 
  </div> 
</div> 
<canvas id="canvas_overview"></canvas> 
<script src="http://question.sablab.org/static/js/vendor/Chart.bundle.js"></script> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

Вместо треугольника кандидата, нужна точка центр тяжести треугольника.

READ ALSO
Расход памяти объектами JavaScript

Расход памяти объектами JavaScript

Есть след код, меня интересует, происходит ли в этом случае экономия памяти?

231
Disallowed_useragent when google+ auth

Disallowed_useragent when google+ auth

I use Google+ Login in my Wep App (Google Sign In)In browser like Chrome or Safari working fine (opens popup in new tab with chose account (enter login, passwd), then popup closed and auth successfull

433
Проверка одинаковых значений в массиве

Проверка одинаковых значений в массиве

Приветствую! Большая просьба помочь, пытаюсь сделать судоку(похожее на это maworldcom

332