سوالات متداول

شروع شدن

Google Visualization API چیست؟
Google Visualization API به شما امکان می‌دهد نمودارها و برنامه‌های گزارش‌دهی را روی داده‌های ساختاریافته ایجاد کنید و به ادغام آن‌ها به طور مستقیم در وب‌سایت خود کمک می‌کند.
با Visualization API چه کاری می توانم انجام دهم؟
با استفاده از Google Visualization API، می‌توانید به داده‌های ساختاریافته دسترسی داشته باشید - که به صورت محلی در مرورگر شما ایجاد شده یا از منابع داده پشتیبانی‌شده در قالب جدولی ساده بازیابی شده‌اند. همچنین می‌توانید منبع داده خود را به‌عنوان منبع داده Visualization API پیاده‌سازی کنید و هرگونه تجسم و/یا برنامه سازگار با Visualization را برای دسترسی به داده‌های خود فعال کنید. این قالب قابل استفاده برای گزارش، تجزیه و تحلیل یا برنامه های نمودار است. بنابراین می‌توانید داده‌ها را تجسم کنید و/یا قابلیت‌های جدیدی را به برنامه‌هایی مانند Google Spreadsheets اضافه کنید.
از کجا می توانم اسناد مربوط به Visualization API را پیدا کنم؟
می‌توانید راهنمای برنامه‌نویس و سایر اسناد مرتبط را در https://developers.google.com/chart/interactive/docs بیابید.
چگونه یک نمودار جدید ایجاد کنم؟
بهترین راه برای شروع خواندن مقدمه و بخش Quickstart است.
URL منبع داده چیست؟
URL منبع داده، شناسه URL منحصر به فرد یک منبع داده Visualization API است. URL منبع داده ممکن است شامل پارامترهای Chart Query Language نیز باشد. در این حالت یک پرس و جو (مانند مرتب سازی، گروه بندی و غیره) قبل از واکشی داده ها بر روی منبع داده انجام می شود.
کجا می توانم کد نمونه برنامه های نمودار را با استفاده از Visualization API پیدا کنم؟
می‌توانید کد نمونه را در مستندات کد نمونه Visualization API بیابید.
آیا یک برنامه فلش می تواند به Visualization API دسترسی پیدا کند؟
کاملا. Visualization API از یک API جاوا اسکریپت استفاده می کند، اما کتابخانه هایی وجود دارند که برنامه های Flash را قادر می سازند تا با کد جاوا اسکریپت متصل شوند. یکی از این کتابخانه‌ها را می‌توانید در http://code.google.com/p/swfobject پیدا کنید. برای برخی از مشکلات توسعه که بر Flash تأثیر می گذارد، به زیر مراجعه کنید.
چگونه یک منبع داده را پیاده سازی کنم؟
بخش استفاده و ایجاد نمودار را بخوانید تا با نحوه کار نمودارها آشنا شوید، سپس پیاده سازی منبع داده را بخوانید تا نحوه ایجاد منبع داده را بیاموزید. اگر از جاوا استفاده می‌کنید، می‌توانید از کتابخانه جاوا منبع داده نمودار Google برای شروع سریع استفاده کنید.
آیا می توانم از یک برنامه جاوا به نمودار دسترسی داشته باشم؟
آره. کتابخانه تجسم Google برای Google Web Toolkit (GWT) به شما امکان می‌دهد به تجسم‌های سازگار با API از کد جاوا که با کامپایلر GWT کامپایل شده است دسترسی داشته باشید و با استفاده از کامپایلر GWT تجسم‌های سازگار با Visualization API را در جاوا بنویسید. کتابخانه کاندید انتشار نیز از مدل رویداد Visualization API پشتیبانی می کند.
آیا می توانم به نموداری از برنامه ای که با کامپایلر Google Web Toolkit (GWT) نوشته شده است دسترسی داشته باشم؟
آره. کتابخانه تجسم Google برای Google Web Toolkit (GWT) به شما امکان می‌دهد به تجسم‌های سازگار با API از کد جاوا که با کامپایلر GWT کامپایل شده است دسترسی داشته باشید و با استفاده از کامپایلر GWT تجسم‌های سازگار با Visualization API را در جاوا بنویسید. کتابخانه کاندید انتشار نیز از مدل رویداد Visualization API پشتیبانی می کند.
من یک سوال/مشکل متفاوت دارم، برای دریافت اطلاعات بیشتر با چه کسی تماس بگیرم؟
لطفاً سؤال خود را در گروه بحث Google Visualization API ارسال کنید تا از انجمن توسعه دهندگان Visualization کمک بگیرید. تیم Google Visualization نیز برای پاسخ به سوالات در این گروه شرکت می کند.

