Как отобразить отформатированное значение в пузырьковой диаграмме с помощью отчетов iccube v6?

Используя отчеты V6, я создал пузырьковую диаграмму с простыми процентными значениями. Я могу отформатировать значения оси, используя свойство «формат». Но во всплывающей подсказке Bubble значение по-прежнему является необработанным значением... Есть ли способ показать отформатированное значение вместо значения?

введите здесь описание изображения

Вот код отчета на основе схемы "Продажи", который легко воспроизвести:

{
"classID": "ic3.ReportGuts",
"guts_": {
    "schemaName": "Sales",
    "cubeName": "Sales",
    "themeId": "ic3-elegant",
    "ic3Rev": 4015,
    "layout": {
        "classID": "ic3.FixedLayout",
        "guts_": {
            "grid": 10,
            "boxes": [
                {
                    "classID": "ic3.FixedLayoutBox",
                    "guts_": {
                        "behaviour": "Fixed Box",
                        "position": {
                            "top": 10,
                            "left": 10,
                            "width": 930,
                            "height": 460
                        },
                        "advanced": {
                            "zIndex": 15
                        },
                        "header": "@{bubbleTitle}",
                        "boxStyle": "zoneRequired",
                        "ic3_uid": "ic3-5",
                        "widgetAdapterUid": "w1"
                    }
                }
            ]
        }
    },
    "widgetMgr": {
        "classID": "ic3.WidgetAdapterContainerMgr",
        "guts_": {
            "items": [
                {
                    "classID": "ic3.GoogleChartsAdapter",
                    "guts_": {
                        "configState": 3,
                        "navigationGuts": {
                            "classID": "ic3.NavigationStrategy",
                            "guts_": {
                                "menuVisibility": {
                                    "back": false,
                                    "reset": false
                                },
                                "maxAxisMemberCount": 25
                            }
                        },
                        "dataRenderOptions": {
                            "chartType": {
                                "label": "Bubble",
                                "id": "bubble-google-chart",
                                "proto": {
                                    "options": {
                                        "width": "100%",
                                        "height": "100%",
                                        "bubble": {
                                            "textStyle": {
                                                "fontSize": 10
                                            }
                                        }
                                    },
                                    "chartType": "BubbleChart"
                                }
                            },
                            "axesConfiguration": null,
                            "graphsConfiguration": null,
                            "advanced": {
                                "hAxis": {
                                    "format": "\"##.##%\""
                                },
                                "vAxis": {
                                    "format": null
                                },
                                "legend": {
                                    "position": "none"
                                },
                                "colorAxis": {
                                    "colors": [
                                        "#1F77B4",
                                        "#FF7F0E",
                                        "#2CA02C",
                                        "#D62728",
                                        "#9467BD",
                                        "#8C564B",
                                        "#E377C2",
                                        "#7F7F7F",
                                        "#BCBD22",
                                        "#17BECF"
                                    ],
                                    "legend": {
                                        "position": "none"
                                    }
                                },
                                "explorer": {},
                                "sizeAxis": {
                                    "minSize": 7
                                },
                                "tooltip": {
                                    "format": null
                                }
                            }
                        },
                        "ic3_name": "widget-12",
                        "ic3_eventMapper": {
                            "classID": "ic3.EventWidgetMapper",
                            "guts_": {
                                "__ic3_widgetEventsDescription": {}
                            }
                        },
                        "navigationOptions": {
                            "menuVisibility": {
                                "back": false,
                                "reset": false
                            }
                        },
                        "hooks": {
                            "beforeData": "/**\n * Return data object\n */\nfunction(context, data, $box) {\n    //bubble on data received\n    debugger\n\treturn data;\n}",
                            "beforeRender": "/**\n * Return patched \n * options object.\n */\nfunction(context, options) {\n    //bubble before render\n\treturn options;\n}"
                        },
                        "ic3_uid": "w1",
                        "ic3_mdxBuilderUid": "m1"
                    }
                }
            ]
        }
    },
    "constantMgr": {
        "classID": "ic3.ConstantsMgr",
        "guts_": {}
    },
    "cssMgr": {
        "classID": "ic3.CssMgr",
        "guts_": {}
    },
    "javascriptMgr": {
        "classID": "ic3.ReportJavascriptMgr",
        "guts_": {
            "js": "/**                                                                      \n * A function called each time an event is generated.                    \n *                                                                       \n * @param context the same object is passed between consumeEvent calls.  \n *                Can be used to store information.                      \n *        {                                                              \n *          $report   : jQuery context of the report container           \n *          fireEvent : a function( name, value ) triggering an event    \n *        }                                                              \n *                                                                       \n * @param event the event information                                    \n *                                                                       \n          {                                                              \n *          name  : as specified in the 'Events' tab                     \n *          value : (optional) actual event value                        \n *          type  : (optional) e.g., ic3selection                        \n *        }                                                              \n *                                                                       \n * Check the 'Report Event Names' menu for the list of available events. \n */                                                                      \n/*                                                                       \nfunction consumeEvent( context, event ) {                                \n  if (event.name == 'ic3-report-init') {                                 \n    // add your code here                                                \n  }                                                                      \n}                                                                        \n*/                                                                       \n"
        }
    },
    "calcMeasureMgr": {
        "classID": "ic3.CalcMeasureMgr",
        "guts_": {
            "measures": []
        }
    },
    "mdxQueriesMgr": {
        "classID": "ic3.MdxQueriesContainerMgr",
        "guts_": {
            "mdxQueries": {
                "classID": "ic3.BaseContainerMgr",
                "guts_": {
                    "items": [
                        {
                            "classID": "ic3.QueryBuilderWidget",
                            "guts_": {
                                "mode": "MDX",
                                "options": {
                                    "WIZARD": {
                                        "cubeName": null,
                                        "measures": [],
                                        "rows": [],
                                        "rowsNonEmpty": false,
                                        "columns": [],
                                        "columnsNonEmpty": false,
                                        "filter": []
                                    },
                                    "MDX": {
                                        "statement": "with\nmember [PDM Sejours] as 0.5072 ,format_string=\"percent\"\nmember [Evo PDM] as 0.00291 ,format_string=\"percent\"\nmember [Activité Etablissements] as 8113 ,format_string=\"#,###\"\nselect \n  NON EMPTY {[Measures].[PDM Sejours], [Measures].[Evo PDM] , [Measures].[Activité Etablissements]}  ON COLUMNS, \nNON EMPTY {[Product].[Product].[Company].[icCube]} on ROWS \nfrom [Sales]\n"
                                    }
                                },
                                "ic3_name": "mdx Query-0",
                                "ic3_uid": "m1",
                                "schemaSettings": {}
                            }
                        }
                    ]
                }
            },
            "mdxFilter": {
                "classID": "ic3.BaseContainerMgr",
                "guts_": {
                    "items": []
                }
            },
            "actionBuilders": {
                "classID": "ic3.BaseContainerMgr",
                "guts_": {
                    "items": []
                }
            }
        }
    },
    "customLocalizations": []
}

}


