Recharts Line activeDot function breaks tooltip?Is there an “exists” function for jQuery?var functionName = function() vs function functionName() Set a default parameter value for a JavaScript functionHow to break/exit from a each() function in JQuery?Short circuit Array.forEach like calling breakWhat does the exclamation mark do before the function?How do I pass command line arguments to a Node.js program?Is there a standard function to check for null, undefined, or blank variables in JavaScript?Chart.js ungroup data in tooltip with multiple linesHow to get xAxis correct on LineChart?

Mimic lecturing on blackboard, facing audience

What the heck is gets(stdin) on site coderbyte?

How do you justify more code being written by following clean code practices?

How to test the sharpness of a knife?

Why didn't Voldemort know what Grindelwald looked like?

How to make money from a browser who sees 5 seconds into the future of any web page?

Did I make a mistake by ccing email to boss to others?

Why is the Sun approximated as a black body at ~ 5800 K?

Giving feedback to someone without sounding prejudiced

What (the heck) is a Super Worm Equinox Moon?

Can I say "fingers" when referring to toes?

Is there a way to play vibrato on the piano?

How to make a list of partial sums using forEach

Would this string work as string?

Grepping string, but include all non-blank lines following each grep match

Can I cause damage to electrical appliances by unplugging them when they are turned on?

Proving an identity involving cross products and coplanar vectors

Do I have to know the General Relativity theory to understand the concept of inertial frame?

"Oh no!" in Latin

El Dorado Word Puzzle II: Videogame Edition

How many people need to be born every 8 years to sustain population?

Do you waste sorcery points if you try to apply metamagic to a spell from a scroll but fail to cast it?

How to leave product feedback on macOS?

Animation: customize bounce interpolation



Recharts Line activeDot function breaks tooltip?


Is there an “exists” function for jQuery?var functionName = function() vs function functionName() Set a default parameter value for a JavaScript functionHow to break/exit from a each() function in JQuery?Short circuit Array.forEach like calling breakWhat does the exclamation mark do before the function?How do I pass command line arguments to a Node.js program?Is there a standard function to check for null, undefined, or blank variables in JavaScript?Chart.js ungroup data in tooltip with multiple linesHow to get xAxis correct on LineChart?













1















I'm trying to trigger a function based on the activeDot of a Line in Recharts.



With the default value of true, moving the mouse around the chart shows the default tooltip, a vertical highlighted gridline, and the dots on the line are made larger, as expected.



However, say I want to trigger an event with the payload from the activeDot:



 activeDotHandler(data) 
this.setState( dotData: data ); // to be used in a different part of the webpage


render()
return (
<LineChart ...>
<XAxis ... />
<YAxis ... />

<Tooltip />

<Line activeDot=this.activeDotHandler.bind(this) ... />

</LineChart>
);



This works, but the tooltip and highlighted line no longer show up like when you have activeDot=true.



Returning true from the function also doesn't work.



I've tried things like activeDot= onMouseOver: this.activeDotHandler.bind(this) but then the mouse must be directly over the dot.



I just want the default tooltip and activeDot functionality with the addition of an event with the activeDot's payload.



Any ideas what I'm doing wrong? Thank you in advance!



EDIT: I also tried adding onMouseOver to the <LineChart> itself, which helpfully gave me an event containing the payload of the active point. However, that STILL disables the default tooltip/highlighted grid/activedot styling.



EDIT 2: Also tried returning the <circle> after this.setState(). Still same problem.










