GVKun编程网logo

javascript – Chartjs甜甜圈消失了

15

在本文中,我们将带你了解javascript–Chartjs甜甜圈消失了在这篇文章中,同时我们还将给您一些技巧,以帮助您实现更有效的amChartsJavaScriptCharts、angularjs

在本文中,我们将带你了解javascript – Chartjs甜甜圈消失了在这篇文章中,同时我们还将给您一些技巧,以帮助您实现更有效的amCharts JavaScript Charts、angularjs – 在angular-chart.js甜甜圈图上渲染一个传奇、Chart.js 2.4 发布,易用的 JavaScript 图表库、Highcharts 非常实用的Javascript统计图demo示例_javascript技巧

本文目录一览:

javascript – Chartjs甜甜圈消失了

javascript – Chartjs甜甜圈消失了

当图表生成只有一个数据显示并保持360º时,我遇到了问题.这是一个例子:

<!doctype html>
<html>
  <head>
    <title>Chart Test</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.1-beta.2/Chart.js"></script>
  </head>
  <body>
    <canvas width="200" height="200"></canvas>

    <script>
    var canvas =  $( 'canvas' ),data = [
        {
          value     : 300,color     : "#F7464A",highlight : "#FF5A5E",label     : "Red"
        }
      ],options = {"percentageInnerCutout":70,"showTooltips":false,"animateScale":true},chart   = new Chart( canvas.get( 0 ).getContext( '2d' ) ).Doughnut( data,options );
  </script>
  </body>
</html>

在图表结束Android默认浏览器上的360º动画之后,它会消失,但在Chrome上不会发生.在Sony Xperia(v4.1.2)和三星S3上测试过.

在我的桌面上,这个问题不会发生,所以看起来它与默认的Android浏览器有关.

我还测试了最新的chart.js版本1.0.1-beta.4 ……

github上有一个open issue.

有人解决了这个问题吗?

解决方法

经过几天寻找解决方法并且由于直到现在我没有得到任何响应,我做了一些测试以确定它正常工作的最小支持值.现在,我让它在前面提到的设备上工作.

在下面的示例中,“data”数组有各种测试值,因此可以随意测试它们和新的数据以识别任何错误.

所以这就是我提出的:

<!doctype html>
<html>
  <head>
    <title>Chart Test</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.1-beta.2/Chart.js"></script>
  </head>
  <body>
    <canvas width="300" height="300"></canvas>
    <script>
      var canvas        = $( 'canvas' ),lowestValue   = 0.001          // Minimum supported value,highestValue  = 0,emptySection  = {
              value     : lowestValue,color     : '#e8e8e8',highlight : '#e8e8e8',label     : ''
          },data    = []
        /*,data = [
              {
                  value     : 0,color     : '#F7464A',highlight : '#FF5A5E',label     : 'Red'
              }
          ],data = [
              {
                  value     : 1,label     : 'Red'
              },{
                  value     : 0,color     : '#15D42F',highlight : '#15D42F',label     : 'Green'
              }
          ],{
                  value     : 1,{
                  value     : 2,data = [
              {
                  value     : 0.000001,{
                  value     : 0.0058,label     : 'Green'
                },color     : '#FAEC23',highlight : '#FAEC23',label     : 'Yellow'
              }
          ],data = [
              {
                  value     : 0.00,{
                  value     : 0.00,label     : 'Green'
              },label     : 'Yellow'
              }
          ]*/,options = {
              'percentageInnerCutout': 70,'showTooltips'         : false,'animateScale'         : true
          },chart   = {};

      // If there are no valid segments,include two new ones an set the value of one of them to 1
      // so that the chart appears.
      if ( data.length === 0 ) {
        data.push( $.extend( true,{},emptySection ) );
        data.push( $.extend( true,emptySection ) );

        data[ 0 ].value = 1;

      // Even if there are segments,we add a new one with one of the values:
      //	- 10: if the highest value of any segment is lower that the lowest allowed (0.001).
      //	- 0.001 of the highest value
      } else {

        $.each( data,function( index,el ) {
          el.value = el.value < lowestValue ? lowestValue : el.value;
          highestValue = el.value > highestValue ? el.value : highestValue;
        });

        data.push( $.extend( true,emptySection ) );

        // Set the value of the new segment.
        // Get 0.001% of the highest value if it's greater that the lowest allowed.
        // If it's not greater that the lowest allowed,set it to a value big enought so the other segments don't appear.
        data[ data.length - 1 ].value = highestValue > lowestValue ? determinePercentage( highestValue ) : 10;
				}

        // Create the chart.
        chart = new Chart( canvas.get( 0 ).getContext( '2d' ) ).Doughnut( data,options );


        /**
        * Determines a specific percentage of a value. If no percentage is passed it assumes the lowest allowed (0.001).
        */
        function determinePercentage( total,percentage ) {
          percentage = percentage || lowestValue;

          return total ? ( parseFloat( total ) * percentage ) / 100 : 0;
        }

    </script>
  </body>
