给highcharts坐标设值问题

乔巴大大 2012-11-12 06:13:12

$(function () {
var chart = new Highcharts.Chart({
chart: {
renderTo: 'container3',
plotBorderWidth: 1,
zoomx:true,
type: 'line'
},
title: {
text: null
},
credits:{
enabled:false,
position: {
align: 'left',
x: 350,
verticalAlign: 'bottom'
}
},
legend: {
enabled:true

},

xAxis: {
type: 'datetime',
min:minDate, //0表示1月 以此类推
max:maxDate,
tickInterval :30*24*3600*1000,//X轴点间隔
labels: {
align: 'left',
formatter: function() {
return Highcharts.dateFormat('%Y%m%d', this.value);
}
}
},
yAxis: [
{
lineWidth:1,
// gridLineColor: 'red',
gridLineDashStyle: 'shortdash',
max:maxYield*100,
min:-maxYield*100,
opposite: true,
tickInterval:(maxYield*100/3),
title: {
text: null
},
labels: {
formatter: function() {
return this.value +'%';
}
}
},
{
lineWidth:1,
// gridLineColor: 'red',
gridLineDashStyle: 'shortdash',
max:1500,
min:-1500,
//opposite: true,
//tickInterval:500,
title: {
text: null
},
labels: {
formatter: function() {
return this.value ;
}
}
}
],
tooltip: {
formatter: function() {
return this.series.name+'<br/><strong>日期:</strong>'+
Highcharts.dateFormat('%Y%m%d', this.x) +'<strong>收益率:</strong> '+ this.y+'%' ;
}
},
plotOptions: {
line: {
dataGrouping: {
enabled: false
}
},
series: {
lineWidth:1,
marker: {
radius: 1 //鼠标接触时 显示点的大小
}

}

},
series: strategys

});
});



这是我的highchart代码 生成的图片如下


问题: 1.我想给Y轴显示0的地方初始化一个数值
2.Y轴正数的颜色是红的,负数颜色是绿的
...全文
3301 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
baidu_30264489 2015-07-31
  • 打赏
  • 举报
回复
引用 13 楼 huwenzhi1991 的回复:
求楼主教导下怎么改变y轴的值,从数字变成百分数类型的
valueSuffix: '°C' 设置这个
开心汉堡包 2015-02-09
  • 打赏
  • 举报
回复
求楼主教导下怎么改变y轴的值,从数字变成百分数类型的
林涧 2014-02-26
  • 打赏
  • 举报
回复
xAxis: { type: 'datetime', min:weekminDate, //0表示1月 以此类推 max:weekmaxDate, tickInterval :20*24*3600*1000,//X轴点间隔 labels: { //align: 'left', formatter: function() { return Highcharts.dateFormat('%Y-%m-%d', this.value); } } 中的 min:weekminDate,max:weekmaxDate怎么设置
QQ神器 2014-01-24
  • 打赏
  • 举报
回复
如何设Y轴10为一个间隔
乔巴大大 2012-12-22
  • 打赏
  • 举报
回复
引用 6 楼 rain082900 的回复:
引用 4 楼 josephSC 的回复:改的时候我的if语句忘加 "}" 了,你自己加上,直接贴代码会报错 谢谢大神,“Y轴正数的颜色是红的,负数颜色是绿的”很好用。 我的第二个问题是这样的 图上的Y轴不是有两条吗? 我的图实际上是根据右边Y轴的数据画出来的,左边的Y值只做一个显示的作用,现在想给左边Y轴设置一个初始值,和右边的“0%”对应,然后 左边Y轴值 = 初……
貌似解决了,目前没有足够多的数据让测试。。。 解决办法是 把右边Y轴设置照搬到左边,在显示的地方做文章就行了

 window.weeklyChart = new Highcharts.Chart({
        chart: {
            renderTo: 'week_trategy_container',
            plotBorderWidth: 1,
           // height: 600,
           // width:1000,
            type: 'line'
        },
        title: {
            text: null
        },
        credits:{
            enabled:false,
            position: {
                align: 'left',
                x: 350,
                verticalAlign: 'bottom'
            }
        },
        legend: {
            enabled:true

        },

        xAxis: {
            type: 'datetime',
            min:weekminDate,  //0表示1月 以此类推
            max:weekmaxDate,
            tickInterval :20*24*3600*1000,//X轴点间隔
            labels: {
                //align: 'left',
                formatter: function() {
                    return Highcharts.dateFormat('%Y-%m-%d', this.value);
                }
            }
        },
        yAxis:  [
            {
                lineWidth:1,
                //  gridLineColor: 'red',
                //endOnTick : true,
                gridLineDashStyle: 'shortdash',
                max:weekmaxYield,
                min:-weekmaxYield,
                opposite: true,
                tickInterval:week_pre_Yield,
                title: {
                    text: '收益率(%)'
                },
                labels: {
                    formatter: function() {
                        if (this.value >0) {
                            return '<span style="fill: red;">' + this.value + '</span>';
                        }
                        else if(this.value <0){
                                return '<span style="fill: green;">' + -(this.value) + '</span>';
                            }
                        else {
                                return this.value;
                            }
                    }
                }
            },
            {
                lineWidth:1,
                // gridLineColor: 'red',
                gridLineDashStyle: 'shortdash',
                max:weekmaxYield,
                min:-weekmaxYield,
                tickInterval:week_pre_Yield,
                title: {
                    text:'资金(万)'
                },
                labels: {
                    formatter: function() {                
                  return (this.value*weekInitCapital+weekInitCapital).toFixed(0)
                    }
                }
            }
        ],
        tooltip: {
            formatter: function() {
                return   this.series.name+'<br/><strong>日期:</strong>'+
                    Highcharts.dateFormat('%Y%m%d', this.x) +'<strong>XXX:</strong> '+ this.y+'%' ;
            }
        },
        plotOptions: {
            line: {
                dataGrouping: {
                    enabled: false
                }
            },
            series: {
                lineWidth:1,
                marker: {
                    radius: 1 //鼠标接触时 显示点的大小
                }

            }

        },
        series: weekstrategys

    });
    $.qicLoading({remove: true});//移除loading。。。
});
乔巴大大 2012-12-22
  • 打赏
  • 举报
回复
引用 7 楼 garr_odie 的回复:
我也用了highcharts,控件不错,可是我想用ajax传json字符串给x轴和y轴数据,发现实现不了,不知道楼主是如何给x轴和y轴绑定数据的?
目前是用的数据拼接,以后也会做成ajax加载,只要传入数据的格式正确了,highchart图会正常显示的,你可以用firebug调试看看,祝好运!
shelly 2012-12-21
  • 打赏
  • 举报
回复
我也用了highcharts,控件不错,可是我想用ajax传json字符串给x轴和y轴数据,发现实现不了,不知道楼主是如何给x轴和y轴绑定数据的?
乔巴大大 2012-12-18
  • 打赏
  • 举报
回复
引用 4 楼 josephSC 的回复:
改的时候我的if语句忘加 "}" 了,你自己加上,直接贴代码会报错
谢谢大神,“Y轴正数的颜色是红的,负数颜色是绿的”很好用。 我的第二个问题是这样的 图上的Y轴不是有两条吗? 我的图实际上是根据右边Y轴的数据画出来的,左边的Y值只做一个显示的作用,现在想给左边Y轴设置一个初始值,和右边的“0%”对应,然后 左边Y轴值 = 初始值*右边Y轴值 这东西弄了我好久都快要郁闷死了,先在这里谢谢了!
josephSC 2012-12-06
  • 打赏
  • 举报
回复
改的时候我的if语句忘加 "}" 了,你自己加上,直接贴代码会报错
josephSC 2012-12-06
  • 打赏
  • 举报
回复
1.我想给Y轴显示0的地方初始化一个数值 不是特别理解,是想在0做个分割线吗?如果是:

yAxis: {
            plotLines: [{ 
                width: 2,
                value: 0,
                id: 'plotline-1'
            }]
        },
2.Y轴正数的颜色是红的,负数颜色是绿的

