【问题标题】:Kendo UI DataViz bar chart x axis labels overlappingKendo UI DataViz 条形图 x 轴标签重叠
【发布时间】:2023-03-11 22:46:01
【问题描述】:

X 轴标签在 MVC4 条形图中重叠。任何解决它的想法。提前致谢。

@(Html.Kendo().Chart<McAfee.CBRMS.CodeAnalysisReport.BL.Utility.ModuleViewModel>()
        .Name("StaticAnalysisOverAllBarGraph")
        .DataSource(dataSource => dataSource
            .Read(read => read.Action("GetStaticAnalysisOverAllBarGraph", "Home",new { filepath = ViewData["filePath"], jobId = ViewData["jobId"]}))
        )
      .Series(series => {
          series.Column(model => model.CriticalErrors).Name("Critical Errors").Color("DarkRed");

      series.Column(model => model.Errors).Name("Errors").Color("Red");
      series.Column(model => model.CriticalWarning).Name("Critical Warning").Color("Orange");
      series.Column(model => model.Warning).Name("Warnings").Color("Yellow");
    })
     .ValueAxis(axis => axis.Numeric()
        .Labels(labels => labels.Rotation(5)
            .Format("{0}")
        )
    )
    .CategoryAxis(axis => axis
        .Categories(model => model.Name)
        )
        .Tooltip(tooltip => tooltip
        .Visible(true)
        .Format("{0}")
    )
    )

【问题讨论】:

    标签: asp.net-mvc-4 kendo-ui


    【解决方案1】:

    类别轴:{ 标签:{旋转:-45},

    这会有帮助吗?改变度数以防止重叠。您还可以使标签不可见(,可见:假)并改为提供工具提示

    【讨论】:

      【解决方案2】:

      试试这个例子,

      <script>
          function createChart() {
              $("#chart").kendoChart({
                  title: {
                      text: "Site Visitors Stats /thousands/"
                  },
                  legend: {
                      visible: true
                  },
                  seriesDefaults: {
                      type: "bar"
                  },
                  series: [{
                      name: "Total Visits",
                      data: [56000, 63000, 74000, 91000, 117000, 138000]
                  }, {
                      name: "Unique visitors",
                      data: [52000, 34000, 23000, 48000, 67000, 83000]
                  }],
                  valueAxis: {
                      max: 140000,
                      line: {
                          visible: false
                      },
                      minorGridLines: {
                          visible: true
                      }
                  },
                  categoryAxis: {
                      labels: {
                          background: "green",
                          color: "white",
                          visible:true
                      },
                      categories: ["Janasdfasdfasdfasdfsadfasdf", "Febasdfasdfasdfasdfjhkhsadf", "Marasdfasdfasdfasdfasdfasdf", "Apr", "May", "Jun"],
                      crosshair: {
                          tooltip: {
                              padding: {
                                  right: 20,
                                  left: 20
                              },
                              background: "green",
                              visible: true
                          },
                          visible: true
                      },
                      majorGridLines: {
                          visible: true
                      }
                  },
                  tooltip: {
                      visible: true,
                      template: "#= series.name #: #= value #"
                  }
              });
          }
      
          $(document).ready(createChart);
      </script>
      

      HTML 视图

      <div id="chart">
      </div>
      

      使用 crosshair 作为标签 tooltip 。我不知道如何打破标签的 150 个字符,但如果您在 labels 中执行 visible:false,那么您的标签仅显示在 tooltip

      【讨论】:

      • 对不起!我的问题还没有解决。 X 轴标签仍然重叠。 X 轴标签长度大(150 包)。我想只显示其中的一部分,鼠标悬停在应用程序上应该显示整个文本。有可能吗?
      • @srikar gandhi:我只是更新我的代码。但不知道如何破解标签字符。
      猜你喜欢
      • 1970-01-01
      • 2018-12-31
      • 1970-01-01
      • 1970-01-01
      • 2021-02-18
      • 2021-09-04
      • 1970-01-01
      • 2017-07-11
      • 2016-05-01
      相关资源
      最近更新 更多