如何在 Zingchart 条形图中的下一行显示大 X 轴标签?

How to display big X axis labels in next line in Zingchart bar graph?

我有下面的条形图 json:

    {
"graphset":[
    {
        "type":"bar3d",
        "series":[
            {
                "values":[10323,2023,41346.8,29364.6],
                "tooltip":{
                    "text":"₹%v"
                }
            }
        ],
        "3d-aspect":{
            "true3d":0,
            "y-angle":10,
            "depth":30
        },
        "legend":{
            "visible":false
        },
        "scale-y":{
            "format":"₹%v",
            "bold":true,
            "label":{
                "text":"Amount",
                "font-size":"14px"
            }
        },
        "scale-x":{
            "values":["Vegetables & Fruits","Groceries","Dairy & Beverages","Meat"],
            "short":true,
            "auto-fit":true,
            "items-overlap":true,
            "bold":true,
            "label":{
                "text":"Category",
                "font-size":"14px"
            }
        },
        "plotarea":{
            "margin":"dynamic"
        },
        "gui":{
            "context-menu":{
                "empty":false
            }
        },
        "plot":{
            "background-color":"red",
            "border-color":"#BBBBBB",
            "bar-width":"30px",
            "bar-space":"20px"
        },
        "no-data":{
            "text":"No analytics data available",
            "bold":true,
            "font-size":18
        }
    }
]
}

而条形图的截图是:

如图所示,x 轴标签相互重叠。我希望每个标签都清晰明了。如果名字很大,可以移到下一行吗?我已经固定 space 分配,所以我 不能 增加每个条之间的宽度,我也不想使用 max-chars 属性,因为我想显示全名。另外,我将无法使用 font-angle 将名称设置为另一个角度——我只希望它们处于这个角度。

感谢任何帮助。

适当的方法

  1. 最好的方法是使用 max-chars 的缩写或显示截断的 values 然后在那些显示整个值的标签上显示 tooltip
  2. 使用有角度的文本也是非常合理的。

Other solution

最好应用规则并每隔 scaleX.item 以不同的行高显示。你可以用规则来做到这一点

"scale-x":{
  "labels":["Vegetables & Fruits","Groceries","Dairy & Beverages","Meat"],
  "items-overlap":true,
  "bold":true,
  "label":{
      "text":"Category",
      "font-size":"14px",
      offsetY: 5
  },
  item: {
    rules: [
      {
        rule: '%i%2 == 1',
        offsetY:13
      }  
    ]
  }
}

var myConfig = {
        "type":"bar3d",
        "series":[
            {
                "values":[10323,2023,41346.8,29364.6],
                "tooltip":{
                    "text":"₹%v"
                }
            }
        ],
        "3d-aspect":{
            "true3d":0,
            "y-angle":10,
            "depth":30
        },
        "legend":{
            "visible":false
        },
        "scale-y":{
            "format":"₹%v",
            "bold":true,
            "label":{
                "text":"Amount",
                "font-size":"14px"
            }
        },
"scale-x":{
      "labels":["Vegetables & Fruits","Groceries","Dairy & Beverages","Meat"],
      "items-overlap":true,
      "bold":true,
      "label":{
          "text":"Category",
          "font-size":"14px",
          offsetY: 5
      },
      item: {
        rules: [
          {
            rule: '%i%2 == 1',
            offsetY:13
          }  
        ]
      }
  },
        "plotarea":{
            "margin":"dynamic"
        },
        "gui":{
            "context-menu":{
                "empty":false
            }
        },
        "plot":{
            "background-color":"red",
            "border-color":"#BBBBBB",
            "bar-width":"30px",
            "bar-space":"20px"
        },
        "no-data":{
            "text":"No analytics data available",
            "bold":true,
            "font-size":18
        }
    }


zingchart.render({ 
 id: 'myChart', 
 data: myConfig, 
 height: 400, 
 width: 450 
});
html, body {
 height:100%;
 width:100%;
 margin:0;
 padding:0;
}
#myChart {
 height:100%;
 width:100%;
 min-height:150px;
}
.zc-ref {
 display:none;
}
<!DOCTYPE html>
<html>
 <head>
 <!--Assets will be injected here on compile. Use the assets button above-->
  <script src= "https://cdn.zingchart.com/zingchart.min.js"></script>
 </head>
 <body>
  <div id="myChart"><a class="zc-ref" href="https://www.zingchart.com">Powered by ZingChart</a></div>
 </body>
</html>