</html>

amCharts JavaScript Charts

amCharts JavaScript Charts

高春辉、王春生、朱峰:关于开源创业的 15 件小事

amCharts 提供您最需要的 JavaScript/HTML5 图表。一套包括串行(列,栏,线,区,步线,平滑线,烛台,OHLC 图),馅饼 / 甜甜圈,雷达 / 极性和 XY / 分散 / 气泡图。amCharts 的图表提供了无与伦比的功能和性能,在一个高级的,符合标准的包里。

支持所有高级浏览器

amCharts 的 JavaScript 图表支持所有高级浏览器(包括但不限于)现代火狐,Chrome,Safari,Opera 和 Internet Explorer 的版本。它的 iPad,iPhone,iPod Touch 的 IOS()和 Android 的蜂窝供电的移动设备上运行。该软件包还包括闪存,可以送达用户的浏览器不支持 SVG / VML 的图表。

超级强大的序列图

amCharts 的序列图是如此强大,它应该被称为超图。它可以显示柱形图,条形图,线,区,步线,平滑线,烛台和 OHLC 图。它可以接受的日期 / 时间数据和在任何您想要的格式,并将其放置在逻辑间隔的网格线显示日期 - 月初,周,小时 - 取决于你的数据的范围。用一个单一的 “旋转” 属性设置为 true,您的柱形图将成为一系列垂直轴绘制的条形图。图表支持多个数值轴数和反转。用户可以放大,平移图表,添加以价值和类别轴的指南。串行和 XY 图表支持趋势线。

滚动和缩放

串行和 XY 图可以放大和滚动。或序列图可以显示高级的滚动条。

  

angularjs – 在angular-chart.js甜甜圈图上渲染一个传奇

angularjs – 在angular-chart.js甜甜圈图上渲染一个传奇

我已经遵循了angular-chart.js文档,并创建了一个图表,但是无法使用它来渲染图例.我不明白为什么它不工作.

文件:http://jtblin.github.io/angular-chart.js/
类似的问题:How to color legend in angular-chart.js

<divng-controller="CircleCtrl"https://www.jb51.cc/tag/dis/" target="_blank">display: block;">
    <div>
        <canvas id="doughnut"chart-data="data"
            chart-labels="labels"
            chart-colours="colours"
            chart-legend="true">
        </canvas> 
    </div>
</div>

我也试过在控制器中定义一个图例的数组,

$scope.legend = ["complete","incomplete"]

根据其他SO问题的接受答案,chart-legend =“true”应该足以使其工作.

有没有人有这个图书馆的经验,有一个想法如何解决这个问题?

如果您使用基于chart.js 2的1.0.0-alpha分支,则正确的语法是:
$scope.options = {legend: {display: true}};

和你的html

<canvas id="pie"chart-data="data"
            chart-labels="labels"
            chart-options="options">
 </canvas>

Chart.js 2.4 发布,易用的 JavaScript 图表库

Chart.js 2.4 发布,易用的 JavaScript 图表库

Chart.js 2.4 发布了,ChartJS 是使用 HTML5 Canvas 元素的 Javascript 图形库,支持6种统计图形,不依赖其他库。

部分更新内容:

新功能

  • 公开自定义工具提示的数据点信息

  • 新的工具提示和悬停交互模式

  • 关闭工具提示颜色框时的新 displayColors 选项

  • 提示 average 和 nearest 的新工具

  • 新的折线图填充模式

  • 将新的 caretX 和 caretY 属性添加到工具提示点

  • 现在可以从画布ID创建图表

  • 布局服务现在支持可配置填充

  • 将图表 reset() 为初始状态的新方法

  • 用于过滤工具提示项的新 tooltips.filter 选项

更多内容请查看完整<更新日志>

下载地址:

  • Source code (zip)

  • Source code (tar.gz)

Highcharts 非常实用的Javascript统计图demo示例_javascript技巧

Highcharts 非常实用的Javascript统计图demo示例_javascript技巧

Highcharts 官网:http://www.highcharts.com
Highcharts 官网示例:http://www.highcharts.com/demo/
Highcharts 官网文档:http://www.highcharts.com/documentation/how-to-use
官网实例中给出了各式各样的demo,可以参照document修改自己需要的即可。
下面是一个学生成绩走势demo:
Highcharts 非常实用的Javascript统计图demo示例_javascript技巧 

复制代码 代码如下:





Highcharts Example









今天关于javascript – Chartjs甜甜圈消失了的介绍到此结束,谢谢您的阅读,有关amCharts JavaScript Charts、angularjs – 在angular-chart.js甜甜圈图上渲染一个传奇、Chart.js 2.4 发布,易用的 JavaScript 图表库、Highcharts 非常实用的Javascript统计图demo示例_javascript技巧等更多相关知识的信息可以在本站进行查询。

本文标签: