我使用jqPlot作为我的图表框架,并在我的应用程序中有许多图表,主要是线条和堆积条形图.
我现在要求只显示这些图表上的水平网格线,并且在jqPlot中没有看到任何选项来执行此操作.
有一个showGridline选项,但完全禁用网格线.
是否可以仅删除jqPlot中的垂直网格线并继续显示水平网格线?
我必须使用python后端在浏览器上绘制图表(这可能无关紧要).为实现这一目标,有许多图书馆,如JQPlot,D3,Google Charts.
但是如果你对它们进行分类,它们要么基于HTML5 Canvas,要么基于SVG.两者都是他们自己领域的重要技术.但
for charting as a subject, shall I go with SVG based libraries or 
HTML5 Canvas based libraries. What are downside and benefits of 
both approaches. 
我没有任何绘图经验,也不想在我启动项目后碰壁.
我正在使用jquery插件jqplot来绘制一些条形图.在悬停时,我想在工具提示中显示栏的刻度及其值.我试过了
highlighter: { show: true, 
            showTooltip: true,      // show a tooltip with data point values.
            tooltipLocation: 'nw',  // location of tooltip: n, ne, e, se, s, sw, w, nw.
            tooltipAxes: 'both',    // which axis values to display in the tooltip, x, y or both.
            lineWidthAdjust: 2.5   // pixels to add to the size line stroking the data point marker
            }
但它不起作用.酒吧视觉上变得更轻,顶部有一个小点(理想情况下会消失 - 可能来自折线图渲染器的东西),但在任何地方都没有工具提示.谁知道我怎么做到这一点?我会有很多条形,所以如果我只在那里显示它们,那么x轴将会变得杂乱无章.
我有一个jqplot条形图,我希望在用户更改下拉列表中的值时更改图表数据.这是有效的,但问题是每次用户更改值时条形图重绘,一个在另一个上.
如何更新或重新加载条形图而不再绘制整个图形?是否有任何财产价值?
图表数据根据ajax调用而变化:
$.ajax({
    url: '/Home/ChartData',
    type: 'GET',
    data: { Id: Id },
    dataType: 'json',
    success: function (data) {
        $.jqplot('chartDiv', [a, b], CreateBarChartOptions(xAxis));
}});
function CreateBarChartOptions(xAxis) {
    var optionsObj = {
        title: 'Stat',
        axes: {
            xaxis: {
                renderer: $.jqplot.CategoryAxisRenderer,
                ticks: xAxis
            },
            yaxis: { min: 0 }
        },
        series: [{ label: 'A' }, { label: 'B'}],
        seriesDefaults: {
            shadow: true,
            renderer: $.jqplot.BarRenderer,
            rendererOptions: {
                barPadding: 8,
                barMargin: 10
            }
        },
    };
    return optionsObj;
}
回复将受到高度赞赏.谢谢.
在调整浏览器大小时,是否有一种简单的方法可以自动调整jqplot图表的大小?我一直在寻找谷歌,但没有找到任何东西.
我正在使用JqPlot图表,我的问题是我想在不同的点击事件上加载不同的数据.
但是一旦创建了图表并首次加载了数据; 我不知道当另一个事件触发时如何加载数据意味着我想重用图表对象并希望在事件被触发时加载/重新绘制数据...
chartObj.data = [graphData]
我在jqPlot项目上执行动作点击时遇到了一些问题,我希望其他人可以对出现问题的方法有所了解.
我有一个用jqPlot渲染的条形图,它使用以下代码将点击事件处理程序附加到(在jqPlot图表上):
$.jqplot.eventListenerHooks.push(['jqplotClick', myClickHandler]);
myClickHandler看起来像这样:
function myClickHandler(ev, gridpos, datapos, neighbor, plot) {
  alert('you have triggered click action');
}
我的意图是通过使用这个简单的jqPlot实现,当在图表内的区域(包括条形图项目)上传递点击时,将触发警报操作.这适用于任何桌面浏览器(IE6/7/8/9,Chrome,Safari).
然而,我遇到的问题是,当我使用iPhone/iPad访问网站时,除了上面指定的点击操作表现异常外,所有内容都完美呈现.
如果我尝试触摸任何条形图项目,它不会警告"您已触发点击操作" - 好像什么也没发生.
但是,当我尝试单击(触摸)图表的空白区域时,警报消息会正常触发.
有任何想法吗?
我正在尝试设置jqplot条形图条的颜色.总会有六个条形图,分为两组条形图.以下是绘制数据的示例:
 line1 = [6000, 5000, 5500];
 line2 = [16000, 10000, 14000];
到目前为止我使用了以下内容:
 seriesColors: ["#F3CBBF", "#BFDDE5", "#CF3501", "#027997", "#CF3501", "#027997"],
但是jqplot每次在前两个条之间交替,而不是使用所有声明的颜色.这可能是因为它只确定存在2个系列,每组数据一个.
有没有办法明确设置条形颜色?
jqPlot能够为图表创建图例.这些示例仅显示垂直图例.我想制作一个水平的传奇.例如,我想:
X-Label1 X-Label2 X-Label3
而且不想要:
X-Label1
X-Label2
X-Label3
谢谢