明天会更好 发表于 2022-12-13 12:58:29

charts双坐标系问题(SJS-16479)

本帖最后由 Richard.Ma 于 2023-1-6 14:04 编辑

横坐标数据一样,两个纵坐标,我这样写代码,出现两个横坐标,如何去掉?还有servies1 和 servies2这个如何去掉?每个线条旁边取一个名字


var columnChart = sheet1.charts.add('columnChart', GC.Spread.Sheets.Charts.ChartType.xyScatter, 800, 500, 400, 400);
      var series = columnChart.series();
    series.add({
      chartType: GC.Spread.Sheets.Charts.ChartType.xyScatter,
       //axisGroup: GC.Spread.Sheets.Charts.AxisGroup.primary,
      name: "22",
      xValues: "H36:H42",
      yValues: "I36:I42"
    });
   
    series.add({
      chartType: GC.Spread.Sheets.Charts.ChartType.xyScatter,
      axisGroup: GC.Spread.Sheets.Charts.AxisGroup.secondary,
      name: "11",
      xValues: "H36:H42",
      yValues: "J36:J42"
    });
    var axes = columnChart.axes();
    axes.primaryCategory.style.color = 'orange';
    axes.primaryCategory.title.color = 'orange';
   // axes.primaryCategory.title.text = 'Primary Category Axis';

    axes.primaryValue.style.color = 'red';
    axes.primaryValue.title.color = 'red';
   // axes.primaryValue.title.text = 'Primary Value Logarithmic Axis';
    axes.primaryValue.title.fontSize = 16;
    axes.primaryValue.scaling = {
      logBase: 2
    };

    axes.secondaryCategory.visible = true;
    axes.secondaryCategory.style.color = 'green';
    axes.secondaryCategory.title.color = 'green';
   // axes.secondaryCategory.title.text = 'Secondary Category Axis';
    axes.secondaryCategory.title.fontSize = 16;

    axes.secondaryValue.style.color = 'blue';
    axes.secondaryValue.title.color = 'blue';
    axes.secondaryValue.format = 'General';
   // axes.secondaryValue.title.text = 'Secondary Value Axis';
    var columnChartTitle = columnChart.title();
    columnChartTitle.text = "Product Sales";
    columnChart.title(columnChartTitle);
      axes.primaryCategory.min = 60;
      axes.primaryCategory.max = 90;
      axes.primaryCategory.majorUnit = 10;
    columnChart.axes(axes);
    let targetSeriesIndex = 0;
            let targetSeries = columnChart.series().get(targetSeriesIndex);
            let linearTrendline = {
                type: GC.Spread.Sheets.Charts.TrendlineType.linear,
                style: {
                  color: 'red',
                  width: 2
                }
            };
            targetSeries.trendlines = [linearTrendline];
            columnChart.series().set(targetSeriesIndex, targetSeries);
            let targetSeriesIndex1 = 1;
            let targetSeries1 = columnChart.series().get(targetSeriesIndex1);
            let linearTrendline1 = {
                type: GC.Spread.Sheets.Charts.TrendlineType.linear,
                style: {
                  color: 'BLUE',
                  width: 2
                }
            };
            targetSeries1.trendlines = [linearTrendline1];
            columnChart.series().set(targetSeriesIndex1, targetSeries1);


Ellia.Duan 发表于 2022-12-13 12:58:30

明天会更好 发表于 2023-3-7 09:44
请问我提的问题解决了吗?发布了吗?

您好,v16.0.4已发布,请您下载更新进行测试。

Richard.Ma 发表于 2022-12-13 18:32:51

本帖最后由 Richard.Ma 于 2022-12-13 18:34 编辑


1在每个线后面给一个文本名称,这个目前无法实现


2隐藏legned
var legend=sheet.charts.all().legend();
legend.visible=false;
sheet.charts.all().legend(legend);


3只有一个横坐标,可以把第二个坐标轴secondaryCategory设置为隐藏
axes.secondaryCategory.visible = false;


明天会更好 发表于 2022-12-14 10:16:15

本帖最后由 明天会更好 于 2022-12-14 10:17 编辑

我横坐标设置了最大值为90和最小值为60,最小值有作用,最大值没有,我看数据列表也没有超过90的横坐标值,我这个是双坐标系


var charts = sheet.charts.all();
          var axes = charts[0].axes();
         
          axes.primaryCategory.min =60;
          axes.primaryCategory.max =90;
             axes.primaryValue.min =sheet.getValue(43,8);
             axes.primaryValue.max =sheet.getValue(44,8);

             axes.secondaryValue.min = 30;
             axes.secondaryValue.max = 80;
             axes.primaryValue.title.text = 'Hst(Pa)';
            axes.secondaryValue.title.text = 'η(%)';
            axes.secondaryCategory.visible = false;
             charts[0].axes(axes);











Richard.Ma 发表于 2022-12-14 11:55:41

暂时没有办法判断原因,请上传一个重现问题的demo上来,

明天会更好 发表于 2022-12-14 13:04:40

sheet名称为检验数据打印,第二个echarts的双坐标系,横坐标设置最小值 60和最大值 为90,最大值90不起作用,最大值变为120了

axes1.primaryCategory.min =60;
axes1.primaryCategory.max =90;


Richard.Ma 发表于 2022-12-14 16:38:16

问题可以重现,此问题需要和研发是否为bug,帖子暂时保留处理,后续有进展会在帖子中回复

明天会更好 发表于 2022-12-14 20:12:50

好的,希望快点,我这边项目需要他上线

Richard.Ma 发表于 2022-12-15 10:29:00

好的,有新的进展会尽快回复

明天会更好 发表于 2023-1-6 11:15:22

你好,我这边提出的问题你那边解决了吗?我双纵坐标系的charts,图表横坐标没有设置横坐标最小值和最大值的地方
页: [1] 2 3 4
查看完整版本: charts双坐标系问题(SJS-16479)