on 2024 May 14 10:13 AM
Hello,
I'm looking for a way to customise the colours of the curves in a graphic.
To do this, I'm using the CL_GUI_CHART_ENGINE class with a ChartLine graph. I'm able to change the background and pass several globalsettings (I'm using GRAPHICS_GUI_CE_DEMO for inspiration) but I can't designate the default colours for the curves and I can't designate a colour for each of my curves.
Do you have a demo of a simplified code to help me?
Here is my current code for sending global settings:
*************************************************************************************************
METHOD set_custo.
DATA: l_ixml_doc TYPE REF TO if_ixml_document,
l_root TYPE REF TO if_ixml_element,
l_series TYPE REF TO if_ixml_element,
l_colors TYPE REF TO if_ixml_element,
l_color TYPE REF TO if_ixml_element,
l_globalsettings TYPE REF TO if_ixml_element,
l_default TYPE REF TO if_ixml_element,
l_element TYPE REF TO if_ixml_element,
l_encoding TYPE REF TO if_ixml_encoding,
l_ostream TYPE REF TO if_ixml_ostream,
l_xstr TYPE xstring.
l_ixml_doc = go_ixml->create_document( ).
l_encoding = go_ixml->create_encoding(
byte_order = if_ixml_encoding=>co_little_endian
character_set = 'utf-8' ).
l_ixml_doc->set_encoding( l_encoding ).
l_root = l_ixml_doc->create_simple_element_ns(
name = 'SAPChartCustomizing' parent = l_ixml_doc ).
l_root->set_attribute( name = 'version' value = '1.1' ).
* Global Settings
l_globalsettings = l_ixml_doc->create_simple_element_ns(
name = 'GlobalSettings' parent = l_root ).
l_element = l_ixml_doc->create_simple_element_ns(
name = 'Dimension' parent = l_globalsettings ) .
l_element->if_ixml_node~set_value( 'Two' ) .
l_element = l_ixml_doc->create_simple_element_ns(
name = 'TransparentColor' parent = l_globalsettings ) .
l_element->if_ixml_node~set_value( 'None' ) .
l_element = l_ixml_doc->create_simple_element_ns(
name = 'CanvasColor' parent = l_globalsettings ) .
l_element->if_ixml_node~set_value( 'None' ) .
l_element = l_ixml_doc->create_simple_element_ns(
name = 'ColorPalette' parent = l_globalsettings ) .
l_element->if_ixml_node~set_value( 'Tradeshow' ) .
l_element = l_ixml_doc->create_simple_element_ns(
name = 'ColorOrder' parent = l_globalsettings ) .
l_element->if_ixml_node~set_value( 'Default' ) .
l_element = l_ixml_doc->create_simple_element_ns(
name = 'Gaps' parent = l_globalsettings ) .
l_element->if_ixml_node~set_value( 'Void' ) .
l_element = l_ixml_doc->create_simple_element_ns(
name = 'EqualizeValueAxes' parent = l_globalsettings ) .
l_element->if_ixml_node~set_value( 'false' ) .
l_element = l_ixml_doc->create_simple_element_ns(
name = 'Mirrored' parent = l_globalsettings ) .
l_element->if_ixml_node~set_value( 'Automatic' ) .
* Default
l_default = l_ixml_doc->create_simple_element_ns(
name = 'Defaults' parent = l_globalsettings ).
l_element = l_ixml_doc->create_simple_element_ns(
name = 'ChartType' parent = l_default ).
l_element->if_ixml_node~set_value( 'Lines' ).
l_element = l_ixml_doc->create_simple_element_ns(
name = 'FontFamily' parent = l_default ).
l_element->if_ixml_node~set_value( 'Arial' ).
l_ostream = go_ixml_sf->create_ostream_xstring( l_xstr ).
CALL METHOD l_ixml_doc->render EXPORTING ostream = l_ostream.
seaso_chart->set_customizing( xdata = l_xstr ).
Thanks for help,
Request clarification before answering.
User | Count |
---|---|
6 | |
4 | |
4 | |
2 | |
2 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.