javascript - Canvasjs:根据屏幕尺寸不同设置

标签 javascript jquery canvasjs

我正在使用 CanvasJs对于条形图,但我想根据屏幕大小进行不同的设置。

例如,对于小于 480 像素的屏幕,我想在 axisY 上完全隐藏标签。如何做到这一点?

似乎无法使用媒体查询和css 来自定义图表。

这是一个例子:

<script type="text/javascript">
    window.onload = function () {
        var chart = new CanvasJS.Chart("chartContainer", {
            title: {
                text: "Understanding Labels"
            },
            axisY: {
                labelFontSize: 20
            },
            axisX: {
                labelAngle: -30
            },
            data: [
            {
                type: "column",
                dataPoints: [
                { y: 10, label: "Apples" },
                { y: 15, label: "Mangos" },
                { y: 25, label: "Oranges" },
                { y: 30, label: "Grapes" },
                { y: 28, label: "Bananas" }
                ]
            }
            ]
        });

    chart.render();
    }
</script>

我尝试过类似这样的方法,但显然行不通:

axisY: {
  labelFormatter: function(e) {
    if ($(window).width() < 480) {
      return "";
    },
  },
},

最佳答案

您可以在 axisY 对象之外为 labelFormatter 定义一个函数。

axisY: {
    labelFormatter: axisYLabels,
},

这里可以根据窗口的宽度修改axisY的标签。

function axisYLabels(e) {
    if ($(window).width() < 480) {
       return "";
    } else {
        return e.value;
    }
}

您可以看到正在运行的 fiddle在这里。

关于javascript - Canvasjs:根据屏幕尺寸不同设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43842535/

相关文章:

javascript - 如何根据单击的提交按钮传递不同的隐藏输入字段

javascript - 如何使用Javascript实现动态翻页/ curl ?

javascript - 我们如何使用 Grid 配置 Kendo-UI ComboBox。

javascript - 尝试更新时如何避免 HTML Select Multiple 中出现重复选项

javascript - 获取 dataTables 和 twitter bootstrap 工作时出现问题

javascript - 如何访问多维数组数据?

javascript - canvasJS 图表无法正确渲染

javascript - Canvas JS 图表不适用于大数据和小数据

php - 如何在 CanvasJS 图表中显示格式化的日期时间?

javascript - 对象类型的 fill() 方法