javascript - 如何更改 ChartJS 模板上的轴、标题、图例格式

标签 javascript axis-labels chart.js

对于 javascript 和 html 来说还是个新手,我已经成功构建了一个简单的计算器,它也可以绘制一些输出的图表。为此,我使用下面的 Chartjs 模板。我希望能够更改 y 轴、标题和图例的字体,因为它在创建时看起来确实“不稳定”,但是,我不知道在哪里可以找到/定义适当的参数以及什么他们将是。另外,如果图表标题太长,我该如何将其换行到第二行?我可以在脚本中指定这些项目吗?还是必须操作 dx.chartjs 文件?如果是,我需要在哪里进行更改?

非常感谢您的帮助

    <html>
    <head>
    <title> Savings </title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        
        <script src="js/jquery-1.10.2.min.js"></script>
        <script src="js/knockout-3.0.0.js"></script>
        <script src="js/globalize.min.js"></script>
        <script src="js/dx.chartjs.js"></script>
    </head>

    <script language="javascript">

    function btnCalculateTotal_Click()
    {

    houses = 0;
    cars = 0;

    houses = Number(frmSimpleCalculator.txtValue1.value);
    cars = Number(frmSimpleCalculator.txtValue2.value);
    sngTotal = houses + cars
    frmSimpleCalculator.txtTotal.value = sngTotal;

    test = 200
    var dataSource = [{ savings: "", Houses: sngTotal, Cars: 300 },];
 
    $("#chartContainer").dxChart({
    dataSource: dataSource,
    commonSeriesSettings: {
        argumentField: "savings",
        type: "bar",
        hoverMode: "allArgumentPoints",
        selectionMode: "allArgumentPoints",
        label: {
            visible: true,
            format: "fixedPoint",
            precision: 0
                }
                          },
    series: [
        { valueField: "Houses", name: "Houses" },
        { valueField: "Cars", name: "Cars" }
            ],
            
    title: "Savings potential",
    legend: {
        verticalAlignment: "bottom",
        horizontalAlignment: "center"
            },
    
    pointClick: function (point) {
        this.select();
                                 }
                            });
    }
            

    </script>

    <body bgcolor="#aaaaaa">

    <table style="background-color:black; color:white; width:800">
    <tr>
    <td>
    <strong>calculator</strong>
    </td>
    </tr>
    </table>

    <form name="frmSimpleCalculator" action="" method="get">
    <fieldset name="fraSimpleCalculator" style="width:1">
    <legend>Economic Savings Calculator</legend>
    <table width="300" border="0">

    <!-- Value 1 -->
    <tr>
    <td align="left">
    Houses:
    </td>
    <td align="right">
    <input type="text" value="50000" name="txtValue1" size="10" maxlength="10" style="text-align:right">
    </td>
    </tr>

    <!-- Value 2 -->
    <tr>
    <td align="left">
    Cars:
    </td>
    <td align="right">
    <input type="text" value="25" name="txtValue2" size="10" maxlength="10" style="text-align:right">
    </td>
    </tr>

    <!-- Horizontal rule -->
    <tr>
    <td align="center" colspan="2">
    <hr />
    </td>
    </tr>

    <!-- Total -->
    <tr>
    <td align="left">
    Total:
    </td>
    <td align="right">
    <input type="text" value="0" name="txtTotal" size="10" maxlength="5" style="text-align:right">
    </td>
    </tr>

    <!-- Calculate Button -->
    <tr>
    <td align="center" colspan="2">
    <input type="button" value="Calculate Total" name="btnCalculateTotal" style="width:150" OnClick="btnCalculateTotal_Click();">
    </td>
    </tr>

    <!-- Calculate Chart Button -->
    <tr>
    <td align="center" colspan="2">
    <input type="button" value="Update Chart" name="btnCalculateChart" style="width:150" OnClick="Thomas();">
    </td>
    </tr>


        <div class="content">
            <div class="pane">
                <div class="long-title"><h3></h3></div>
                <div id="chartContainer" style="width: 250px; height: 440px;" style="position:absolute; TOP:200px; LEFT:350px"></div>       
            </div>
        </div>
    </body>
    </html>

最佳答案

1) 您可以通过相应选项元素的“font”属性设置标题、图例和坐标轴的字体选项

legend: {
   font: {
      color: 'black',
      family: 'Zapf-Chancery, cursive',
      opacity: 1,
      weight: 700
    }
}

您可以在 ChartJS documentation 中找到更多示例.

2) 您可以使用 HTML 标签 br 将标题换行到第二行

title: "This is my<br/>long title"

关于javascript - 如何更改 ChartJS 模板上的轴、标题、图例格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20567420/

相关文章:

javascript - 退格键在 Firefox 的输入字段中不起作用

javascript - Firestore Cloud Function 时间戳转换

javascript - angular js计时器功能不适用于停止按钮

python - matplotlib中轴标签文本顶部的位置是什么?

python - 在 matplotlib 图的轴上显示小数位和科学记数法

python-3.x - 如何将 matplotlib 图形的 `ylabel` 拆分成行?

javascript - CHART.js 散点图中 x 轴的非数字

javascript - 在 React 中将 props 传递给不工作的 child

reactjs - Chart.js - 增加 y 轴和第一个栏之间的空间

javascript - charts.js 直线 - 我找不到解决方案