با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، این جلسه از آموزش های دوره D3.js با متد های محور API در D3.js و پیکربندی محور API در D3.js آشنا خواهید شد. D3 توابعی را برای رسم محور فراهم می کند. محور از خطوط، زاویه و برچسب ها ساخته شده است. یک محور از مقیاس استفاده می کند، بنابراین به هر محور باید یک مقیاس برای کار با آن داده شود.
شما می توانید API را با استفاده از اسکریپت زیر پیکربندی کنید.
1 2 3 4 | <script src = "https://d3js.org/d3-axis.v1.min.js"></script> <script> </script> |
D3 توابع مهم زیر را برای رسم محور فراهم می کند.
آنها به صورت زیر شرح داده شده اند :
()d3.axisTop : این متد برای ایجاد یک محور افقی بالا استفاده می شود.
()d3.axisRight : این متد برای ایجاد یک محو عمودی راست محور استفاده می شود.
()d3.axisBottom : این متد برای ایجاد یک محور پایین افقی استفاده می شود.
()d3.axisLeft : این متد محور عمودی چپ را ایجاد می کند.
اجازه دهید یاد بگیریم که چگونه x و y را به یک گراف اضافه کنیم. برای انجام این کار، ما باید به مراحل زیر توجه داشته باشیم.
1 2 3 4 5 6 | var width = 400, height = 400; var data = [100, 150, 200, 250, 280, 300]; var svg = d3.select("body") .append("svg") .attr("width", width) .attr("height", height); |
1 2 3 4 5 6 7 | var xscale = d3.scaleLinear() .domain([0, d3.max(data)]) .range([0, width - 100]); var yscale = d3.scaleLinear() .domain([0, d3.max(data)]) .range([height/2, 0]); |
در اینجا ما یک مقیاس خطی ایجاد کردیم و دامنه و محدوده را مشخص کرده ایم.
1 2 | var x_axis = d3.axisBottom() .scale(xscale); |
در اینجا ما از d3.axisBottom برای ایجاد محور X استفاده می کنیم و مقیاسی را که قبلا تعریف شده است، ارائه می دهیم.
1 2 | var y_axis = d3.axisLeft() .scale(yscale); |
در اینجا، ما از d3.axisLeft برای ایجاد محور Y استفاده می کنیم و آن را با مقیاسی که در بالا تعریف کردیم ارائه می دهیم.
1 2 3 | svg.append("g") .attr("transform", "translate(50, 10)") .call(y_axis); |
1 2 3 4 | var xAxisTranslate = height/2 + 10; svg.append("g") .attr("transform", "translate(50, " + xAxisTranslate +")") .call(x_axis) |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | <html> <head> <script type = "text/javascript" src = "https://d3js.org/d3.v4.min.js"></script> <style> svg text { fill: purple; font: 12px sans-serif; text-anchor: end; } </style> </head> <body> <script> var width = 400, height = 400; var data = [100, 120, 140, 160, 180, 200]; var svg = d3.select("body") .append("svg") .attr("width", width) .attr("height", height); var xscale = d3.scaleLinear() .domain([0, d3.max(data)]) .range([0, width - 100]); var yscale = d3.scaleLinear() .domain([0, d3.max(data)]) .range([height/2, 0]); var x_axis = d3.axisBottom().scale(xscale); var y_axis = d3.axisLeft().scale(yscale); svg.append("g") .attr("transform", "translate(50, 10)") .call(y_axis); var xAxisTranslate = height/2 + 10; svg.append("g") .attr("transform", "translate(50, " + xAxisTranslate +")") .call(x_axis) </script> </body> </html> |
اکنون، از مرورگر درخواست کنید و تغییرات زیرا مشاهده کنید.
D3 داده محور است، D3 قابلیت این را دارد که از داده های استاتیک استفاده کند و یا داده ها رو از روی سرور و با فرمت های مختلف مثل آرایه، CSV، JSON و XML و … واکشی کند و نمودارهای مختلفی را رسم کند. آموزش پیکربندی محور API در D3.js و محور API در D3.js به اتمام رسید امیدواریم از مطالب بهره کافی را برده باید.