Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Adding an example of source lines or notes on the bottom of graphs #4873

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
LiamConnors merged 12 commits into plotly:doc-prod from rl-utility-man:patch-7
Mar 3, 2025

Conversation

Copy link
Contributor

@rl-utility-man rl-utility-man commented Nov 13, 2024

Please uncomment this block and take a look at this checklist if your PR is making substantial changes to documentation/impacts files in the doc directory. Check all that apply to your PR, and leave the rest unchecked to discuss with your reviewer! Not all boxes must be checked for every PR :)

If your PR modifies code of the plotly package, we have a different checklist
below :-).

Documentation PR

  • [ X] I've seen the doc/README.md file
  • [ X] This change runs in the current version of Plotly on PyPI and targets the doc-prod branch OR it targets the master branch
  • [ X] If this PR modifies the first example in a page or adds a new one, it is a px example if at all possible
  • [X ] Every new/modified example has a descriptive title and motivating sentence or paragraph
  • [X ] Every new/modified example is independently runnable
  • [X ] Every new/modified example is optimized for short line count and focuses on the Plotly/visualization-related aspects of the example rather than the computation required to produce the data being visualized
  • [ X] Meaningful/relatable datasets are used for all new examples instead of randomly-generated data where possible
  • [ N/A] The random seed is set if using randomly-generated data in new/modified examples
  • [ N/A] New/modified remote datasets are loaded from https://plotly.github.io/datasets and added to https://github.com/plotly/datasets
  • [N/A ] Large computations are avoided in the new/modified examples in favour of loading remote datasets that represent the output of such computations
  • [ X] Imports are plotly.graph_objects as go / plotly.express as px / plotly.io as pio
  • [ X] Data frames are always called df
  • [X ] fig = <something> call is high up in each new/modified example (either px.<something> or make_subplots or go.Figure)
  • [X ] Liberal use is made of fig.add_* and fig.update_* rather than go.Figure(data=..., layout=...) in every new/modified example
  • Specific adders and updaters like fig.add_shape and fig.update_xaxes are used instead of big fig.update_layout calls in every new/modified example
  • [X ] fig.show() is at the end of each new/modified example
  • [X ] plotly.plot() and plotly.iplot() are not used in any new/modified example
  • [X ] Hex codes for colors are not used in any new/modified example in favour of these nice ones

Code PR

  • I have read through the contributing notes and understand the structure of the package. In particular, if my PR modifies code of plotly.graph_objects, my modifications concern the codegen files and not generated files.
  • I have added tests (if submitting a new feature or correcting a bug) or
    modified existing tests.
  • For a new feature, I have added documentation examples in an existing or
    new tutorial notebook (please see the doc checklist as well).
  • I have added a CHANGELOG entry if fixing/changing/adding anything substantial.
  • For a new feature or a change in behaviour, I have updated the relevant docstrings in the code to describe the feature or behaviour (please see the doc checklist as well).

-->

Copy link
Contributor Author

rl-utility-man commented Nov 13, 2024
edited
Loading

This documents a work around for the canonical problem that Issue 3084 proposes to solve.
cc: @joerecht

@gvwilson gvwilson added P1 needed for current cycle community community contribution fix fixes something broken documentation written for humans labels Nov 13, 2024
Copy link
Contributor Author

rl-utility-man commented Dec 13, 2024
edited
Loading

@gvwilson Please advise about a road forward on this documentation PR. I'd welcome clarity about whether it is useful and, if so, how to revise and publish it. I see @LiamConnors was unassigned and then unassigned. I'm looking forward to engaging with the right person. I am honored to work with the Plotly team to make this project more useful.

Copy link
Member

@rl-utility-man sorry for the delay. I'll take a look at it this week

Comment on lines 795 to 801
#Use the title for the source line
fig.update_layout(
title=dict(text="Note: a near zero container coordinate is the most robust way to position this on the bottom. Only the 'title' supports container coordinates.",
yref="container",
# A small positive y coordinate avoids cutting off the descending strokes of letters like y, p, and q.
y=0.005,
# Paper coordinates let us align this at either edge of the plot region
Copy link
Member

@LiamConnors LiamConnors Dec 20, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the effort on this one @rl-utility-man
I like the idea. When I tried the example, some of the text is cut off
image
Makes me wonder if it's just maybe too specific of an example for the docs. Will it be difficult to get it working if your text looks different or you're running it in a specific environment?

Copy link
Contributor Author

@rl-utility-man rl-utility-man Dec 21, 2024
edited
Loading

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point about the cut off text! I reworked the example with short text that works well at a wide variety of screen resolutions and added a comment to the code warning about over long text getting cut off. I also rewrote the comments and documentation text to clarify out the general points I am trying to make with this example. Let me know what you think of the revised version.
image

Copy link
Contributor Author

rl-utility-man commented Jan 19, 2025
edited
Loading

@LiamConnors Please let me know if my edits make this useful documentation and addressed your concerns. I think this example consolidates insights that would otherwise require reading and thinking about several different sections of the documentation. Many thanks!

Copy link
Member

@LiamConnors Please let me know if my edits make this useful documentation and addressed your concerns. I think this example consolidates insights that would otherwise require reading and thinking about several different sections of the documentation. Many thanks!

Thanks @rl-utility-man! will try this out tomorrow

Comment on lines 805 to 807
# Aligning this flush with the right edge of the plot area is
# predictable and easy to code.
# Putting the title in the lower left corner, aligned with the left edge of the axis labeling would
Copy link
Member

@LiamConnors LiamConnors Jan 24, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# Aligning this flush with the right edge of the plot area is
# predictable and easy to code.
# Putting the title in the lower left corner, aligned with the left edge of the axis labeling would
# Aligning this flush with the right edge of the plot area is
# more predictable and requires less configuration
# Putting the title in the lower left corner, aligned with the left edge of the axis labeling would

Would this also be true? I think it might make it more precise. What do you think?

Copy link
Contributor Author

@rl-utility-man rl-utility-man Jan 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is fine! I batch accepted, so your edit is now shown in red; and the original is now the option.

Copy link
Member

@LiamConnors LiamConnors left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me @rl-utility-man. Thanks for adding this! I just left a few additional comments.

Co-authored-by: Liam Connors <connorsl@tcd.ie>
Copy link
Contributor Author

Thanks for the good suggestions @LiamConnors. I accepted them with minor tweaks and added one more thought about potentially breaking long lines with
tags. I like where we've landed! Many thanks!

Copy link
Contributor Author

@LiamConnors Is there anything I can do to get this over the finish line and merged? I am quite happy with where it is and very much appreciate the feedback that made this much better.

LiamConnors reacted with eyes emoji

Copy link
Contributor

gvwilson commented Mar 3, 2025

@LiamConnors anything else needed here? thx - @gvwilson

@LiamConnors LiamConnors self-requested a review March 3, 2025 17:56
Copy link
Member

@LiamConnors LiamConnors left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great. Thanks for adding this.
💃

@LiamConnors LiamConnors merged commit 6637682 into plotly:doc-prod Mar 3, 2025
4 checks passed
Copy link
Contributor Author

@LiamConnors @gvwilson: Much appreciated! I enjoy working with both of you and look forward to more joint work this spring.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Reviewers

@LiamConnors LiamConnors LiamConnors approved these changes

Labels
community community contribution documentation written for humans fix fixes something broken P1 needed for current cycle
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /