[solved] how to add text label for data points/cells on 3D chart and bar chart?

I wonder if there’s a way to add text label for data points/cells on 3D chart and bar chart.

Sun path diagram can do this as the sun information and sun position can be used for the text tag component …


Hi Grasshope, You can do this in a similar way. To find the points you can use deconstruct mesh, and add the text that you need to add using Grasshopper’s Text Tag components.

Thank you, Mostapha!

However, the points get from deconstruct mesh a 3D chart or bar chart are too many for text annotation (see image below, the value for that single bar is shown all the 4 corners of the mesh of the bar).

Plus, the text is behind the bar mesh geometry and it’s difficult to read without turning off the preview of the mesh.

I wonder if the 3D chart and bar chart components can add a “value annotation position” option to define a single point for each mesh to position its value if needed.

… the GH file

AR2521_epw_weather_file_viz_v013.gh (487 KB)


See attached. Instead of the decompose i used the Area component and it’s center output.


AR2521_epw_weather_file_viz_v013_AY.gh (485 KB)

Thanks, Abraham!

Good to know the area component can get the centroid of a geometry!

My approach in the attached GH file is to use one of the four corners of a mesh as an anchor to position the text, and I add a few more components for rounding the decimal number of the values.

However, this only seems to work for bar chart, not for 3D chart …

Advices are appreciated!

AR2521_epw_weather_file_viz_v013_AY_ZJ.gh (490 KB)

Check the attached. A hybrid of yours and mine.

Didn’t solved the 3DGraph …

Also check the blue group.


AR2521_epw_weather_file_viz_v013_AY2_ZJ.gh (488 KB)

Thanks a lot, Abraham! Learned a lot from your approach!


I Implemented an output for some label points if you want to generate these types of text labels (see attached file and the new component on the github).


MultipleDataBarChart3.gh (392 KB)

This is excellent Chris!

In the meantime i’ve found a couple of issues, if you don’t mind.

The dataLabelPts output doesn’t take into account the basePoint input.

If you have more than one variable to plot as column (stacked or not) then the location of the text is less “accurate” (this one is me being picky. Sorry).




Thanks for finding the bug with the basePoint. I fixed it in the attached GH file.

I am not sure if I understand your comments about the text location for multiple bars. This is what it should look like:

The attached GH file shows you how to navigate the data tree structure to ensure it displays like this.


MultipleDataBarChart4.gh (388 KB)

Thanks Chris. This is very nice!!

One question, not related to the thread …

One of the input data i’ connecting is the AirTemperature calculated in the simulation. When i want to graph with the comfort band\addaptive i get an error (orange component), saying that this is not allowed input. Only annual DBT or Effective Temperature. Isn’t the latter the AirTemp?


Abraham, Thanks for letting my

MultipleDataBarChart5.gh (397 KB)

Hi Chris,

i see it is working now. Thanks.

But your comment was missing. Sometimes they are interesting and important. So if there is some explanation, go ahead again. If it just only to say that it is fixed, so … thanks.


Huh. Somehow my whole comment did not make it up there. I was just saying that now you are able to use a comfort model any time that you connect up data that is temperature.


Hi Chris,

You are probably tired of this, but i’ve found another issue with the list of low/high bounds in the legendPar component.

In the last example you uploaded both axis start at -10 and end at 30. The scales look correct for the data, but the text on the axis is not.

I tried to play with the list values but with partial sucess. The values i gave were: -10,0,0,0 for the lowBound and 30,500,500,500 for the highBound. But then one of the temperatures is plotet wrongly.



Thank you finding this bug! This was an old one that would have messed things up even before the ability to accept data trees of legendPar. It resulted from the fact that the epw data was in units of “C” and the UTCI component was in units of “°C”. It has been fixed in the attached file and in the version of the bar chart that I just put on the github.


MultipleDataBarChart6.gh (407 KB)

Great. Thanks.



The method of adding text label on 3D chart does not work when a condStatement is apply. Is there a way to filter the text list (numbers) to match the condStatement dataPts?



See attached for a file of how to label the chart when a conditional statement is applied.


3DChartWCondtiStatement.gh (380 KB)