با استفاده از API

تفاوت بین Google Chart API و Google Visualization API چیست؟

Chart API یک راه ساده برای ایجاد نمودارهای تصویری از انواع مختلف با ارسال یک URL قالب‌بندی شده که شامل داده‌ها و گزینه‌های پیکربندی نمودار به سرور Google است، ارائه می‌کند. نمودار API شامل مجموعه ای بسته از نمودارها با گزینه های مختلف است. مجموعه داده های Chart API به اندازه یک URL (تقریباً 2K) محدود شده است.

Visualization API راهی برای اتصال نمودارها و منابع داده در وب و انتشار آنها فراهم می کند:

  • Visualization API یک Javascript API برای دسترسی به نمودارها فراهم می کند.
  • گالری نمودارهای آن شامل نمودارهای ایجاد شده توسط Google است، اما همچنین برای هر شخص ثالثی برای ایجاد تجسم های سازگار با Visualization API خود باز است.
  • نمودارها و نمودارهای API تجسمی می تواند هر چیزی باشد که می تواند توسط مرورگر ارائه شود. این شامل تصاویر، جاوا اسکریپت، گرافیک برداری، فلش و غیره است.
  • تعداد قابل توجهی از نمودارهای Chart API از طریق Visualization API قابل دسترسی هستند، اگرچه برخی از گزینه های پیکربندی آنها ممکن است در دسترس نباشد.
  • API همچنین یک پروتکل سیمی مستند و راهی برای هر کسی فراهم می کند تا بتواند منابع داده خود را در معرض هر یک از تجسم های API قرار دهد.
  • API یک مدل رویداد تعریف شده دارد که به نمودارها اجازه می دهد رویدادها را پرتاب کرده و دریافت کنند و بنابراین با صفحه میزبان خود و/یا نمودارهای دیگر در صفحه ارتباط برقرار کنند.
با استفاده از Visualization API می توانم به چه منابع داده ای دسترسی داشته باشم؟
با Visualization API می‌توانید با ایجاد قالب استاندارد DataTable API به داده‌ها به صورت محلی از مرورگر خود دسترسی داشته باشید یا به هر منبع داده‌ای که از API پشتیبانی می‌کند دسترسی داشته باشید. برنامه‌های معروفی که قبلاً از API پشتیبانی می‌کنند عبارتند از Google Spreadsheets و Salesforce.com در پلتفرم توسعه‌دهنده Force.com . همچنین می توانید داده های خود را به عنوان منبع داده نمودار پیاده سازی کنید.
برنامه من انتظار دارد داده هایی که دریافت می کند در قالب خاصی باشد. چگونه استثناها را مدیریت کنم؟
می‌توانید از متدهای getNumberOfColumns() و getColumnType() کلاس google.visualization.DataTable استفاده کنید تا آزمایش کنید که داده‌هایی که دریافت می‌کنید مطابق با آنچه شما انتظار دارید مطابقت داشته باشد و یک پیام خطا برای عدم تطابق صادر کنید.
آیا جاسازی نمودار در وب سایت من بی خطر است؟
اجرای کد شخص ثالث به طور مستقیم در وب سایت شما خطرات ذاتی دارد. Google هیچ قول یا اظهارنظری درباره عملکرد، کیفیت، امنیت یا محتوا نمی‌دهد. برنامه‌های نموداری که با شرایط خدمات Google Visualization API مطابقت ندارند، ممکن است از گالری‌ها حذف شوند.
آیا می توانم از نمودارها به صورت آفلاین استفاده کنم؟
رایانه های کاربران شما باید به https://www.gstatic.com/charts/loader.js دسترسی داشته باشند تا از ویژگی های تعاملی نمودارهای Google استفاده کنند. این به این دلیل است که کتابخانه های تجسم مورد نیاز صفحه شما قبل از استفاده به صورت پویا بارگذاری می شوند. کد بارگیری کتابخانه مناسب بخشی از اسکریپت موجود است و زمانی که متد google.charts.load() را فراخوانی می کنید فراخوانی می شود. شرایط خدمات ما به شما اجازه دانلود کد google.charts.load یا google.visualization را برای استفاده آفلاین نمی دهد.
آیا می توانم کد نمودار را به صورت محلی یا در اینترانت دانلود و میزبانی کنم؟
متاسف؛ شرایط خدمات ما به شما اجازه دانلود و ذخیره یا میزبانی کد google.charts.load یا google.visualization را نمی دهد. با این حال، اگر نیازی به تعامل نمودارهای گوگل ندارید، می توانید از نمودارها اسکرین شات بگیرید و به دلخواه از آنها استفاده کنید.

