小编sup*_*rue的帖子

Highcharts - redraw()与新的Highcharts.chart

我很难理解更新highcharts图表的正确方法.假设我已经渲染了一个图表,然后我想以某种方式更新它.例如,我可能想要更改数据系列的值,或者我可能想要启用dataLabels.

目前我唯一可以弄清楚如何做到这一点的方法是改变图表选项,并new Highcharts.chart用来告诉highcharts重绘.

但是,我想知道这是否有点矫枉过正,而且可能有可能"原位"改变图表,而不必从头开始new Highcharts.chart.我注意到有一种redraw()方法,但我似乎无法让它工作.

很感谢任何形式的帮助.

谢谢,

知更鸟

示例代码如下,底部有一个jsFiddle

$(document).ready(function() {

chartOptions = {
    chart: {
        renderTo: 'container',
        type: 'area',
    },
    series: [{
        data: [1,2,3]
    }]
};

chart1 = new Highcharts.Chart(chartOptions);


chartOptions.series[0].data= [10,5,2];
chart1 = new Highcharts.Chart(chartOptions);

//The following seems to have no effect
chart1.series[0].data = [2,4,4];
chart1.redraw();

});?
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/sUXsu/18/

[编辑]:

对于此问题的任何未来观众,值得注意的是没有隐藏和显示dataLabels的方法.以下显示了如何执行此操作:http://jsfiddle.net/supertrue/tCF8Y/

javascript highcharts

76
推荐指数
3
解决办法
15万
查看次数

将文本放在饼图中心 - Highcharts

我想在HighCharts的馅饼/甜甜圈图表的中心放置一个标题.

我没有在图表选项中看到任何可以直接启用它的内容,所以我认为它需要使用Highcharts SVG渲染器 - chart.renderer.text('My Text', x, y).

我有这个设置,但我不能让文本在馅饼中居中.x和y值似乎不接受百分比.是否有一种程序化的方法让它在情节中居中,并在容器大小调整中存活?

更新:将x和y设置为50%可以使圆圈居中(使用renderer.circle(x, y, radius)),但不能居中(使用renderer.text(text, x, y)).

请在此处查看结果:http://jsfiddle.net/supertrue/e2qpa/

svg highcharts

29
推荐指数
3
解决办法
5万
查看次数

了解Node.JS async.parallel

我需要从两个Web服务器请求数据.任务是独立的; 因此,我使用的是aync.parallel.现在我只在我的网页正文中写'abc','xyz'和'Done'.

由于任务是同时执行的,我可以遇到奇怪的输出吗?例如,

xab
cyz
Run Code Online (Sandbox Code Playgroud)

代码.

var async = require('async');

function onRequest(req, res) {
    res.writeHead(200, {
        "Content-Type" : "text/plain"
    });

    async.parallel([ function(callback) {
        res.write('a');
        res.write('b');
        res.write('c\n');
        callback();
    }, function(callback) {
        res.write('x');
        res.write('y');
        res.write('z\n');
        callback();
    } ], function done(err, results) {
        if (err) {
            throw err;
        }
        res.end("\nDone!");
    });

}

var server = require('http').createServer(onRequest);
server.listen(9000);
Run Code Online (Sandbox Code Playgroud)

javascript parallel-processing node.js

26
推荐指数
1
解决办法
6万
查看次数

是否可以在PHP中防止"致命错误:调用未定义的函数"?

在PHP中,有什么方法可以忽略未定义的函数而不是抛出在浏览器中可见的致命错误?-ie,致命错误:调用未定义的函数

我知道有一种将所有自定义函数包装在条件中的做法,如下所示,但是有一种编程方式来获得这种效果吗?

if (function_exists('my_function')) { 

   // use my_function() here;

}
Run Code Online (Sandbox Code Playgroud)

php error-handling undefined fatal-error

12
推荐指数
2
解决办法
2万
查看次数

使文本行具有相同的长度

在居中h1元素中,如果文本属于多行,换行符会使文本如下所示:

                This is a header that takes up two
                              lines

                This is a header that takes up three
                lines because it is really, really
                              long
Run Code Online (Sandbox Code Playgroud)

有没有办法操纵这些元素,使文本行的长度大致相等?像这样:

                       This is a header that
                        takes up two lines

                    This is a header that takes 
                     up three lines because it
                       is really, really long
Run Code Online (Sandbox Code Playgroud)

jQuery插件Widow Fix可以防止单字行,但我正在寻找能够在多行元素中平衡所有行的东西.是否有任何jQuery插件,或者你可以推荐一个策略?

javascript jquery

12
推荐指数
1
解决办法
2157
查看次数

Highcharts - 饼图内外的标签