yAxis:  [
                {
                    lineWidth:1,
                  //  gridLineColor: 'red',
                    gridLineDashStyle: 'shortdash',
                    max:maxYield*100,
                    min:-maxYield*100,
                    opposite: true,
                    tickInterval:(maxYield*100/3),
                    title: {
                        text: null
                    },
                    labels: {
                        formatter: function() {
                            //注意改的是这里!!!!!!
                            if (this.value >0) {
                                return '<span style="fill: red;">' + this.value +'%'; + '</span>';
                            else if(this.value <0){
                                return '<span style="fill: green;">' + this.value +'%'; + '</span>';
                            } else {
                                return this.value +'%';
                            }
                        }
                    }
                },
                {
                    lineWidth:1,
                   // gridLineColor: 'red',
                    gridLineDashStyle: 'shortdash',
                    max:1500,
                    min:-1500,
                    //opposite: true,
                    //tickInterval:500,
                    title: {
                        text: null
                    },
                    labels: {
                        formatter: function() {
                            //注意改的是这里!!!!!!
                            if (this.value >0) {
                                return '<span style="fill: red;">' + this.value; + '</span>';
                            else if(this.value <0){
                                return '<span style="fill: green;">' + this.value; + '</span>';
                            } else {
                                return this.value;
                            }
                        }
                    }
                }
               ],
  • 打赏
  • 举报
回复
你看下API有没有这种配置了,没有的话那就没搞了。。
乔巴大大 2012-11-12
  • 打赏
  • 举报
回复
求用过highchairs的大神帮帮忙
Highcharts 是一个用纯 JavaScript 编写的一个图表库, 能够很简单便捷的在 Web 网站或是 Web 应用程序添加有交互性的图表,并且免费提供给个人学习、个人网站和非商业用途使用。 Highcharts 支持的图表类型有直线图、曲线图、区域图、柱状图、饼状图、散状点图、仪表图、气泡图、瀑布流图等多达 20 种图表,其中很多图表可以集成在同一个图形中形成混合图。 兼容性 Highcharts 可以在所有的移动设备及电脑上的浏览器中使用,包括 iPhone,iPad 和 IE6 以上的版本,在 IOS 和 Android 系统中 Highcharts 支持多点触摸功能,因而可以给您提供极致的用户体验。在现代的浏览器中使用 SVG 技术进行图形绘制,在低版本 IE 则使用 VML 进行图形绘制。 free非商业使用免费 在个人网站、学校网站及非盈利机构中使用 Highcharts 完全不需要经过我们的许可,直接可以任意使用! 商业网站或网站,请查看我们的 使用协议及价格。 open开源 Highcharts 最重要的特点之一就是:无论免费版还是付费版,你都可以下载源码并可以对其进行编辑。 基于开源社区我们可以第一时间获取用户的需求、及时的 Bug 修复及吸收社区贡献。 no-backend纯 JavaScript Highcharts 完全基于 HTML5 技术,不需要再客户端安装任何插件,如 Flash 或 Java。此外你也不用配置任何服务端环境,不需要 PHP、Tomcat、ASP.NET 等,只需要两个 JS 文件即可运行。 chart-types丰富的图表类型 Highcharts 支持的图表类型有直线图、曲线图、区域图、柱状图、饼状图、散状点图、仪表图、气泡图、瀑布流图等多达 20 种图表,其中很多图表可以集成在同一个图形中形成混合图。 config-syntax简单的配置语法 在 Highcharts 中设置配置选项不需要任何高级的编程技术,所有的配置都是 JSON 对象,只包含用冒号连接的键值对、用逗号进行分割、用括号进行对象包裹。JSON 具有易于人阅读和编写,同时也易于机器解析和生成的特点。 动态交互性 Highcharts 支持丰富交互性,在图表创建完毕后,可以用丰富的 API 进行添加、移除或修改数据列、数据点、坐标轴等操作。 结合 jQuery 的 ajax 功能,可以做到实时刷新数据、用户手动修改数据等功能,结合事件处理,可以做到各种交互功能。 支持多坐标轴 多个数据进行对比这是非常常见的需求,Highcharts 可以让你为每个类型的数据添加坐标轴,每个轴可以定义放置的位置,所有的设置都可以独立生效,包括旋转、样式设计和定位,当然也支持多个数据共用一个坐标轴。 tooltip数据提示框 当鼠标划过图形时,Highcharts 可以将数据点或数据列的信息展示在提示框中,并且提示框会跟随用户的鼠标;我们做了大量工作,可以智能的显示离鼠标最近的点或被遮盖点的信息。 datetime时间轴 75% 的直角坐标系(包含 X轴 和 Y轴)图表中是时间轴图表,因为 Highcharts 对时间轴的处理非常智能。Highcharts 以毫秒为单位,可以精确的计算出月、周、日、小时、分钟等时间刻度的位置。 exporting导出和打印 Highcharts 支持导出功能,用户可以一键导出 PNG、JPEG、PDF 或 SVG 文件,通过插件可以实现导出为 Excel 文件功能;另外,用户还可以从网页上直接打印图表。 zooming缩放和钻取 通过缩放可以方便的查看不同范围的数据;通过钻取可以方便的查看不同级别的详细数据。 ajax方便加载外部数据 Highcharts 的数据是 JavaScript 数组或对象,这些数据可以是本地的配置对象,独立的数据文件(JSON、CVS)甚至是不同的网站上定义。另外,这些数据可以用任何形式处理好并加载到 Highcharts 中。 gauges仪表图 仪表图对于 Dashboard 来说特别理想,这种图表就像速度计一样,一眼就可以轻松阅读。 ajax极地图 折线图、面积图、柱形图等图形可以通过一个简单的配置转换成极地图、雷达图。 inverted图表或坐标轴反转 Highcharts 支持图表反转(X 轴或 Y轴对调),这样 X轴是垂直的,方便进行数据对比;坐标轴旋转则可以坐标轴的最大值和最小值显示对调。 rotation文本旋转 图表中所有的文本,包括坐标轴标签、数据标签等都可以进行任意角度旋转。

52,787

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