عیب یابی

چرا نمودار من ظاهر نمی شود؟

ابتدا کنسول جاوا اسکریپت خود را بررسی کنید. در Chrome، می‌توانید از طریق Chrome-> View-> Developer-> JavaScript Console یا Chrome-> Tools-> JavaScript Console به کنسول جاوا اسکریپت دسترسی داشته باشید. همه مرورگرهای مدرن یک کنسول جاوا اسکریپت دارند. ممکن است لازم باشد منوهایی را با نام هایی مانند "Advanced" یا "Developer Tools" جستجو کنید تا آن را پیدا کنید.

امیدواریم که کنسول شما را فوراً به مشکل هدایت کند. با این حال، گاهی اوقات، ترجمه پیام کنسول به دلیل اصلی دشوار است. در اینجا برخی از دام های رایج وجود دارد:

  • ممکن است از Google Loader اشتباه استفاده کرده باشید.
    • نمودارها/loader.js را فقط یک بار بارگیری کنید. مهم نیست که چند نمودار در صفحه وب خود دارید، باید یک و تنها یک تماس مانند این داشته باشید:
      <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> // Do this ONCE.
      این می تواند در سر یا بدنه صفحه وب شما باشد، بسته به اینکه چه زمانی می خواهید بارگذاری انجام شود.
    • در حالت ایده‌آل، فقط یک بار با google.charts.load تماس بگیرید، با تمام بسته‌هایی که برای صفحه وب خود نیاز دارید.
      <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
      <script>
        google.charts.load("current", {packages: ["corechart", "timeline"]});
      
        google.charts.setOnLoadCallback(drawBarChart1);
        function drawBarChart1() {
          ...
          var barChart1 = new google.visualization.BarChart(document.getElementById('chart1'));
          ...
        }
      
        google.charts.setOnLoadCallback(drawBarChart2);
        function drawBarChart2() {
          ...
          var barChart2 = new google.visualization.BarChart(document.getElementById('chart2'));
          ...
        }
      
        google.charts.setOnLoadCallback(drawTimeline);
        function drawTimeline() {
          ...
          var timeline = new google.visualization.Timeline(document.getElementById('chart3'));
          ...
        }
      
      </script>
      <div id="chart1"></div>
      ...
      <div id="chart2"></div>
      ...
      <div id="chart3"></div>
  • هر نمودار باید یک شناسه عنصر منحصر به فرد داشته باشد (به عنوان مثال، chart1 ، chart2 در مثال بالا).
  • به دنبال اشتباهات تایپی باشید به یاد داشته باشید که جاوا اسکریپت یک زبان حساس به حروف بزرگ و کوچک است.

اگر هنوز سرگردان هستید، گروه بحث Google Visualization API را جستجو کنید تا ببینید آیا کسی با مشکل مشابهی مواجه شده است یا خیر. اگر نمی توانید پستی را پیدا کنید که به سؤال شما پاسخ دهد، سؤال خود را به همراه پیوند به یک صفحه وب که مشکل را نشان می دهد به گروه ارسال کنید. در صورت امکان، یک jsfiddle اضافه کنید.