我知道可以通过更改plotOptions.pie.dataLabels.distance将饼图标签放在饼图内部或外部.我想弄清楚是否可以逐点改变它:

如果切片小于15%,则在切片内放置标签

否则将标签放在切片之外

在Highcharts中这可能吗?以下是我的尝试之一,但不起作用; 简单的jsfiddle在这里:http://jsfiddle.net/supertrue/q6bQP/

plotOptions: {
    pie: {
        dataLabels: {
            distance: -30,
            color: 'white',
            formatter: function() {
                if (this.y < 15 ) {
                    this.point.dataLabels.color = 'red';
                    this.point.dataLabels.distance = 20;
                    return this.point.name;
                } else {
                    return this.point.name;
                }

        }
  },
Run Code Online (Sandbox Code Playgroud)

highcharts

11
推荐指数
1
解决办法
1万
查看次数

HighCharts - 条形图中的Y轴填充

我使用一种y轴标签样式,其中每个数字左对齐放置在其各自的水平网格线的顶部,如下图所示.

HighCharts中唯一的复杂因素是轴标签有时会与柱形图中的第一列重叠.

更新的演示:有关示例,请参阅此图表:http://jsfiddle.net/NWsgz/1/

在highcharts中的y轴问题

我试图使用xAxis.minpadding,但该属性似乎对柱形图没有影响.在Highcharts中有没有办法获得我想要的效果?理论上我可以通过使条形很窄来获得效果,但我正在寻找另一种解决方案.

javascript highcharts

11
推荐指数
2
解决办法
2万
查看次数

使用jQuery操作TinyMCE内容

使用TinyMCE,我可以轻松地操作内容并将其发送回编辑器,如下所示:

    // get content from tinyMCE
    var content = tinyMCE.get('content').getContent();

    // manipulate content using js replace
    content = content.replace(/<\/?div>/gi, '');

    // send back to tinyMCE
    tinyMCE.get('content').setContent( content );
Run Code Online (Sandbox Code Playgroud)

上面的代码工作正常.但是,我不能让这个工作:

    // get content from tinyMCE (it provides an html string)
    var content = tinyMCE.get('content').getContent();

    // make it into a jQuery object
    var $content = $(content);

    // manipulate the jquery object using jquery
    $content = $content.remove('a');

    // use a chained function to get its outerHTML
    content = $("<div />").append( $content.clone() ).html();               

    // …
Run Code Online (Sandbox Code Playgroud)

javascript jquery tinymce

9
推荐指数
1
解决办法
1万
查看次数

如何在PHP中创建Wordpress短代码样式函数

我试图在PHP中创建一个Wordpress短代码样式的功能,用图像替换像"[[133]]"这样的短代码.基本上,我有一个图像URL /标题/副标题的MySQL表,ID为1-150,我希望能够使用这样的短代码将它们动态插入到我的页面文本中:

Blabla bla bla bla bla.[[5]]此外,唧唧歪歪喇嘛喇嘛[[27]]嘿,并唧唧歪歪![[129]]

所以,我只想把ID作为$ id,然后将其提供给MySQL查询,如mysql_query("SELECT title,subtitle,url FROM images WHERE id = $ id"),然后替换"[[id]] "用img/title/subtitle.我希望能够在同一页面上多次这样做.

我知道这必须涉及正则表达式和preg_match,preg_replace,strstr,strpos,substr的一些组合...但我不知道从哪里开始以及我应该使用哪些函数来做哪些事情.你能推荐一个策略吗?我不需要代码本身 - 只知道使用哪些部分将非常有用.

php wordpress shortcode

6
推荐指数
2
解决办法
3418
查看次数

在表格中右对齐并居中

我经常使用包含必须右对齐的数字的表,以使一个/十/几百/千位的数字对齐。像这样:

    2,343
1,000,000
       43
   43,394
  232,111
Run Code Online (Sandbox Code Playgroud)

这些表中的列标题居中。当表的列很宽时,看起来并不好:

         Column 1                    Column 2
===========================|===========================
                     2,343 |                        32     
                        43 |                    44,432
                12,243,394 |                        23 
                   232,111 |                     4,432
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以使用javascript,jQuery或CSS根据最大的数字来使数字居中,但是要保持正确的理由呢?所需的最终结果将是这样的:

         Column 1                    Column 2
===========================|===========================
             2,343         |              32     
                43         |          44,432
        12,243,394         |              23 
           232,111         |           4,432
Run Code Online (Sandbox Code Playgroud)

我知道我可以全局设置td填充,但是我正在寻找一种动态解决方案,该解决方案可以适应不同的表,即使列宽和数字宽也不同。

能做到吗?

javascript css jquery

6
推荐指数
1
解决办法
4001
查看次数