ملاحظة مهمة: لقد تم إيقاف جزء "مخططات الصور" في "أدوات مخططات Google" رسميًا اعتبارًا من 20 نيسان (أبريل) 2012. وسيبقى بإمكانك استخدامه وفقًا لسياسة الإيقاف المتّبعة لدينا.
نظرة عامة
الرسم البياني للصور العامة هو برنامج تضمين عام لجميع الرسوم البيانية التي تنتجها Google Chart API. يُرجى قراءة مستندات Chart API قبل محاولة استخدام هذا التمثيل المرئي. يُرجى العِلم أنّه يمكنك إرسال ما يصل إلى 16 ألف بيانات باستخدام هذا التمثيل المرئي، على عكس الحدّ الأقصى المسموح به البالغ 2K في الطلبات المباشرة إلى Chart API.
يتم تمرير كل البيانات إلى الرسوم البيانية باستخدام DataTable أو DataView. بالإضافة إلى ذلك، يتم تمرير بعض التصنيفات كأعمدة في جدول البيانات.
يتم تمرير جميع معلَمات عناوين URL الأخرى لواجهة برمجة التطبيقات Chart API (باستثناء chd
) كخيارات.
بواسطة: Google
أمثلة
في ما يلي أمثلة على عدة أنواع مختلفة من المخططات.
رسم بياني خطي
<html> <head> <script type='text/javascript' src='https://www.gstatic.com/charts/loader.js'></script> <script type='text/javascript'> google.charts.load("current", {packages:["imagechart"]}); </script> <script type='text/javascript'> google.charts.setOnLoadCallback(drawChart); function drawChart() { var dataTable = new google.visualization.DataTable(); dataTable.addColumn('string'); dataTable.addColumn('number'); dataTable.addColumn('string'); // Row data is [chl, data point, point label] dataTable.addRows([ ['January',40,undefined], ['February',60,'Initial recall'], ['March',60,'Product withdrawn'], ['April',45,undefined], ['May',47,'Relaunch'], ['June',75,undefined], ['July',70,undefined], ['August',72,undefined] ]); var options = {cht: 'lc', chds:'0,160', annotationColumns:[{column:2, size:12, type:'flag', priority:'high'},]}; var chart = new google.visualization.ImageChart(document.getElementById('line_div')); chart.draw(dataTable, options); } </script> </head> <body> <div id='line_div'></div> </body> </html>
رسم بياني شريطي عمودي
يُرجى العلم أنّه في الرسوم البيانية الشريطية الملتفّة، لا تحتاج إلى تحديد chxt='x' كما تفعل في حال استدعاء الرسم البياني بنفسك. وإذا لم تحدّد محورًا، يحاول الرسم البياني بالصور العام إعداد الرسم البياني بشكل صحيح بشكل تلقائي.
<html> <head> <script type='text/javascript' src='https://www.gstatic.com/charts/loader.js'></script> <script type='text/javascript'> google.charts.load("current", {packages:["imagechart"]}); </script> <script type='text/javascript'> google.charts.setOnLoadCallback(drawChart); function drawChart() { var dataTable = new google.visualization.DataTable(); dataTable.addColumn('number'); dataTable.addColumn('number'); dataTable.addRows([ [10,50], [50,60], [60,100], [80,40], [40,20] ]); var options = {cht: 'bvs', chs: '300x125', colors:['#4D89F9','#C6D9FD'], chds:'0,160', chxl:'0:|oranges|apples|pears|bananas|kiwis|'}; var chart = new google.visualization.ImageChart(document.getElementById('bar_div')); chart.draw(dataTable, options); } </script> </head> <body> <div id='bar_div'></div> </body> </html>
رسم بياني دائري
<html> <head> <script type='text/javascript' src='https://www.gstatic.com/charts/loader.js'></script> <script type='text/javascript'> google.charts.load("current", {packages:["imagechart"]}); </script> <script type='text/javascript'> google.charts.setOnLoadCallback(drawChart); function drawChart() { var dataTable = new google.visualization.DataTable(); dataTable.addColumn('string'); dataTable.addColumn('number'); dataTable.addRows([ ['January',12], ['February',8], ['March',3] ]); var options = {cht: 'p', title: 'Sales per Month', chp: 0.628, chs: '400x200', colors:['#3399CC','#00FF00','#0000FF']}; var chart = new google.visualization.ImageChart(document.getElementById('pie_div')); chart.draw(dataTable, options); } </script> </head> <body> <div id='pie_div'></div> </body> </html>
رسم بياني نسيجي
<html> <head> <script type='text/javascript' src='https://www.gstatic.com/charts/loader.js'></script> <script type='text/javascript'> google.charts.load("current", {packages:["imagechart"]}); </script> <script type='text/javascript'> google.charts.setOnLoadCallback(drawChart); function drawChart() { var dataTable = new google.visualization.DataTable(); dataTable.addColumn('number'); dataTable.addColumn('number'); dataTable.addRows([ [100,10], [80,20], [60,30], [30,40], [25,50], [20,60], [10,70] ]); var chart = new google.visualization.ImageChart(document.getElementById('radar_div')); var options = {cht: 'rs', chco: '00FF00,FF00FF', chg: '25.0,25.0,4.0,4.0', chm: 'B,FF000080,0,1.0,5.0|B,FF990080,1,1.0,5.0',}; chart.draw(dataTable, options); } </script> </head> <body> <div id='radar_div'></div> </body> </html>
مخطط خريطة
<html> <head> <script type='text/javascript' src='https://www.gstatic.com/charts/loader.js'></script> <script type='text/javascript'> google.charts.load("current", {packages:["imagechart"]}); </script> <script type='text/javascript'> google.charts.setOnLoadCallback(drawChart); function drawChart() { var dataTable = new google.visualization.DataTable(); dataTable.addColumn('string'); dataTable.addColumn('number'); dataTable.addRows([ ['DZ',0], ['EG',50], ['MG',50], ['GM',35], ['KE',100], ['ZA',100] ]); var options = {cht: 't', chtm: 'africa', chco: '777777,FFC6A5,FF0000', chs: '440x220'}; var chart = new google.visualization.ImageChart(document.getElementById('map_div')); chart.draw(dataTable, options); } </script> </head> <body> <div id='map_div'></div> </body> </html>
جارٍ التحميل
اسم حزمة "google.charts.load
" هو "imagechart"
google.charts.load('current', {'packages': ['imagechart']});
اسم فئة العرض المرئي هو google.visualization.ImageChart
.
var visualization = new google.visualization.ImageChart(container_div);
تنسيق البيانات
هناك تنسيقان معممان للبيانات: أحدهما لمخططات الخرائط والآخر لجميع المخططات الأخرى. يُرجى العِلم أنّ التنسيق الرقمي الوحيد المتوافق مع البيانات هو نوع "رقم JavaScript".
ملاحظة: يجب عدم ترميز عناوين URL لأي قيم سلسلة يتم تمريرها كبيانات أو خيارات.
مخططات الخرائط
يأخذ مخطط الخريطة جدول بيانات يحتوي على عمودين مطلوبين:
- العمود الأول: [string] رمز البلد أو الولاية/المقاطعة
- العمود الثاني - [number] قيمة هذا البلد أو الولاية
اطّلِع على مستندات الرسم البياني للخريطة للحصول على مزيد من المعلومات.
الرسومات البيانية غير المستندة إلى الخريطة
تأخذ الرسوم البيانية التي لا تستند إلى خريطة إلى جدول بيانات يحتوي على عمودَين اختياريَين (أحدهما في البداية والواحد في النهاية) وعمود بيانات واحد أو أكثر بينهما:
- العمود الأول: [سلسلة اختيارية] يمثّل كل إدخال تصنيفًا مستخدَمًا على المحور "س" (يعادل المَعلمة
chl
أوchxl
) في الرسوم البيانية المتوافقة. - الأعمدة التالية: أي عدد من الأعمدة الرقمية، يمثّل كل منها سلسلة بيانات.
- الأعمدة الأخيرة: [اختيارية، سلسلة] أي عدد من أعمدة السلسلة
بعد أعمدة البيانات، حيث يمثّل كل إدخال تصنيف نقطة بيانات للرسوم البيانية المتوافقة. إذا كنت تريد استخدام هذا العمود،
يجب تحديد الخيار
annotationColumns
.
سيتم عرض البيانات بطرق مختلفة، بناءً على نوع الرسم البياني. اطّلِع على مستندات الرسم البياني.
ملاحظة حول فهارس الأعمدة: يزيل التمثيل البصري للرسم البياني للصور العامة أعمدة السلاسل من جدول البيانات قبل إرسال الجدول إلى خدمة Chart API. وبالتالي، تتضمّن فهارس الأعمدة في الخيارات والطرق والأحداث المحدّدة في هذه الصفحة أعمدة السلسلة في عدد الفهرس، لكن فهارس الأعمدة في أي خيارات تعالجها خدمة Chart API (على سبيل المثال، الخيار chm
) تتجاهل أعمدة السلسلة في عدد الفهرس.
خيارات الضبط
يتم تحديد الخيارات التالية لهذا التمثيل البصري. حدِّدها في كائن الخيارات الذي يتم تمريره إلى طريقة draw()
للتمثيل البصري.
لا تتوفّر بعض الخيارات التالية مع جميع أنواع الرسوم البيانية، لذا يُرجى الاطّلاع على المستندات
الخاصة بنوع الرسم البياني للصور الثابتة. يمكنك ضبط أيّ مَعلمة لعنوان URL لواجهة برمجة التطبيقات في Chart API كخيار. على سبيل المثال، سيتم تحديد معلَمة عنوان URL chg=50,50
من التمثيل البصري للرسم البياني
بهذه الطريقة: options['chg'] = '50,50'
.
ملاحظة حول الألوان: يتم تحديد خيارات الألوان، مثل colors
وcolor
وbackgroundColor
، بتنسيق ألوان Chart API.
يشبه هذا التنسيق التنسيق #RRGGBB، إلّا أنّه يتضمّن رقمًا سداسيًا عشريًا رابعًا اختياريًا للإشارة إلى الشفافية. الألوان التي يمكن للمستخدمين قراءتها،
مثل "الأحمر" و"الأخضر" و"الأزرق" وغيرها غير متوافقة. لا يتضمّن تنسيق ألوان Chart API
الرمز # في البداية، ولكنّ خيارات العرض المرئي للرسم البياني العام للصور ستقبل رموز الألوان التي تحتوي على علامة # أو لا.
الاسم | النوع | القيمة التلقائية | الوصف |
---|---|---|---|
annotationColumns | Array<object> | لا ينطبق | تصنيفات نقاط البيانات لأنواع مختلفة من الرسوم البيانية. هذه مصفوفة من العناصر، يعيّن كل منها تصنيفًا منسقًا لنقطة بيانات واحدة في الرسم البياني. ولا يتوفّر هذا الخيار إلا للرسومات البيانية التي تتيح نقاط البيانات (راجِع الموضوع المرتبط لمعرفة أيها)، ويجب أن يحتوي جدول البيانات على عمود واحد على الأقل من أعمدة تصنيف السلسلة. يتضمّن كل كائن في المصفوفة السمات التالية:
مثال: يحدّد هذا المقتطف تصنيفًا نصيًا أسود بحجم 12 بكسل، ويكون النص مأخوذًا من العمود 0، ويتم تعيينه لنقطة البيانات في العمود 2 من الصف نفسه: |
backgroundColor | سلسلة | '#FFFFFF' (أبيض) | لون خلفية الرسم البياني في تنسيق ألوان Chart API |
اللون | سلسلة | تلقائية | تحدد لونًا أساسيًا لاستخدامه في كل السلاسل، وستكون كل سلسلة تدرجًا
للون المحدد. ويتم تحديد الألوان في تنسيق ألوان Chart API.
يتم تجاهل السياسة إذا تم تحديد colors . |
الألوان | مصفوفة<string> | تلقائية | استخدِم هذا الخيار لتحديد ألوان معيّنة لكل سلسلة بيانات. ويتم تحديد الألوان في تنسيق ألوان Chart API.
يُستخدم اللون i في عمود البيانات i، والذي يلتف حول البداية
إذا كان هناك أعمدة بيانات أكثر من الألوان. إذا كانت صيغ اللون الواحد مقبولة لكل السلاسل، استخدِم الخيار color
بدلاً من ذلك. |
enableEvents | boolean | false | يؤدي إلى طرح الرسوم البيانية للأحداث التي يشغّلها المستخدم، مثل النقر أو الماوس. لا تتوفّر هذه الميزة إلا لأنواع محددة من الرسوم البيانية. يمكنك الاطّلاع على الأحداث أدناه. |
fill | boolean | false | إذا كانت القيمة هي true، يتم ملء المنطقة أسفل كل سطر. يتوفر هذا الخيار للمخططات الخطية فقط. |
firstHiddenColumn | الرقم | لا ينطبق | فهرس عمود بيانات. لن يتم استخدام العمود المُدرَج مع جميع الأعمدة التالية لرسم عناصر سلسلة الرسم البياني الرئيسية (مثل الخطوط على الرسم البياني الخطي أو الأشرطة في الرسم البياني الشريطي)، ولكن سيتم استخدامه كبيانات للعلامات والتعليقات التوضيحية الأخرى. يُرجى العِلم أنّ أعمدة السلاسل يتم تضمينها في عدد الفهرس هذا. |
الطول | الرقم | 200 | تمثّل هذه السمة ارتفاع الرسم البياني بالبكسل. إذا لم يكن العنصر الذي يحتوي على العنصر متوفرًا أو لا يقع ضمن نطاق مقبول، يتم استخدام ارتفاع العنصر الذي يتضمّنه. وإذا كان ذلك أيضًا خارج النطاق المقبول، سيتم استخدام الارتفاع التلقائي. |
تصنيفات | سلسلة | "بدون" | [الرسم البياني الدائري فقط] التصنيف، إن توفّر، الذي يجب عرضه لكل شريحة اختَر من بين القيم التالية:
|
أسطورة | سلسلة | "يمين" | مكان عرض وسيلة إيضاح الرسم البياني بالنسبة إلى الرسم البياني حدِّد أحد الخيارات التالية: 'top' أو 'bottom' أو 'left' أو 'right' أو 'none'. ويتم تجاهله في الرسوم البيانية التي لا تتضمّن وسائل إيضاح (مثل الرسوم البيانية في الخريطة). |
الحد الأقصى | الرقم | الحد الأقصى لقيمة البيانات | القيمة القصوى المعروضة على المقياس. يتم تجاهله في الرسوم البيانية الدائرية. القيمة التلقائية هي الحد الأقصى لقيمة البيانات، باستثناء الرسوم البيانية الشريطية، حيث تكون القيمة التلقائية الحد الأقصى للبيانات. ويتم تجاهل ذلك في الرسوم البيانية الشريطية عندما يحتوي الجدول على أكثر من عمود بيانات واحد. |
دقيقة | الرقم | قيمة بيانات أدنى | تمثّل هذه السمة القيمة الصغرى المعروضة على المقياس. يتم تجاهله في الرسوم البيانية الدائرية. والقيمة التلقائية هي الحد الأدنى لقيمة البيانات، باستثناء الرسوم البيانية الشريطية، حيث تكون القيمة التلقائية صفرًا. ويتم تجاهل هذا في الرسوم البيانية الشريطية عندما يحتوي الجدول على أكثر من عمود بيانات واحد. |
showCategoryLabels | boolean | صحيح | تحديد ما إذا كان يجب ظهور التصنيفات على محور الفئة (أي الصف) يتوفر هذا الخيار للمخططات الخطية والشريطية فقط. |
showValueLabels | boolean | صحيح | تعرِض القيمة "صحيح" تصنيفًا على محور القيمة. وهي متاحة فقط للمخططات الخطية والشريطية. |
singleColumnDisplay | الرقم | لا ينطبق | يعرض عمود البيانات المحدّد فقط. يمثّل هذا الرقم فهرسًا يستند إلى صفر في الجدول، حيث يمثّل الصفر أول عمود بيانات. ويكون اللون المخصّص للعمود الواحد هو نفسه اللون الذي يتم به عرض جميع الأعمدة. ولا يمكن استخدامها مع المخططات الدائرية أو الخرائط. |
title | سلسلة | سلسلة فارغة | عنوان المخطط. إذا لم يتم تحديده، فلن يتم عرض أي عنوان. معلمة الرسم البياني المكافئ هي chtt . |
valueLabelsInterval | الرقم | تلقائية | الفاصل الزمني الذي يتم خلاله إظهار تصنيفات محور القيمة. على سبيل المثال، إذا كانت قيمة السمة min
هي 0 والقيمة max هي 100 والقيمة valueLabelsInterval
هي 20، سيعرض الرسم البياني تصنيفات المحاور على القيم التالية: (0 و20 و40 و60 و80 100). |
العرض | الرقم | 400 | عرض الرسم البياني بالبكسل يتم استخدام عرض العنصر الذي يتضمن الصورة إذا لم تكن الصورة ضمن نطاق مقبول أو إذا لم تكن ضمن النطاق المقبول. وإذا كان ذلك أيضًا خارج النطاق المقبول، سيتم استخدام العرض التلقائي. |
الطُرق
الطريقة | نوع القيمة التي يتم عرضها | الوصف |
---|---|---|
draw(data, options) |
لا ينطبق | لرسم الخريطة. |
getImageUrl() |
سلسلة | عرض عنوان URL لواجهة برمجة تطبيقات Google Chart API المُستخدم لطلب الرسم البياني. يُرجى العِلم أنّ النص يمكن أن يتجاوز 2,000 حرف. راجِع Google Chart API لمعرفة مزيد من التفاصيل. |
الأحداث
إذا ضبطت السمة enableEvents
على "صحيح"، ستعرض الرسوم البيانية المتوافقة
أحداث أحداث المستخدمين المُدرَجة في الجدول أدناه. تعرض كل هذه الأحداث
كائن event
بالسمات التالية:
type
- سلسلة تمثّل نوع الحدثregion
- رقم تعريف للمنطقة المتأثرة أضِف المَعلمةchof=json
إلى نوع الرسم البياني الأولي للاطّلاع على قائمة بالأسماء المتاحة. يمكنك الانتقال إلىchof=json
للاطّلاع على مزيد من التفاصيل.
الاسم | الوصف | النوع قيمة |
---|---|---|
error |
يتم إطلاقه عند حدوث خطأ عند محاولة عرض الرسم البياني. | رقم التعريف، رسالة |
onmouseover |
يتم الإطلاق عندما يمرر المستخدم مؤشر الماوس فوق عنصر في الرسم البياني. | "الماوس" |
onmouseout |
يتم إطلاقه عندما يبتعد المستخدم عن عنصر الرسم البياني. | "ماوس" |
onclick |
يتم الإطلاق عندما ينقر أحد المستخدمين على عنصر في الرسم البياني. | "نقر" |
ما هي الرسوم البيانية التي تتوافق مع الأحداث؟
أي رسوم بيانية تتيح استخدام مَعلمة chof=json
التي تتيح عرض الأحداث (أي كل الرسوم البيانية باستثناء الرسوم البيانية الخاصة،
مثل رموز الاستجابة السريعة).
مثال على معالجة الأحداث
في ما يلي مثال يعرض شريطًا يسجِّل نقرات الماوس.
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <title> Google Image Events Sample </title> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> google.charts.load('current', {packages: ['imagechart']}); </script> <script type="text/javascript"> function drawVisualization() { var dataTable = new google.visualization.DataTable(); dataTable.addColumn('number'); dataTable.addColumn('number'); dataTable.addRows([ [10,50], [50,60], [60,100], [80,40], [40,20] ]); var options = {cht: 'bvs', chs: '300x125', colors:['#4D89F9','#C6D9FD'], chds:'0,160', chxl:'0:|oranges|apples|pears|bananas|kiwis|', enableEvents:true}; var chart = new google.visualization.ImageChart(document.getElementById('visualization')); chart.draw(dataTable, options); // Assign event handler google.visualization.events.addListener(chart, 'onclick', mouseEventHandler); } google.charts.setOnLoadCallback(drawVisualization); // Define an event handler function mouseEventHandler(event) { document.getElementById('debugger').innerHTML += "You clicked " + event.region + "<br/>"; } </script> </head> <body style="font-family: Arial;border: 0 none;"> <div id="visualization" style="width: 300px; height: 300px;"></div> <div id="debugger"></div> </body> </html>
سياسة البيانات
يتم إرسال البيانات إلى خدمة Google Chart API.
الأقلمة
يتيح هذا التمثيل المرئي أي ترجمة متوافقة مع خدمة "مخطط Google".