Graph mapper: Can you do this?

Hi, I was wondering if there is a way with Graph Mapper to do what is shown is in the image bellow
(which is not real, it is ‘drawn’ in Photoshop)
I’ve noticed that the bezier controls are nailed to the domain ends so only the first value can correspond to zero, and only the last can correspond to 1.

Is there a way to create more controls, so that for example the first 20 values are ‘leveled’ to zero and the last 20 to 1?


There is not (but from what I saw on the forum the GH2 graphing is much different). You could just use a min or max component on the graph output or repeat the data. Or make your own graph logic with curves. Pufferfish has a curve graph mapper but you can make one with regular GH components too just map points to a curve and evaluate them on a y axis.

Add the first value to the list or wait for me to publish a double bezier grah that I have in the oven.


@Michael_Pryor Pufferfish is the plugin I use more often than any other. My personal opinion is that a big part of its tools should be integrated into Grasshopper. (possibly under way for v2?) . I cannot tel you how many hours of my life I’ve saved thanks to you!

The solution you’re suggesting is very good and is close to what I’m currently doing. But the point is to avoid using 5 or 10 components for a job that can/ could / should be done with just one.
-A crowded canvas is a bad canvas-

@Dani_Abalde (de paso, eres espanol?) First of all cudos for your work. Iast time you helped me I had a look at your work and am currently exploring your plugins. (Axon is working great, although I wish it could be called by just one mouse-click)

Any chance I could get my hands on a beta of this double bezier graph? (I wouldn’t expect to, but it never hurts to ask) :slight_smile:

1 Like

Well if you want to use a curve and have less on canvas that is why I suggest Pufferfish Curve Graph Mapper (personally I prefer the control precision of Rhino curves vs Graph map curves). But if Graph mapper is what you’re into maybe @Dani_Abalde will give you a gift :smiley:


I missed that part of your answer. (9.2 KB)

I see now that for some cases it can be better.

  • Greater control
  • Few components


  • have to keep referenced curve in Rhino.
  • still: more than one components.
1 Like

I’ll try and find Davids GH2 Graph mapper. I know he posted a picture of it on the forum before. It looked highly customizable. :smiley:

Si, soy español.

GH already uses the simple interaction, and I am not in favor of changing it. That’s why it requires a key.

I’m going to compile it into a separate plugin, along with a RichGraphMapper with domain inputs. But it’s not depured yet, so let me know if you have any consideration. Give me a few minutes.


Will it make me money? :smiley:

I remember you, Mateusz, and Pieter had some nice ones here also:

It’s gonna make you richer in spirit at best xD
RichedGraphMapper.gha (31 KB)
EDIT:* Use this download Graph mapper: Can you do this?

Important, any suggestion is welcome, but this is not a published plugin or something like that. Graphs (bezier 2 and interpolated) should appear in the native Graph Mapper, if not, restart GH. The component is in Maths > Util, this had some problem but I don’t remember which one, I challenge you to find it!


Muchas gracias Daniel!!!
:heart: :heart: :heart: :heart: :heart: :heart: :heart: (just one like is not enough!)
I’ll get right down to working with it and gladly give back any comments/suggestion I have.

P.S. He vivido alli e estoy enamorado de Espana! Te dedico una cancion de mi groupo espanol favorito:

(puede ser tonto pero si me gustan los Mojinos escozios!!!)
1 Like

This is awesome Dani thank you. Now that definitely needs to be included as standard component.

Perhaps I take advantage that I already have it in a separate project to launch it as a plugin, I can add two more graps, the sigmoid and the arc. Any suggestions @Michael_Pryor, @anikolo, @ivelin.peychev?

1 Like

My suggestion to You (@Dani_Abalde) or David (@DavidRutten), would be a field for users to type-in their own functions. Not only changing parameters or picking one of the predefined ones but actually entering custom one. It has its benefits.

@Dani_Abalde @anikolo I found that post I was referring with the peak at @DavidRutten GH2 Graph Mapper.

A expression graph t’s a good idea, but I don’t want to go crazy implementing it. The graphs are quick to make since Rutten made it easy, but not that one.

Thanks guys. I have also added a polyline graph. I’ll put the link up as soon as I publish it.


for the ServicePack1 :wink:

I personally prefer a Rhino based graph as well. Especially because you can build in kinks etc.At first I was using the graphmapper a lot. Mainly to build in a fading effect. Usually the Bezier graph, to get from little space to big space. However this is actually not a good way in doing it. there was a constant complain that the spacing was not equally increasing. Sometimes even becomming arbitary increasing. An this is something you cant control with a Bezier. For instance if you want constant increasing you don‘t need a graph at all. Just calculating it and remaping it back to 0 to 1 domain.

1 Like


I see you Published it! (and it Rocks!!!)

I only have one comment (not a complain) with the bezier 2:

Since it gives you greater flexibility, there are cases where the graph extends beyond the 0-1 domain.

Initially I thought it was a bug (trained from the traditional graph mapper I expected the output to be within 0-1.

In retrospect, I think it’s better as it is. (it would cause more problems to reparameterize the values.
One has just to have in mind that. In the project I used it for, I just zeroed the negative values.

Once again Daniel, thank you for your amazing tool!