person Bertrand Miot    schedule 06.03.2017    source источник
comment
Это проблема визуализации Google ( developers.google.com/chart/interactive/docs /roles#tooltiprole), можете ли вы перенести диаграмму в amcharts?   -  person ic3    schedule 06.03.2017
comment
Я видел, что некоторые всплывающие подсказки недоступны с пузырьковой диаграммой... Но... Это работало (и работает до сих пор) в icCube V5. Итак... Я думаю, что есть способ сделать это... ;-) Я попробую с Amcharts, чтобы посмотреть, получу ли я все, что мне нужно... Спасибо.   -  person Bertrand Miot    schedule 06.03.2017
comment
Это будет исправлено в следующей версии (это уже исправлено в нашем разработчике)   -  person ic3    schedule 06.03.2017


Ответы (1)


форматирование данных для диаграммы должно отображаться во всплывающей подсказке

не знаком с iccube, однако при загрузке данных вы можете использовать нотацию объектов Google

предоставить как значение (v:), так и отформатированное значение (f:)

например, вместо загрузки следующей строки данных...

['Sub-Saharan Africa', 80, 1.023],

использовать обозначение объекта...

[{v: 'Sub-Saharan Africa'}, {v: 80, f: 'test 80'}, {v: 1.023, f: 'test 1.023000000'}],

всплывающая подсказка должна отображать значение для f:


см. следующий рабочий фрагмент...

google.charts.load('current', {
  callback: function () {
    var data = new google.visualization.DataTable({
      cols: [
        {label: 'ID', type: 'string'},
        {label: 'X', type: 'number'},
        {label: 'Y', type: 'number'}
      ],
      rows: [
        {c:[{v: 'Sub-Saharan Africa'}, {v: 80, f: 'test 80'}, {v: 1.023, f: 'test 1.023000000'}]},
        {c:[{v: 'Arab States'}, {v: 80, f: 'test 80'}, {v: 1.022, f: 'test 1.0220000000'}]},
        {c:[{v: 'East Asia and the Pacific'}, {v: 80, f: 'test 80'}, {v: 1.21, f: 'test 1.2100000000'}]}
      ]
    });

    var container = document.getElementById('chart_div');
    var chart = new google.visualization.BubbleChart(container);
    chart.draw(data);
  },
  packages: ['corechart']
});
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div"></div>

person WhiteHat    schedule 06.03.2017
comment
Txs WhiteHat, помогает в понимании... но часть кода встроена в iccube, боюсь не иметь такого подробного доступа... - person Bertrand Miot; 06.03.2017
comment
но это помогает нам понять, как это исправить :-) - person ic3; 06.03.2017