نظرة عامة
لوحات البيانات هي طريقة بسيطة لتنظيم وإدارة رسوم بيانية متعددة تشترك في البيانات الأساسية نفسها. باستخدام واجهات برمجة التطبيقات الموضّحة في هذه الصفحة، يمكنك التخلص من أعباء توصيل الأسلاك معًا وتنسيق جميع الرسومات البيانية التي تشكّل جزءًا من لوحة البيانات.
يتم تحديد لوحات البيانات باستخدام صفوف google.visualization.Dashboard
.
تتلقّى مثيلات Dashboard
DataTable
الذي يحتوي على البيانات
لرسم البيانات وتوزيعها على جميع الرسومات البيانية التي تشكّل جزءًا من
لوحة البيانات، وذلك للحرص على رسمها وتوزيعها.
عناصر التحكّم هي تطبيقات مصغّرة لواجهة المستخدم (مثل أدوات اختيار الفئات وأشرطة تمرير النطاق وأدوات الإكمال التلقائي...) التي تتفاعل معها بهدف عرض البيانات التي تديرها لوحة البيانات والرسوم البيانية التي تشكل جزءًا منها.
يتم تحديد عناصر التحكّم باستخدام
صفوف google.visualization.ControlWrapper
.
يمكنك إضافة مثيلات ControlWrapper
إلى لوحة البيانات، حيث تعمل هذه المثيلات
مثل الممرات والصمامات في نظام السباكة. تجمع هذه الفِرق البيانات التي يُدخلها المستخدمون وتستخدم المعلومات لتحديد
البيانات التي تديرها لوحة البيانات والتي يجب توفيرها في الرسوم البيانية التي تشكّل جزءًا منها.
يمكنك الاطّلاع على المثال التالي الذي يتم فيه استخدام منتقي الفئات وشريط تمرير النطاق لعرض البيانات المعروضة في رسم بياني دائري.
ملاحظة: لوحة البيانات تفاعلية. جرِّب تشغيل عناصر التحكّم وشاهد التغيير في الوقت الفعلي على الرسم البياني.
استخدام عناصر التحكّم ولوحات البيانات
في ما يلي الخطوات الأساسية لإنشاء لوحة بيانات وتضمينها في صفحتك. ستجد مقتطف رمز يعرض كل هذه الخطوات أدناه، متبوعًا بمعلومات تفصيلية عن كل خطوة.
- إنشاء بنية HTML للوحة البيانات: يجب أن تحتوي صفحتك على العدد المطلوب من عناصر HTML للاحتفاظ بكل عضو في لوحة البيانات. ويتضمن ذلك لوحة المعلومات نفسها وجميع عناصر التحكم والمخططات التي تشكل جزءًا منها. ستستخدم عادةً <div> لكل منها.
-
تحميل مكتباتك: تتطلّب لوحة البيانات تضمين مكتبتَين فقط أو تحميلهما في الصفحة، وهما: Google AJAX API وحزمة Google Visualization
controls
. - إعداد بياناتك: عليك تحضير البيانات لعرضها، أي من خلال تحديد البيانات بنفسك في الرمز أو طلب البيانات من موقع إلكتروني بعيد.
- إنشاء مثيل للوحة البيانات: يمكنك إنشاء مثيل للوحة البيانات من خلال استدعاء الدالة الإنشائية وتمرير مرجع إلى العنصر <div> الذي سيحملها.
-
إنشاء العدد الذي تريده من مثيلات عناصر التحكّم والرسوم البيانية
يمكنك إنشاء المثيلَين
google.visualization.ChartWrapper
وgoogle.visualization.ControlWrapper
لوصف كل رسم بياني وعناصر التحكّم التي تديرها لوحة البيانات. -
إنشاء تبعيات ثابتة: يمكنك طلب
bind()
من لوحة البيانات والتمرير في حالتَي التحكّم والرسم البياني للسماح للوحة البيانات بمعرفة ما يجب إدارته. بعد ربط عنصر تحكّم ورسم بياني، تعدِّل لوحة البيانات الرسم البياني لمطابقة القيود التي يفرضها عنصر التحكّم على البيانات. -
رسم لوحة البيانات: يمكنك طلب الرقم
draw()
من لوحة البيانات وإدخال بياناتك لرسم لوحة البيانات بالكامل على الصفحة. - التغييرات الآلية بعد الرسم: يمكنك اختياريًا بعد السحب الأوّلي توجيه عناصر التحكّم التي تشكل جزءًا من لوحة البيانات بشكل آلي، واستخدام لوحة البيانات لتعديل الرسوم البيانية استجابةً لذلك.
في ما يلي مثال بسيط على صفحة تنشئ لوحة بيانات بسيطة مع شريط تمرير للنطاق يؤدي إلى رسم بياني دائري. تظهر لوحة البيانات الناتجة أسفل المقتطف.
<html> <head> <!--Load the AJAX API--> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> // Load the Visualization API and the controls package. google.charts.load('current', {'packages':['corechart', 'controls']}); // Set a callback to run when the Google Visualization API is loaded. google.charts.setOnLoadCallback(drawDashboard); // Callback that creates and populates a data table, // instantiates a dashboard, a range slider and a pie chart, // passes in the data and draws it. function drawDashboard() { // Create our data table. var data = google.visualization.arrayToDataTable([ ['Name', 'Donuts eaten'], ['Michael' , 5], ['Elisa', 7], ['Robert', 3], ['John', 2], ['Jessica', 6], ['Aaron', 1], ['Margareth', 8] ]); // Create a dashboard. var dashboard = new google.visualization.Dashboard( document.getElementById('dashboard_div')); // Create a range slider, passing some options var donutRangeSlider = new google.visualization.ControlWrapper({ 'controlType': 'NumberRangeFilter', 'containerId': 'filter_div', 'options': { 'filterColumnLabel': 'Donuts eaten' } }); // Create a pie chart, passing some options var pieChart = new google.visualization.ChartWrapper({ 'chartType': 'PieChart', 'containerId': 'chart_div', 'options': { 'width': 300, 'height': 300, 'pieSliceText': 'value', 'legend': 'right' } }); // Establish dependencies, declaring that 'filter' drives 'pieChart', // so that the pie chart will only display entries that are let through // given the chosen slider range. dashboard.bind(donutRangeSlider, pieChart); // Draw the dashboard. dashboard.draw(data); } </script> </head> <body> <!--Div that will hold the dashboard--> <div id="dashboard_div"> <!--Divs that will hold each control and chart--> <div id="filter_div"></div> <div id="chart_div"></div> </div> </body> </html>
في ما يلي لوحة التحكم التي تنشئها هذه التعليمة البرمجية.
1. إنشاء هيكل HTML للوحة التحكم
يجب أن تحتوي صفحتك على أكبر عدد ممكن من عناصر HTML (عادةً <div>s) لتتضمن كل من لوحة البيانات نفسها وجزء من عناصر التحكم والرسوم البيانية. عند إنشاء مثيل للوحة البيانات وعناصر التحكّم والرسم البياني، يجب ضبط مرجع إلى العنصر الخاص بها، لذا يجب تحديد رقم تعريف لكل عنصر HTML.
<!--Div that will hold the dashboard--> <div id="dashboard_div"> <!--Divs that will hold each control and chart--> <div id="filter_div"></div> <div id="chart_div"></div> </div>
لك مطلق الحرية في وضع كل عنصر من عناصر HTML بالشكل الذي تريد أن تظهر به لوحة البيانات.
2. تحميل مكتباتك
تتطلّب لوحة البيانات تضمين مكتبتَين فقط أو تحميلهما في الصفحة، وهما: Google AJAX API وحزمة Google Visualization controls
. وتحدّد واجهة برمجة التطبيقات (خاصةً
google.visualization.ChartWrapper
) الحِزم الأخرى
المطلوبة تلقائيًا (على سبيل المثال، gauge
إذا كنت تستخدم رسمًا بيانيًا للقياس) وتحمِّلها بشكل فوري
بدون أيّ تدخل إضافي.
يجب استخدام google.charts.load()
لاسترجاع مكتبة عناصر التحكّم.
<!--Load the AJAX API--> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> // Load the Visualization API and the controls package. // Packages for all the other charts you need will be loaded // automatically by the system. google.charts.load('current', {'packages':['corechart', 'controls']}); // Set a callback to run when the Google Visualization API is loaded. google.charts.setOnLoadCallback(drawDashboard); function drawDashboard() { // Everything is loaded. Assemble your dashboard... } </script>
3. تجهيز بياناتك
عند تحميل واجهة برمجة التطبيقات Visualization API، سيتصل google.charts.setOnLoadCallback()
بدالة المعالج، ليعرف ذلك أن جميع طرق المساعدة والفئات المطلوبة ستكون جاهزة لك لبدء إعداد البيانات.
تقبل لوحات البيانات البيانات في DataTable، تمامًا مثل المخططات.
4. إنشاء مثيل للوحة البيانات
بعد إنشاء بياناتك، يمكنك إنشاء مثيل لكائن لوحة البيانات. تستخدم الدالة الإنشائية للوحة البيانات مَعلمة واحدة، وهي إشارة إلى عنصر DOM الذي يجب رسم لوحة البيانات فيه.
var dashboard = new google.visualization.Dashboard(document.getElementById('dashboard_div'));
ويتم عرض لوحات البيانات كفئة JavaScript. بعد إنشاء مثيل للوحة البيانات، يمكنك تنفيذ بعض الخطوات الاختيارية، مثل إضافة أدوات معالجة الأحداث (على سبيل المثال، ليتم إرسال إشعار إليك عندما تصبح لوحة البيانات "جاهزة"). تتعامل لوحات البيانات مع الأحداث بالطريقة نفسها التي تتعامل بها الرسوم البيانية، لذا يُرجى الرجوع إلى التعامل مع أحداث التمثيل البصري أو عرض الأخطاء بشكل جيد في قسم الرسم البياني للحصول على مزيد من المعلومات.
5. إنشاء مثيلات التحكم والرسم البياني
حدد أكبر عدد ممكن من المثيلات التي تحتاجها لكل عنصر تحكم ومخطط سيكونان جزءًا من لوحة البيانات.
استخدِم
google.visualization.ChartWrapper
و
google.visualization.ControlWrapper
لتحديد الرسومات البيانية وعناصر التحكّم على التوالي.
// Create a range slider, passing some options var donutRangeSlider = new google.visualization.ControlWrapper({ 'controlType': 'NumberRangeFilter', 'containerId': 'filter_div', 'options': { 'filterColumnLabel': 'Donuts eaten' } }); // Create a pie chart, passing some options var pieChart = new google.visualization.ChartWrapper({ 'chartType': 'PieChart', 'containerId': 'chart_div', 'options': { 'width': 300, 'height': 300, 'pieSliceText': 'label' } });
عند إنشاء المثيلَين ChartWrapper
وControlWrapper
، لا تحدّد المَعلمة dataTable
أو dataSourceUrl
. وتتولى لوحة البيانات إضافة البيانات المناسبة إلى كل منها. ومع ذلك، احرص على تحديد
المَعلمتَين المطلوبتَين: chartType
وcontainerId
للرسومات البيانية،
والسمة controlType
وcontainerId
لعناصر التحكّم.
إليك بعض النصائح حول ضبط عناصر التحكّم والرسوم البيانية:
-
يجب منح جميع عناصر التحكّم
filterColumnIndex
(أوfilterColumnLabel
) لتحديد عمودgoogle.visualization.DataTable
الذي يعمل عنصر التحكّم عليه (في المثال أعلاه، يعمل عنصر التحكّم على العمود الذي يحمل اسم Donuts eat). -
ويمكنك استخدام خيار الإعداد
state
في عناصر التحكّم لإعدادها بحالة واضحة عند رسمها لأول مرة. على سبيل المثال، يمكنك استخدام هذا الإعداد لتثبيت المواضع الأولية للأصابع في عنصر التحكم في شريط تمرير النطاق.var donutRangeSlider = new google.visualization.ControlWrapper({ 'controlType': 'NumberRangeFilter', 'containerId': 'filter_div', 'options': { 'filterColumnLabel': 'Donuts eaten', 'minValue': 1, 'maxValue': 10 }, // Explicitly positions the thumbs at position 3 and 8, // out of the possible range of 1 to 10. 'state': {'lowValue': 3, 'highValue': 8} });
-
تشترك جميع الرسوم البيانية التي هي جزء من لوحة البيانات في جدول البيانات الأساسي نفسه الذي أعددته في خطوة إعداد بياناتك. مع ذلك، غالبًا ما تتطلب الرسوم البيانية ترتيبًا معيّنًا من الأعمدة حتى يتم عرضها بشكل صحيح: على سبيل المثال، يتطلب الرسم البياني الدائري عمود سلسلة للتصنيف، متبوعًا بعمود أرقام للقيمة.
يمكنك استخدام الخيار
view
أثناء ضبط كل مثيلChartWrapper
للإشارة إلى الأعمدة ذات الصلة بالرسم البياني، كما في المثال التالي.var data = google.visualization.arrayToDataTable([ ['Name', 'Gender', 'Age', 'Donuts eaten'], ['Michael' , 'Male', 12, 5], ['Elisa', 'Female', 20, 7], ['Robert', 'Male', 7, 3], ['John', 'Male', 54, 2], ['Jessica', 'Female', 22, 6], ['Aaron', 'Male', 3, 1], ['Margareth', 'Female', 42, 8] ]); var pieChart = new google.visualization.ChartWrapper({ 'chartType': 'PieChart', 'containerId': 'chart_div', 'options': { 'width': 300, 'height': 300, 'title': 'Donuts eaten per person' }, // The pie chart will use the columns 'Name' and 'Donuts eaten' // out of all the available ones. 'view': {'columns': [0, 3]} }); // The rest of dashboard configuration follows // ...
6. تأسيس التبعيات
بعد إنشاء مثيل للوحة البيانات وجميع عناصر التحكّم والرسوم البيانية التي ستكون جزءًا منها، استخدِم طريقة bind()
لإخبار لوحة البيانات بالعناصر الاعتمادية الموجودة بين عناصر التحكّم والرسوم البيانية.
بعد ربط عنصر تحكّم ورسم بياني، تعدِّل لوحة البيانات الرسم البياني لمطابقة القيود التي يفرضها عنصر التحكّم على البيانات. في نموذج لوحة البيانات التي تنشئها، يتم ربط شريط تمرير النطاق والرسم البياني الدائري معًا، لذا كلما تفاعلت مع البيانات الأولى، يتم تطبيق التعديل الأخير لعرض البيانات التي تتطابق مع النطاق المحدّد فقط.
// 'pieChart' will update whenever you interact with 'donutRangeSlider' // to match the selected range. dashboard.bind(donutRangeSlider, pieChart);
يمكنك ربط عناصر التحكّم والرسومات البيانية بعدة إعدادات مختلفة: واحد لواحد وواحد لمتعدد ومتعدد لواحد وأطراف عديدة. عندما يتم ربط عناصر تحكّم متعدّدة برسم بياني، تعدِّل لوحة البيانات الرسم البياني لمطابقة القيود المجمّعة التي تفرضها جميع عناصر التحكّم المرتبطة. وفي الوقت نفسه، يمكن أن يؤدي عنصر التحكّم إلى عرض رسوم بيانية متعدّدة بشكل متزامن. لتحديد عمليات ربط متعدّدة في الوقت نفسه، مرِّر في المصفوفات إلى الطريقة bind()
بدلاً من حالات فردية. يمكنك أيضًا
ربط عدة مكالمات bind()
معًا. وإليك بعض الأمثلة.
// Many-to-one binding where 'ageSelector' and 'salarySelector' concurrently // participate in selecting which data 'ageVsSalaryScatterPlot' visualizes. dashboard.bind([agePicker, salaryPicker], ageVsSalaryScatterPlot); // One-to-many binding where 'ageSelector' drives two charts. dashboard.bind(agePicker, [ageVsSalaryScatterPlot, ageBarChart]); // bind() chaining where each control drives its own chart. dashboard.bind(agePicker, ageBarChart).bind(salaryRangePicker, salaryPieChart);
بالنسبة إلى الاستخدامات المتقدمة، يمكنك أيضًا ربط عناصر التحكُّم بعناصر التحكّم الأخرى لإنشاء سلاسل من الاعتمادات .
dashboard.bind(countryPicker, regionPicker).bind(regionPicker, cityPicker);
7. رسم لوحة التحكم
يمكنك استدعاء الإجراء draw()
في مثيل لوحة البيانات لعرض لوحة البيانات بالكامل.
تستخدم الطريقة draw()
مَعلمة واحدة فقط، وهي DataTable
(أو DataView
) التي تشغِّل لوحة البيانات.
عليك طلب القيمة draw()
في كل مرة تغيّر فيها تركيبة لوحة البيانات
(على سبيل المثال، عن طريق إضافة عناصر تحكّم أو رسوم بيانية جديدة إليها) أو تغيير DataTable
العام التي تستند إليها
لوحة البيانات.
تعمل مثيل لوحة البيانات على تنشيط حدث ready
كلما انتهى draw()
من رسم جميع عناصر التحكّم والرسوم البيانية التي تكون جزءًا منه. يتم تنشيط حدث error
في حال تعذُّر رسم أي من عناصر التحكّم المُدارة أو الرسم البياني. لمزيد من المعلومات عن التعامل مع الأحداث، اطّلِع على
معالجة الأحداث.
ملاحظة: عليك الاستماع إلى حدث ready
قبل محاولة
تغيير تركيبة لوحة البيانات أو رسمها مرّة أخرى.
8. التغييرات الآلية بعد السحب
بعد أن تكمل لوحة البيانات عملية draw()
الأولية، ستصبح منشورة وستستجيب
تلقائيًا لأي إجراء تتخذه عليها (مثل تغيير النطاق المحدد لشريط تمرير
عنصر التحكم الذي يشكّل جزءًا من لوحة البيانات).
إذا كنت بحاجة إلى تغيير حالة لوحة البيانات آليًا، يمكنك إجراء ذلك من خلال العمل مباشرةً على
النسخة الافتراضية من ControlWrapper
وChartWrapper
التي تشكّل جزءًا منها.
والقاعدة الأساسية هي إجراء أي تغيير تحتاج إليه مباشرةً على مثيل
ControlWrapper
(أو ChartWrapper
) المحدّد: على سبيل المثال، تغيير
خيار عنصر التحكّم أو حالة من خلال setOption()
وsetState()
على التوالي،
وطلب طريقة draw()
بعد ذلك. وسيتم بعد ذلك تعديل لوحة البيانات لمطابقة التغييرات المطلوبة.
يوضح المثال التالي هذه الحالة.
<html> <head> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> google.charts.load('current', {'packages':['corechart', 'controls']}); google.charts.setOnLoadCallback(drawStuff); function drawStuff() { var dashboard = new google.visualization.Dashboard( document.getElementById('programmatic_dashboard_div')); // We omit "var" so that programmaticSlider is visible to changeRange. var programmaticSlider = new google.visualization.ControlWrapper({ 'controlType': 'NumberRangeFilter', 'containerId': 'programmatic_control_div', 'options': { 'filterColumnLabel': 'Donuts eaten', 'ui': {'labelStacking': 'vertical'} } }); var programmaticChart = new google.visualization.ChartWrapper({ 'chartType': 'PieChart', 'containerId': 'programmatic_chart_div', 'options': { 'width': 300, 'height': 300, 'legend': 'none', 'chartArea': {'left': 15, 'top': 15, 'right': 0, 'bottom': 0}, 'pieSliceText': 'value' } }); var data = google.visualization.arrayToDataTable([ ['Name', 'Donuts eaten'], ['Michael' , 5], ['Elisa', 7], ['Robert', 3], ['John', 2], ['Jessica', 6], ['Aaron', 1], ['Margareth', 8] ]); dashboard.bind(programmaticSlider, programmaticChart); dashboard.draw(data); changeRange = function() { programmaticSlider.setState({'lowValue': 2, 'highValue': 5}); programmaticSlider.draw(); }; changeOptions = function() { programmaticChart.setOption('is3D', true); programmaticChart.draw(); }; } </script> </head> <body> <div id="programmatic_dashboard_div" style="border: 1px solid #ccc"> <table class="columns"> <tr> <td> <div id="programmatic_control_div" style="padding-left: 2em; min-width: 250px"></div> <div> <button style="margin: 1em 1em 1em 2em" onclick="changeRange();"> Select range [2, 5] </button><br /> <button style="margin: 1em 1em 1em 2em" onclick="changeOptions();"> Make the pie chart 3D </button> </div> </td> <td> <div id="programmatic_chart_div"></div> </td> </tr> </table> </div> </body> </html>
مرجع واجهة برمجة التطبيقات
يسرد هذا القسم العناصر التي تعرضها واجهة برمجة تطبيقات عناصر التحكّم ولوحات البيانات والطرق العادية التي تعرضها جميع عناصر التحكّم.
لوحة البيانات
يمثل هذا النوع مجموعة من عناصر التحكم والرسوم البيانية التعاونية التي تشترك في البيانات الأساسية نفسها.
الشركة المصنِّعة
Dashboard(containerRef)
- containerRef
- إشارة إلى عنصر حاوية صالح على الصفحة سيحمل محتوى لوحة البيانات.
الطُرق
تعرض لوحة البيانات الطرق التالية:
الطريقة | نوع القيمة التي يتم عرضها | الوصف |
---|---|---|
bind(controls, charts) |
google.visualization.Dashboard |
تربط عنصر تحكّم واحدًا أو أكثر بمشارك واحد أو أكثر في لوحة البيانات (سواء رسومات بيانية أو
عناصر تحكّم أخرى)، بحيث تتم إعادة رسم عناصر التحكّم الأخرى عندما يجمع أي عنصر منها تفاعلاً آلياً أو تفاعلاً من المستخدم يؤثر في البيانات التي تتم إدارتها من خلال لوحة البيانات. تعرض
مثيل لوحة البيانات نفسه لسلسلة مكالمات
|
draw(dataTable) |
لا ينطبق | لرسم لوحة المعلومات.
|
getSelection() |
مصفوفة الكائنات |
تعرض مصفوفة من الكيانات المرئية المحدّدة من الرسوم البيانية في لوحة البيانات. عند طلب الطريقة ملاحظة: يجب ربط مستمعي الفعاليات خلال الحدث المحدّد بكل رسم بياني تريد الاستماع إليه. |
فعاليات
يعرض كائن لوحة البيانات الأحداث التالية. تجدر الإشارة إلى أنّه يجب الاتصال بـ
Dashboard.draw()
قبل عقد أي أحداث.
الاسم | الوصف | أماكن إقامة |
---|---|---|
error |
يتم الإطلاق عند حدوث خطأ عند محاولة عرض لوحة البيانات. يُحتمل أن يكون قد تعذّر عرض عنصر واحد أو أكثر من عناصر التحكّم والرسومات البيانية التي تشكّل جزءًا من لوحة البيانات. | رقم التعريف، رسالة |
ready |
اكتملت لوحة المعلومات وهي جاهزة لقبول التغييرات. وتكون جميع عناصر التحكم والرسوم البيانية التي تشكل جزءًا من لوحة البيانات جاهزة لاستدعاء الطريقة الخارجية وتفاعل المستخدم. إذا أردت تغيير لوحة البيانات (أو البيانات التي تعرضها) بعد رسمها،
عليك إعداد أداة استماع لهذا الحدث قبل استدعاء طريقة سيتم أيضًا تنشيط حدث "
|
لا ينطبق |
ControlWrapper
كائن ControlWrapper هو برنامج تضمين حول تمثيل JSON لمثيل عنصر تحكُّم تم إعداده. تعرض الفئة طرقًا ملائمة لتحديد عنصر تحكّم في لوحة البيانات ورسمه وتغيير حالته آليًا.
الشركة المصنِّعة
ControlWrapper(opt_spec)
- opt_spec
- [اختيارية]: يمكنك إما استخدام كائن JSON يحدّد عنصر التحكّم، أو إصدار سلسلة تسلسلية لذلك العنصر. تظهر السمات المتوافقة لكائن JSON في الجدول التالي. إذا لم يتم تحديد هذه الخاصية، يجب تحديد جميع الخصائص المناسبة باستخدام الطرق set... التي يعرضها ControlWrapper.
الموقع | النوع | مطلوب | تلقائي | الوصف |
---|---|---|---|---|
controlType | سلسلة | مطلوب | لا ينطبق |
اسم فئة عنصر التحكّم. يمكن حذف اسم حزمة google.visualization لعناصر تحكُّم Google. أمثلة: "CategoryFilter " و"NumberRangeFilter ".
|
containerId | سلسلة | مطلوب | لا ينطبق | رقم تعريف عنصر DOM على صفحتك التي ستستضيف عنصر التحكّم. |
الخيارات | الكائن | اختيارية | لا ينطبق |
كائن يصف خيارات عنصر التحكّم يمكنك استخدام تدوين JavaScript الحرفي أو توفير اسم معرِّف للكائن. مثال:
"options": {"filterColumnLabel": "Age",
"minValue": 10, "maxValue": 80}
|
state | الكائن | اختيارية | لا ينطبق |
تمثّل هذه السمة كائنًا يصف حالة عنصر التحكّم. تجمع الحالة جميع المتغيرات التي يمكن أن يؤثر فيها المستخدم الذي يشغّل عنصر التحكّم. على سبيل المثال، يمكن وصف حالة شريط تمرير النطاق استنادًا إلى المواضع التي يشغلها الإبهام المنخفض والمرتفع لشريط التمرير. يمكنك استخدام
التدوين الحرفي في JavaScript أو توفير اسم معرِّف للكائن.مثال:
"state": {"lowValue": 20, "highValue": 50}
|
الطُرق
يعرض ControlWrapper الطرق الإضافية التالية:
الطريقة | نوع القيمة التي يتم عرضها | الوصف |
---|---|---|
draw() |
لا ينطبق |
لرسم عنصر التحكم. عادةً ما تتولى لوحة المعلومات التي تحمل عنصر التحكم رسمه.
عليك طلب |
toJSON() |
سلسلة | تعرض نسخة سلسلة من تمثيل JSON لعنصر التحكّم. |
clone() |
ControlWrapper | لعرض نسخة عميقة من برنامج تضمين عنصر التحكم. |
getControlType() |
سلسلة |
اسم فئة عنصر التحكّم. إذا كان هذا عنصر تحكّم في Google، لن يكون الاسم مؤهّلاً
باستخدام google.visualization . لذلك، على سبيل المثال، إذا كان هذا العنصر عنصر تحكُّم categoryFilter،
سيتم عرض "CategoryFilter" بدلاً من
"google.visualization.CategoryFilter".
|
getControlName() |
سلسلة | تعرض اسم عنصر التحكّم الذي تمّ تعيينه من قِبل setControlName() . |
getControl() |
مرجع عنصر التحكّم |
لعرض مرجع لعنصر التحكم الذي تم إنشاؤه بواسطة ControlWrapper هذا. سيؤدي هذا الإجراء إلى عرض قيمة فارغة
إلى أن يتم استدعاء draw() في كائن ControlWrapper (أو على
لوحة البيانات التي تحمله)، وسيتم عرض حدث جاهز. يعرض الكائن المعروض طريقة واحدة فقط: resetControl() ، التي تعيد ضبط حالة التحكم على الحالة التي تم إعدادها باستخدامها (مثل إعادة ضبط عنصر نموذج HTML).
|
getContainerId() |
سلسلة | رقم تعريف عنصر حاوية DOM لعنصر التحكّم. |
getOption(key, opt_default_val) |
أي نوع | لعرض قيمة خيار التحكم المحددة
|
getOptions() |
الكائن | تعرض كائن الخيارات لعنصر التحكم هذا. |
getState() |
الكائن | تعرض حالة التحكّم. |
setControlType(type) |
لا ينطبق |
يعيّن نوع عنصر التحكّم. مرِّر اسم فئة عنصر التحكم لإنشاء مثيل. إذا كان هذا عنصر تحكّم في Google، لا يمكنك تأهيله باستخدام google.visualization .
على سبيل المثال، إذا كان لديك شريط تمرير للنطاق فوق عمود رقمي، انتقِل إلى
"NumberRangeFilter".
|
setControlName(name) |
لا ينطبق | تحدّد اسمًا عشوائيًا لعنصر التحكّم. ولن تظهر هذه المعلومات في أي مكان في عنصر التحكّم، لكنّها تُستخدَم كمرجع لك فقط. |
setContainerId(id) |
لا ينطبق | تضبط هذه السياسة رقم تعريف عنصر DOM الذي يحتوي على عنصر التحكّم. |
setOption(key, value) |
لا ينطبق |
تضبط قيمة واحدة لخيار التحكّم، حيث يكون key هو اسم الخيار وvalue هي القيمة. لإلغاء ضبط خيار، مرّ على القيمة "فارغ" (فارغ) للقيمة. يُرجى العِلم أنّ المفتاح قد يكون اسمًا مؤهّلاً، مثل 'vAxis.title' .
|
setOptions(options_obj) |
لا ينطبق | تضبط كائن خيارات كاملاً لعنصر تحكّم. |
setState(state_obj) |
لا ينطبق | لضبط حالة التحكّم. تجمع الحالة جميع المتغيرات التي يمكن أن يؤثر فيها المستخدم الذي يشغّل عنصر التحكّم. على سبيل المثال، يمكن وصف حالة شريط تمرير النطاق استنادًا إلى المواضع التي يشغلها الإبهام المنخفض والمرتفع لشريط التمرير. |
فعاليات
يطرح كائن ControlWrapper الأحداث التالية. تجدر الإشارة إلى أنّه يجب عليك طلب ControlWrapper.draw()
(أو رسم لوحة البيانات التي تحمل عنصر التحكّم) قبل طرح أي أحداث.
الاسم | الوصف | أماكن إقامة |
---|---|---|
error |
يتم الإطلاق عند حدوث خطأ عند محاولة عرض عنصر التحكّم. | رقم التعريف، رسالة |
ready |
عنصر التحكّم جاهز لقبول تفاعل المستخدم ولاستدعاءات الطرق الخارجية. وإذا كنت تريد التفاعل مع عنصر التحكّم وطرق الاتصال بعد رسمه، عليك إعداد أداة استماع
لهذا الحدث قبل استدعاء طريقة draw ، وعدم الاتصال بها إلا بعد
تنشيط الحدث. بدلاً من ذلك، يمكنك الاستماع إلى حدث ready على
لوحة البيانات التي تتضمن طريقتَي التحكّم والتحكّم في المكالمات فقط بعد تنشيط الحدث.
|
لا ينطبق |
statechange |
يتم إطلاقه عندما يتفاعل المستخدم مع عنصر التحكّم، ما يؤثر في حالته. على سبيل المثال، سيتم تنشيط حدث statechange كلما حرّكت أصابع عنصر التحكّم في شريط تمرير النطاق. لاسترداد حالة التحكّم المعدَّلة بعد تنشيط الحدث، اطلب ControlWrapper.getState() .
|
لا ينطبق |
ChartWrapper
راجِع
المستندات google.visualization.ChartWrapper
في قسم مرجع واجهة برمجة التطبيقات الخاص بالرسومات البيانية.
تنطبق الملاحظات التالية عند استخدام ChartWrapper
كجزء من لوحة البيانات:
-
لا تضبط السمات
dataTable
وquery
وdataSourceUrl
وrefreshInterval
بشكل صريح. أما لوحة البيانات التي تحتوي على الرسم البياني، فتهتم بتغذيته بالبيانات التي يحتاج إليها. -
اضبط السمة
view
للإشارة إلى الأعمدة ذات الصلة بالرسم البياني، من بين جميع الأعمدة المتوفرة فيdataTable
المتوفّرة للوحة البيانات، كما هو موضّح في إنشاء مثيلات عناصر التحكّم والرسم البياني.
معرض عناصر التحكّم
الفلاتر هي عناصر رسومية يمكن للمستخدمين استخدامها لاختيار البيانات التي يتم عرضها في الرسم البياني بشكل تفاعلي. يصف هذا القسم فلاتر "الرسم البياني من Google": CategoryFilter وChartRangeFilter وDateRangeFilter وNumberRangeFilter وStringFilter.
يمكنك استخدام أي منها كمَعلمة في ControlWrapper.setControlType()
.
ملاحظة: في وصف الخيارات، يتم استخدام تدوين النقاط لوصف سمات الكائنات المدمجة. على سبيل المثال، يجب تعريف الخيار 'ui.label'
في كائن خيارات بالقيمة var options = {"ui": {"label": "someLabelValue"} };
.
CategoryFilter
أداة اختيار لاختيار قيمة أو أكثر بين مجموعة من القيم المحدّدة
الحالة
الاسم | النوع | القيمة التلقائية | الوصف |
---|---|---|---|
selectedValues | مصفوفة الكائنات أو الأنواع الأولية | لا ينطبق |
مجموعة القيم المحدّدة حاليًا. يجب أن تكون القيم المحددة مجموعة من القيم العامة القابلة للاختيار التي يحددها الخيار values (سيتم تجاهل أي قيمة غير ضرورية). إذا كانت السمة CategoryFilter لا تسمح بالخيارات المتعددة، سيتم فقط الاحتفاظ بالقيمة الأولى في المصفوفة.
|
الخيارات
الاسم | النوع | القيمة التلقائية | الوصف |
---|---|---|---|
filterColumnIndex | الرقم | لا ينطبق |
عمود جدول البيانات الذي يجب أن يعمل الفلتر عليه. ويجب تقديم إما
هذا الخيار أو filterColumnLabel . في حال توفّر كليهما، تكون الأولوية لهذا الخيار.
|
filterColumnLabel | سلسلة | لا ينطبق |
اسم العمود الذي يجب أن يعمل الفلتر عليه. ويجب تقديم إما
هذا الخيار أو filterColumnIndex . وفي حال استخدامهما معًا،
تكون الأولوية للسمة filterColumnIndex .
|
values | مصفوفة | تلقائي |
قائمة القيم التي يمكنك الاختيار منها في حال استخدام مصفوفة من العناصر، يجب أن يكون لها تمثيل toString() مناسب لعرضها للمستخدم. إذا كانت القيمة خالية أو غير محددة، سيتم حساب قائمة القيم تلقائيًا من القيم الموجودة في العمود DataTable التي يعمل عليها عنصر التحكم هذا.
|
useFormattedValue | boolean | false | عند تعبئة قائمة القيم القابلة للاختيار تلقائيًا من عمود DataTable، يعمل هذا الفلتر استنادًا إلى ذلك، سواء سيتم استخدام قيم الخلية الفعلية أو القيم المنسّقة الخاصة بها. |
ui | الكائن | null |
كائن يحتوي على أعضاء لضبط جوانب مختلفة من واجهة مستخدم عنصر التحكّم.
لتحديد خصائص هذا الكائن، يمكنك استخدام التدوين الحرفي للكائن، كما هو موضّح هنا:
{label: 'Metric', labelSeparator: ':'} |
ui.caption | سلسلة | "اختر قيمة..." | الشرح الذي سيتم عرضه داخل أداة منتقي القيمة عند عدم اختيار أي عنصر |
ui.sortValues | boolean | صحيح | ما إذا كان يجب فرز القيم المطلوب الاختيار من بينها أم لا. |
ui.selectedValuesLayout | سلسلة | جانبًا | كيفية عرض القيم المحدّدة، عندما يُسمح بتحديد عناصر متعددة القيم المتاحة:
|
ui.allowNone | boolean | صحيح |
ما إذا كان يُسمح للمستخدم بعدم اختيار أي قيمة إذا كانت السمة false ، كان على المستخدم
اختيار قيمة واحدة على الأقل من القيم المتاحة. أثناء إعداد عنصر التحكّم، إذا تم ضبط الخيار على false ولم يتم تحديد حالة selectedValues ، يتم تلقائيًا اختيار القيمة الأولى من القيم المتاحة.
|
ui.allowMultiple | boolean | صحيح | ما إذا كان يمكن اختيار قيم متعددة بدلاً من قيمة واحدة فقط. |
ui.allowTyping | boolean | صحيح | تشير هذه السمة إلى ما إذا كان مسموحًا للمستخدم بالكتابة في حقل نصي لتضييق نطاق قائمة الخيارات المحتملة (من خلال ميزة الإكمال التلقائي) أو لا. |
ui.label | سلسلة | تلقائي | التصنيف المطلوب عرضه بجانب منتقي الفئات. وفي حال عدم تحديده، سيتم استخدام تسمية العمود الذي يعمل عنصر التحكّم عليه. |
ui.labelSeparator | سلسلة | لا ينطبق | سلسلة فاصلة ملحقة بالتصنيف لفصل التصنيف بشكل مرئي عن أداة اختيار الفئة |
ui.labelStacking | سلسلة | "أفقي" |
تحدّد هذه السمة ما إذا كان يجب عرض التصنيف أعلاه (تكديس عمودي) أو بجانبه (تكديس أفقي)
منتقي الفئات. استخدِم إما 'vertical' أو 'horizontal' .
|
ui.cssClass | سلسلة | 'google-visualization-controls-categoryfilter' | فئة CSS المراد تعيينها لعنصر التحكم والنمط المخصّص. |
ChartRangeFilter
شريط تمرير يحتوي على إصبعَين صغيرَين على رسم بياني لاختيار نطاق قيم من المحور المستمر للرسم البياني
الحالة
الاسم | النوع | القيمة التلقائية | الوصف |
---|---|---|---|
range.start | رقم أو تاريخ أو تاريخ أو وقت أو يوم | قيمة بداية النطاق | بداية النطاق المحدد (شامل). |
range.end | رقم أو تاريخ أو تاريخ أو وقت أو يوم | القيمة النهائية للنطاق | نهاية النطاق المحدد، شامل. |
الخيارات
الاسم | النوع | القيمة التلقائية | الوصف |
---|---|---|---|
filterColumnIndex | الرقم | لا ينطبق |
فهرس العمود في جدول البيانات الذي يعمل عليه الفلتر.
ويجب تقديم هذا الخيار أو filterColumnLabel . في حال توفّر كليهما، تكون الأولوية لهذا الخيار.
يُرجى العِلم أنّه يمكن فقط تحديد فهرس لعمود نطاق مضمَّن في المحور المستمر للرسم البياني المرسوم داخل عنصر التحكّم. |
filterColumnLabel | سلسلة | لا ينطبق |
تسمية عمود جدول البيانات الذي يعمل عليه الفلتر. ويجب تقديم إما هذا الخيار أو filterColumnIndex . في حال تقديم كليهما، تكون الأولوية للسمة filterColumnIndex .
يُرجى العِلم أنّه من المنطقي فقط تحديد تصنيف لعمود النطاق المضمّن في المحور المستمر للرسم البياني المرسوم داخل عنصر التحكّم. |
ui | الكائن | null |
كائن يحتوي على أعضاء لضبط جوانب مختلفة من واجهة مستخدم عنصر التحكّم.
لتحديد خصائص هذا الكائن، يمكنك استخدام التدوين الحرفي للكائن، كما هو موضّح هنا:
{chartType: 'ScatterChart', chartOptions: {pointSize: 10}} |
ui.chartType | سلسلة | "مخطط التحرير والسرد" |
نوع الرسم البياني المرسوم داخل عنصر التحكّم. يمكن أن يكون أحد الخيارات التالية: "AreaChart" أو "رسم بياني خطي" أو "مخطط مختلط" أو "مخطط مبعثر". |
ui.chartOptions | الكائن |
{ 'enableInteractivity': false, 'chartArea': {'height': '100%'}, 'legend': {'position': 'none'}, 'hAxis': {'textPosition': 'in'}, 'vAxis': { 'textPosition': 'none', 'gridlines': {'color': 'none'} } } |
خيارات ضبط الرسم البياني المرسومة داخل عنصر التحكّم
يسمح بالمستوى نفسه من الضبط مثل أي رسم بياني في لوحة البيانات، ويلتزم بالتنسيق نفسه المقبول في ChartWrapper.setOptions().
يمكنك تحديد خيارات إضافية أو إلغاء الخيارات التلقائية (علمًا أنّه تم اختيار الإعدادات التلقائية بعناية لتحقيق أفضل مظهر). |
ui.chartView | كائن أو سلسلة (كائن تسلسلي) | null |
تمثّل هذه السمة طريقة العرض التي سيتم تطبيقها على جدول البيانات المستخدَمة لرسم الرسم البياني داخل عنصر التحكّم. ويسمح بمستوى الإعداد نفسه مثل أي رسم بياني في لوحة البيانات، ويلتزم بالتنسيق نفسه المقبول في ChartWrapper.setView().
في حال عدم تحديده، يتم استخدام جدول البيانات نفسه لرسم الرسم البياني.
يُرجى العلم أنّ المحور الأفقي للرسم البياني المرسوم يجب أن يكون
مستمرًا،
لذلك يجب تحديد |
ui.minRangeSize | الرقم | يتم تفسير فرق قيمة البيانات على أنه 1 بكسل |
تمثّل هذه السمة الحد الأدنى لحجم النطاق القابل للاختيار (range.end - range.start )، والمحدّد في وحدات
قيمة البيانات. بالنسبة للمحور الرقمي، يكون رقمًا (ليس بالضرورة عددًا صحيحًا).
بالنسبة إلى محور التاريخ أو التاريخ أو الوقت أو الوقت، يكون العدد صحيحًا يحدد الفرق بالملي ثانية.
|
ui.snapToData | boolean | false |
إذا كانت القيمة هي true، فسيتم محاذاة عناصر النطاق إلى أقرب نقاط بيانات.
في هذه الحالة، تكون نقاط نهاية النطاق الذي يعرضه getState() بالضرورة قيمًا في جدول البيانات.
|
فعاليات
إضافات إلى أحداث ControlWrapper:
الاسم | الوصف | أماكن إقامة |
---|---|---|
statechange |
وكما هو موضّح في كل أداة ControlWrapper، تحتوي فقط على سمة منطقية إضافية، وهي inProgress ، تحدد ما إذا كان يتم تغيير الحالة في الوقت الحالي (يتم سحب إما إحدى الصور المصغرة أو النطاق نفسه).
|
inProgress |
DateRangeFilter
شريط تمرير ذو قيمة مزدوجة لاختيار نطاقات التواريخ
جرِّب تحريك شريط التمرير لتغيير الصفوف التي تظهر في الجدول أدناه.
الحالة
الاسم | النوع | القيمة التلقائية | الوصف |
---|---|---|---|
lowValue | الرقم | لا ينطبق | الحد الأدنى للنطاق المحدد، شامل. |
highValue | الرقم | لا ينطبق | المدى الأعلى للنطاق المحدد، شامل. |
lowThumbAtMinimum | boolean | لا ينطبق |
تحدّد هذه السمة ما إذا كان سيتم قفل الإبهام السفلي لشريط التمرير عند الوصول إلى الحد الأدنى للنطاق المسموح به. وفي حال ضبطها،
يتم إلغاء lowValue .
|
highThumbAtMaximum | boolean | لا ينطبق |
ما إذا كان سيتم قفل الإبهام الأعلى لشريط التمرير عند الوصول إلى أقصى نطاق مسموح به. وفي حال ضبطها،
يتم إلغاء highValue .
|
الخيارات
الاسم | النوع | القيمة التلقائية | الوصف |
---|---|---|---|
filterColumnIndex | الرقم | لا ينطبق |
عمود جدول البيانات الذي يجب أن يعمل الفلتر عليه. ويجب تقديم إما
هذا الخيار أو filterColumnLabel . في حال توفّر كليهما، تكون الأولوية لهذا الخيار.
يجب أن يشير إلى عمود من النوع number .
|
filterColumnLabel | سلسلة | لا ينطبق |
اسم العمود الذي يجب أن يعمل الفلتر عليه. ويجب تقديم إما
هذا الخيار أو filterColumnIndex . وفي حال استخدامهما معًا،
تكون الأولوية للسمة filterColumnIndex . ويجب أن يشير إلى عمود من النوع
number .
|
minValue | التاريخ | تلقائي | الحد الأدنى المسموح به للقيمة للنطاق الأدنى. في حال عدم تحديدها، سيتم استنتاج القيمة من محتوى جدول البيانات الذي يديره عنصر التحكّم. |
maxValue | التاريخ | تلقائي | الحد الأقصى المسموح به للقيمة للنطاق الأعلى. في حال عدم تحديدها، سيتم استنتاج القيمة من محتوى جدول البيانات الذي يديره عنصر التحكّم. |
ui | الكائن | null |
كائن يحتوي على أعضاء لضبط جوانب مختلفة من واجهة مستخدم عنصر التحكّم.
لتحديد خصائص هذا الكائن، يمكنك استخدام التدوين الحرفي للكائن، كما هو موضّح هنا:
{label: 'Age', labelSeparator: ':'} |
ui.format | الكائن | لا ينطبق | كيفية تمثيل التاريخ كسلسلة. يتم قبول أي تنسيق تاريخ صالح. |
ui.step | سلسلة | يوم | أدنى تغيير ممكن عند سحب الصور المصغرة لشريط التمرير: يمكن أن يكون أي وحدة زمنية حتى "يوم". ("الشهر" و"السنة" غير متاحَين حتى الآن). |
ui.ticks | الرقم | تلقائي | عدد علامات التجزئة (المواضع الثابتة في شريط النطاق) التي يمكن أن تشغلها الإبهام في شريط التمرير. |
ui.unitIncrement | سلسلة | "1" | المبلغ المطلوب زيادته لزيادات الوحدات في نطاقات النطاق. تعادل زيادة الوحدات استخدام مفاتيح الأسهم لتحريك الإبهام في شريط التمرير. |
ui.blockIncrement | الرقم | 10 | المقدار المطلوب زيادته لزيادات الكتلة لحدود النطاق. تعادل زيادة كتلة استخدام مفتاحي pgUp وpgDown لتحريك الإبهام في شريط التمرير. |
ui.showRangeValues | boolean | صحيح | لتحديد ما إذا كان سيتم تضمين تصنيفات بجانب شريط التمرير تعرض نطاقات النطاق المحدّد. |
ui.orientation | سلسلة | "أفقي" | اتجاه شريط التمرير. إما 'horizontal' أو 'vertical' . |
ui.label | سلسلة | تلقائي | التصنيف المطلوب عرضه بجانب شريط التمرير. وفي حال عدم تحديده، سيتم استخدام تسمية العمود الذي يعمل عليه عنصر التحكّم. |
ui.labelSeparator | سلسلة | لا ينطبق | سلسلة فاصلة ملحقة بالتصنيف لفصل التصنيف عن شريط التمرير بصريًا |
ui.labelStacking | سلسلة | "أفقي" |
تحدّد هذه السمة ما إذا كان يجب عرض التصنيف أعلاه (تكديس عمودي) أو بجانبه (تكديس أفقي). استخدِم إما 'vertical' أو 'horizontal' .
|
ui.cssClass | سلسلة | 'google-visualization-controls-rangefilter' | فئة CSS المراد تعيينها لعنصر التحكم والنمط المخصّص. |
NumberRangeFilter
شريط تمرير ثنائي القيمة لاختيار نطاقات القيم الرقمية
الحالة
الاسم | النوع | القيمة التلقائية | الوصف |
---|---|---|---|
lowValue | الرقم | لا ينطبق | الحد الأدنى للنطاق المحدد، شامل. |
highValue | الرقم | لا ينطبق | المدى الأعلى للنطاق المحدد، شامل. |
lowThumbAtMinimum | boolean | لا ينطبق |
تحدّد هذه السمة ما إذا كان سيتم قفل الإبهام السفلي لشريط التمرير عند الوصول إلى الحد الأدنى للنطاق المسموح به. وفي حال ضبطها،
يتم إلغاء lowValue .
|
highThumbAtMaximum | boolean | لا ينطبق |
ما إذا كان سيتم قفل الإبهام الأعلى لشريط التمرير عند الوصول إلى أقصى نطاق مسموح به. وفي حال ضبطها،
يتم إلغاء highValue .
|
الخيارات
الاسم | النوع | القيمة التلقائية | الوصف |
---|---|---|---|
filterColumnIndex | الرقم | لا ينطبق |
عمود جدول البيانات الذي يجب أن يعمل الفلتر عليه. ويجب تقديم إما
هذا الخيار أو filterColumnLabel . في حال توفّر كليهما، تكون الأولوية لهذا الخيار.
يجب أن يشير إلى عمود من النوع number .
|
filterColumnLabel | سلسلة | لا ينطبق |
اسم العمود الذي يجب أن يعمل الفلتر عليه. ويجب تقديم إما
هذا الخيار أو filterColumnIndex . وفي حال استخدامهما معًا،
تكون الأولوية للسمة filterColumnIndex . ويجب أن يشير إلى عمود من النوع
number .
|
minValue | الرقم | تلقائي | الحد الأدنى المسموح به للقيمة للنطاق الأدنى. في حال عدم تحديدها، سيتم استنتاج القيمة من محتوى جدول البيانات الذي يديره عنصر التحكّم. |
maxValue | الرقم | تلقائي | الحد الأقصى المسموح به للقيمة للنطاق الأعلى. في حال عدم تحديدها، سيتم استنتاج القيمة من محتوى جدول البيانات الذي يديره عنصر التحكّم. |
ui | الكائن | null |
كائن يحتوي على أعضاء لضبط جوانب مختلفة من واجهة مستخدم عنصر التحكّم.
لتحديد خصائص هذا الكائن، يمكنك استخدام التدوين الحرفي للكائن، كما هو موضّح هنا:
{label: 'Age', labelSeparator: ':'} |
ui.format | الكائن | لا ينطبق | كيفية تمثيل الرقم كسلسلة. يتم قبول أي تنسيق أرقام صالح. |
ui.step | الرقم | 1، أو يتم احتسابها من خلال ticks إذا تم تحديدها |
تمثّل هذه السمة الحد الأدنى للتغيير المحتمل عند سحب عناصر التحكّم في شريط التمرير. |
ui.ticks | الرقم | تلقائي | عدد علامات التجزئة (المواضع الثابتة في شريط النطاق) التي يمكن أن تشغلها الإبهام في شريط التمرير. |
ui.unitIncrement | الرقم | 1 | المبلغ المطلوب زيادته لزيادات الوحدات في نطاقات النطاق. تعادل زيادة الوحدات استخدام مفاتيح الأسهم لتحريك الإبهام في شريط التمرير. |
ui.blockIncrement | الرقم | 10 | المقدار المطلوب زيادته لزيادات الكتلة لحدود النطاق. تعادل زيادة كتلة استخدام مفتاحي pgUp وpgDown لتحريك الإبهام في شريط التمرير. |
ui.showRangeValues | boolean | صحيح | لتحديد ما إذا كان سيتم تضمين تصنيفات بجانب شريط التمرير تعرض نطاقات النطاق المحدّد. |
ui.orientation | سلسلة | "أفقي" | اتجاه شريط التمرير. إما 'horizontal' أو 'vertical' . |
ui.label | سلسلة | تلقائي | التصنيف المطلوب عرضه بجانب شريط التمرير. وفي حال عدم تحديده، سيتم استخدام تسمية العمود الذي يعمل عليه عنصر التحكّم. |
ui.labelSeparator | سلسلة | لا ينطبق | سلسلة فاصلة ملحقة بالتصنيف لفصل التصنيف عن شريط التمرير بصريًا |
ui.labelStacking | سلسلة | "أفقي" |
تحدّد هذه السمة ما إذا كان يجب عرض التصنيف أعلاه (تكديس عمودي) أو بجانبه (تكديس أفقي). استخدِم إما 'vertical' أو 'horizontal' .
|
ui.cssClass | سلسلة | 'google-visualization-controls-rangefilter' | فئة CSS المراد تعيينها لعنصر التحكم والنمط المخصّص. |
StringFilter
حقل إدخال نص بسيط يتيح لك فلترة البيانات من خلال مطابقة السلاسل. ويتم تعديل الجدول بعد كل
ضغطة على مفتاح: جرِّب كتابة j
لتضييق نطاق الجدول أدناه ليشمل "جون" و"جيسيكا".
الحالة
الاسم | النوع | القيمة التلقائية | الوصف |
---|---|---|---|
القيمة | سلسلة أو كائن | لا ينطبق | النص الذي تم إدخاله حاليًا في حقل إدخال عنصر التحكّم |
الخيارات
الاسم | النوع | القيمة التلقائية | الوصف |
---|---|---|---|
filterColumnIndex | الرقم | لا ينطبق |
عمود جدول البيانات الذي يجب أن يعمل الفلتر عليه. ويجب تقديم إما
هذا الخيار أو filterColumnLabel . في حال توفّر كليهما، تكون الأولوية لهذا الخيار.
|
filterColumnLabel | سلسلة | لا ينطبق |
اسم العمود الذي يجب أن يعمل الفلتر عليه. ويجب تقديم إما
هذا الخيار أو filterColumnIndex . وفي حال استخدامهما معًا،
تكون الأولوية للسمة filterColumnIndex .
|
matchType | سلسلة | "بادئة" |
تحدّد هذه السمة ما إذا كان يجب أن يتطابق عنصر التحكّم مع القيم الدقيقة فقط ('exact' )، أو البادئات التي تبدأ من بداية القيمة ('prefix' )، أو أي سلسلة فرعية ('any' ).
|
caseSensitive | boolean | false | تحدّد هذه السمة ما إذا كانت المطابقة حسّاسة لحالة الأحرف أم لا. |
useFormattedValue | boolean | false | لتحديد ما إذا كان يجب أن يتطابق عنصر التحكّم مع القيم المنسَّقة في الخلية أو القيم الفعلية لإعادة الضبط. |
ui | الكائن | null |
كائن يحتوي على أعضاء لضبط جوانب مختلفة من واجهة مستخدم عنصر التحكّم.
لتحديد خصائص هذا الكائن، يمكنك استخدام التدوين الحرفي للكائن، كما هو موضّح هنا:
{label: 'Name', labelSeparator: ':'} |
ui.realtimeTrigger | boolean | صحيح | لتحديد ما إذا كان يجب أن يتطابق عنصر التحكّم في أي وقت يتم فيه الضغط على مفتاح أو فقط عند "تغيير" حقل الإدخال (فقدان التركيز أو الضغط على مفتاح Enter). |
ui.label | سلسلة | تلقائي | التصنيف المطلوب عرضه بجانب حقل الإدخال. وفي حال عدم تحديده، سيتم استخدام تسمية العمود الذي يعمل عنصر التحكّم عليه. |
ui.labelSeparator | سلسلة | لا ينطبق | سلسلة فاصلة ملحقة بالتصنيف لفصل التصنيف عن حقل الإدخال بصريًا |
ui.labelStacking | سلسلة | "أفقي" |
تحدّد هذه السمة ما إذا كان يجب عرض التصنيف أعلى (تكديس عمودي) أو بجانبه (تكديس أفقي). استخدِم إما 'vertical' أو 'horizontal' .
|
ui.cssClass | سلسلة | 'google-visualization-controls-stringfilter' | فئة CSS المراد تعيينها لعنصر التحكم والنمط المخصّص. |