چرا ماه ها و روزهای مرخصی من یکی است؟
نمودارهای گوگل از جاوا اسکریپت استفاده می کند که از نمایه سازی مبتنی بر صفر استفاده می کند. اولین روز ماه صفر است و ماه ها از 0 (ژانویه) تا 11 (دسامبر) متغیر است. اگر کد شما نمایه سازی یک پایه را فرض می کند، قبل از قرار دادن داده های خود در یک شی تاریخ جاوا اسکریپت، یکی را کم کنید.
چرا نمودارهای من در برخی از مرورگرها کار می کنند اما نه همه؟
ما caniuse.com را برای مجموعه ای از اطلاعات در مورد ناسازگاری های مرورگر توصیه می کنیم. با Google Charts، گاهی اوقات مشکلاتی در اینترنت اکسپلورر 8 و نسخه های قبلی به دو دلیل وجود دارد:
  • IE8 از SVG پشتیبانی نمی کند، بنابراین نمودارها در VML، که محدودتر است، شکست می خورند.
  • جاوا اسکریپت IE8 اجازه نمی دهد کاماهای دنباله دار در لیست ها قرار گیرند.
  • چرا نمودار مبتنی بر Flash من هنگام آزمایش آن نمایش داده نمی شود؟
    به دلیل تنظیمات امنیتی Flash، نمودارهای مبتنی بر فلش ممکن است زمانی که از یک مکان فایل در مرورگر (مثلاً file:///c:/webhost/myhost/myviz.html) به جای آدرس وب سرور (URL) به درستی کار نکنند. به عنوان مثال، http://www.myhost.com/myviz.html). این معمولاً فقط یک مسئله آزمایشی است. وقتی از آدرس http:// به نمودار دسترسی پیدا می کنید مشکلی نیست. همانطور که در وب سایت Macromedia توضیح داده شده است، می توانید بر این مشکل غلبه کنید. به طور کلی توصیه می کنیم در صورت امکان از توسعه Flash اجتناب کنید.

    خط مشی برنامه تجسم Google

    خط مشی برنامه تجسم گوگل چیست؟
    همانطور که در شرایط خدمات توضیح داده شده است، ممکن است از اضافه کردن و نمایش محتوایی که خط‌مشی برنامه ما را نقض می‌کند با نمایش یا پیوند دادن به موارد زیر خودداری کنیم:
    • محتوای غیر قانونی
    • تجاوز به حریم خصوصی شخصی
    • پورنوگرافی یا فحاشی.
    • محتوایی مانند کد مخرب که با رایانه کاربر یا عملکرد صفحه وب میزبان تداخل دارد یا برای آن مضر است.
    • ترویج نفرت یا تحریک خشونت.
    • نقض کپی رایت. لطفاً برای اطلاعات بیشتر به خط مشی DMCA ما مراجعه کنید.
    • نقض علامت تجاری
    • جعل هویت اشخاص ثالث

    توسعه‌دهندگانی که نمودارهایی ایجاد می‌کنند که داده‌ها را جمع‌آوری می‌کنند، با حفظ و پیوند به یک خط‌مشی رازداری مناسب از نظر قانونی موافقت می‌کنند. علاوه بر این، از توسعه‌دهندگان می‌خواهیم که مطمئن شوند نمودارشان ایمن است و تا زمانی که در فهرست راهنمای نمودار قرار دارد، برنامه خود را حفظ کنند.

    این سیاست ها ممکن است هر از چند گاهی بدون اطلاع قبلی بازنگری شوند.

    آیا Google Visualization API برای استفاده تجاری در دسترس است؟
    آره. برای چاپ دقیق لطفاً به شرایط خدمات Google Visualization API مراجعه کنید.
    آیا می توانم از Google Visualization API برای ایجاد نرم افزار سمت مشتری استفاده کنم؟
    در حال حاضر به توسعه دهندگان اجازه نمی دهیم از Visualization API برای ایجاد نرم افزار سمت سرویس گیرنده استفاده کنند. شما فقط می توانید از Visualization API از طریق رابط ارائه شده استفاده کنید. برای چاپ دقیق لطفاً به شرایط خدمات Google Visualization API مراجعه کنید.
    آیا گوگل تمام داده های نمودار من را ثبت می کند؟
    داده‌های نمودار موجود در درخواست HTTP برای اهداف آزمایش داخلی و اشکال‌زدایی بیش از دو هفته در گزارش‌های موقت ذخیره می‌شوند. البته باید بدانید که اگر نمودار شما در یک برچسب تصویر در یک صفحه وب عمومی ظاهر شود، می‌توان آن را خزید.
    نقض خط مشی های برنامه
    نقض این خط‌مشی‌های برنامه می‌تواند منجر به غیرفعال کردن یا حذف نمودار شما، قرار گرفتن در لیست سیاه از آپلود نمودارهای آینده، پایان دادن به حساب‌های Google و/یا حذف همه نمودارهای شما شود.

    فعال شدن در انجمن

    چگونه می توانم برنامه نمودار خود را با دیگران به اشتراک بگذارم؟
    با قرار دادن نمودار خود در گالری نمودار شروع کنید. در صورت تمایل می توانید به سایت خود لینک دهید و کد منبع خود را ارائه دهید. برای دریافت بازخورد جامعه در گروه بحث ما شرکت کنید.
    گالری نمودار فهرستی از برنامه هایی است که از Visualization API استفاده می کنند. این یک مکان مرکزی برای جامعه توسعه دهندگان Visualization برای به اشتراک گذاری برنامه های نمودار فراهم می کند. برای ارسال درخواست نمودار خود به گالری، به صورت آنلاین درخواست دهید .
    چگونه می توانم منبع داده نمودار خود را تبلیغ کنم؟
    پیاده سازی خود را در گروه تجسم ارسال کنید. اگر دوست داشتیم، حتی ممکن است خودمان به آن اشاره کنیم.