<script type='text/javascript' src='https://www.gstatic.com/charts/loader.js'></script> was added in the page head.
xxxxxxxxxx
%%html
<div id='googlechart2' style='width:600px; height:600px;'/><script>
function get_int(xmin,xmax) {
return Math.floor(Math.random()*(xmax-xmin+1))+xmin;};
function get_color(k) {
return '#00'+get_int(10*k,255).toString(16)+
get_int(10*k,255).toString(16);};
function fx(a,b,c,q,n,t,k) {
var x1=Math.cos(Math.PI*t/n+k*Math.PI/q)+
Math.cos(a*Math.PI*t/n+k*Math.PI/q);
var x2=Math.cos(b*Math.PI*t/n+k*Math.PI/q)+
Math.cos(c*Math.PI*t/n+k*Math.PI/q);
return x1+x2};
function fy(a,b,c,q,n,t,k) {
var y1=Math.sin(Math.PI*t/n+k*Math.PI/q)-
Math.sin(a*Math.PI*t/n+k*Math.PI/q);
var y2=Math.sin(b*Math.PI*t/n+k*Math.PI/q)-
Math.sin(c*Math.PI*t/n+k*Math.PI/q);
return y1+y2};
function ar(a,b,c,q,n,k) {
return Array(2*n+1).fill(k).map((k,t)=>
[fx(a,b,c,q,n,t,k),fy(a,b,c,q,n,t,k)]);};
google.charts.load('current',{'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var a=get_int(5,9),b=get_int(10,14),c=get_int(15,19),
q=get_int(3,8),n=get_int(10,350);
var xy=ar(a,b,c,q,n,1);
xy.unshift(['x',[a,b,c,q,n].toString()]);
for (var k=2; k<2*q+1; k++) {xy=xy.concat(ar(a,b,c,q,n,k));};
var data=google.visualization.arrayToDataTable(xy);
var options={chartArea:{left:0,top:0,right:0,bottom:20},
legend:{position:'bottom'},
curveType:'none',lineWidth:.75,
colors:[get_color(a)],
hAxis:{ticks:[],baselineColor:'#fff'},
vAxis:{ticks:[],baselineColor:'#fff'}};
var chart=new google.visualization
.LineChart(document.getElementById('googlechart2'));
chart.draw(data,options);};
No comments:
Post a Comment