share|improve this question




























    1















    I'm trying to trigger a function based on the activeDot of a Line in Recharts.



    With the default value of true, moving the mouse around the chart shows the default tooltip, a vertical highlighted gridline, and the dots on the line are made larger, as expected.



    However, say I want to trigger an event with the payload from the activeDot:



     activeDotHandler(data) 
    this.setState( dotData: data ); // to be used in a different part of the webpage


    render()
    return (
    <LineChart ...>
    <XAxis ... />
    <YAxis ... />

    <Tooltip />

    <Line activeDot=this.activeDotHandler.bind(this) ... />

    </LineChart>
    );



    This works, but the tooltip and highlighted line no longer show up like when you have activeDot=true.



    Returning true from the function also doesn't work.



    I've tried things like activeDot= onMouseOver: this.activeDotHandler.bind(this) but then the mouse must be directly over the dot.



    I just want the default tooltip and activeDot functionality with the addition of an event with the activeDot's payload.



    Any ideas what I'm doing wrong? Thank you in advance!



    EDIT: I also tried adding onMouseOver to the <LineChart> itself, which helpfully gave me an event containing the payload of the active point. However, that STILL disables the default tooltip/highlighted grid/activedot styling.



    EDIT 2: Also tried returning the <circle> after this.setState(). Still same problem.










    share|improve this question


























      1












      1








      1








      I'm trying to trigger a function based on the activeDot of a Line in Recharts.



      With the default value of true, moving the mouse around the chart shows the default tooltip, a vertical highlighted gridline, and the dots on the line are made larger, as expected.



      However, say I want to trigger an event with the payload from the activeDot:



       activeDotHandler(data) 
      this.setState( dotData: data ); // to be used in a different part of the webpage


      render()
      return (
      <LineChart ...>
      <XAxis ... />
      <YAxis ... />

      <Tooltip />

      <Line activeDot=this.activeDotHandler.bind(this) ... />

      </LineChart>
      );



      This works, but the tooltip and highlighted line no longer show up like when you have activeDot=true.



      Returning true from the function also doesn't work.



      I've tried things like activeDot= onMouseOver: this.activeDotHandler.bind(this) but then the mouse must be directly over the dot.



      I just want the default tooltip and activeDot functionality with the addition of an event with the activeDot's payload.



      Any ideas what I'm doing wrong? Thank you in advance!



      EDIT: I also tried adding onMouseOver to the <LineChart> itself, which helpfully gave me an event containing the payload of the active point. However, that STILL disables the default tooltip/highlighted grid/activedot styling.



      EDIT 2: Also tried returning the <circle> after this.setState(). Still same problem.










      share|improve this question
















      I'm trying to trigger a function based on the activeDot of a Line in Recharts.



      With the default value of true, moving the mouse around the chart shows the default tooltip, a vertical highlighted gridline, and the dots on the line are made larger, as expected.



      However, say I want to trigger an event with the payload from the activeDot:



       activeDotHandler(data) 
      this.setState( dotData: data ); // to be used in a different part of the webpage


      render()
      return (
      <LineChart ...>
      <XAxis ... />
      <YAxis ... />

      <Tooltip />

      <Line activeDot=this.activeDotHandler.bind(this) ... />

      </LineChart>
      );



      This works, but the tooltip and highlighted line no longer show up like when you have activeDot=true.



      Returning true from the function also doesn't work.



      I've tried things like activeDot= onMouseOver: this.activeDotHandler.bind(this) but then the mouse must be directly over the dot.



      I just want the default tooltip and activeDot functionality with the addition of an event with the activeDot's payload.



      Any ideas what I'm doing wrong? Thank you in advance!



      EDIT: I also tried adding onMouseOver to the <LineChart> itself, which helpfully gave me an event containing the payload of the active point. However, that STILL disables the default tooltip/highlighted grid/activedot styling.



      EDIT 2: Also tried returning the <circle> after this.setState(). Still same problem.







      javascript reactjs recharts






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 7 at 6:07







      IceColdMax

















      asked Mar 7 at 3:15









      IceColdMaxIceColdMax

      62




      62






















          0






          active

          oldest

          votes











          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55035505%2frecharts-line-activedot-function-breaks-tooltip%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55035505%2frecharts-line-activedot-function-breaks-tooltip%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          1928 у кіно

          Захаров Федір Захарович

          Ель Греко