Mpld3: xticks рд░реЛрдЯреЗрд╢рди рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 16 рдорд╛рд░реНрдЪ 2018  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: mpld3/mpld3

рдореИрдВ plt.xticks (рд╕реНрдерд┐рддрд┐, рд▓реЗрдмрд▓, рд░реЛрдЯреЗрд╢рди = 90) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХреНрд╕ рдЕрдХреНрд╖ рдкрд░ рд▓реЗрдмрд▓ рдХреЛ рдШреБрдорд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдЬрдмрдХрд┐ рдпрд╣ plt.show() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, mpld3.show() рд░реЛрдЯреЗрд╢рди рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЯреЗрдХреНрд╕реНрдЯ рдХреЛ рдХреНрд╖реИрддрд┐рдЬ рд░реВрдк рд╕реЗ (0 рд░реЛрдЯреЗрд╢рди) рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИред

рдХреНрдпрд╛ рдХреЛрдИ рдХреГрдкрдпрд╛ рдХрд╛рдордХрд╛рдЬ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗ рд╕рдХрддрд╛ рд╣реИ?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореИрдВрдиреЗ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рджреЗрдЦрд╛ рд╣реИ, рдФрд░ рдЗрд╕ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдкрд╣реБрдВрдЪрд╛ рд╣реВрдВ рдХрд┐ рдЯрд┐рдХ рд░реЛрдЯреЗрд╢рди рдПрдХ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕реЗ рдХрднреА рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рд╢рд╛рдпрдж рдЗрд╕реЗ mplexporter рдФрд░ mpld3.js рджреЛрдиреЛрдВ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдирд╣реАрдВ рдХрд░рддрд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░реЛрдЯреЗрд╢рди рдХреА рдЬрд╛рдирдХрд╛рд░реА рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдордкреАрдПрд▓ рд╕реЗ рдбреА 3 рддрдХ рдкрд╛рд╕ рд╣реЛ рдЧрдИ рд╣реИред рд░реЛрдЯреЗрд╢рди рдЬрд╛рдирдХрд╛рд░реА рдореЗрдВ рдирд┐рдХрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП mplexporter/mplexporter/utils.py рдФрд░ рдореЗрдВ рдбреА 3 рдЧреНрд░рд╛рдл рдХреЛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ src/core/axis.js ред рдореИрдВ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдкреВрд░реА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рдЬреЛ рдХрд┐ рдЕрдм рдФрд░ рддреЗрдЬрд╝реА рд╕реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреА рдкрд╣рдЪрд╛рди рдХрд░ рд▓реА рд╣реИ, рд▓реЗрдХрд┐рди рдЕрднреА рдЯрд┐рдХ рд░реЛрдЯреЗрд╢рди рдРрд╕рд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИ рдЬреЛ mpld3 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдЗрд╕реЗ рдЬрд▓реНрдж рд╣реА рдЬреЛрдбрд╝рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛! :)

рд╕рднреА 6 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рд╛рдВ рдХреГрдкрдпрд╛ рдореИрдВ рднреА рдЗрд╕рд╕реЗ рдЬреВрдЭ рд░рд╣рд╛ рд╣реВрдВ, рд╢реАрд░реНрд╖рдХ рднреА рдкреНрд░рдХрдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ
Capture

рдЕрдЪреНрдЫрд╛ рд╕рд╡рд╛рд▓ @azayz @pranet - рд╣рдо рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВрдЧреЗ!

рдореИрдВ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдЬреИрд╕реЗ рд╣реА рдпрд╣ рдареАрдХ рд╣реЛ рдЬрд╛рдПрдЧрд╛, рдореИрдВ рдЖрдкрдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░ рджреВрдВрдЧрд╛! рджреЗрд░реА рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИ, рд╕рдордп рдирд┐рдХрд╛рд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред :)

~ @azayz рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдХреНрдпрд╛ рдХреЛрдИ рдореМрдХрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдирд╛ рдХреЛрдб рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХреЗрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдЖрдкрдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдареАрдХ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ? рдХрд┐рд╕реА рддрд░рд╣ рдореИрдВ рддреБрдорд╕реЗ рднреА рдЕрдзрд┐рдХ рдмрдЧ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред~

рд╕рд╛рде рд╣реА, рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЗ: #369 #22 #221 #360 #364

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ 1: рдЕрддрд┐рд░рд┐рдХреНрдд matplotlib==3.3.0 рдмрдЧ #471 рдореЗрдВ рдЯреНрд░реИрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдореИрдВрдиреЗ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рджреЗрдЦрд╛ рд╣реИ, рдФрд░ рдЗрд╕ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдкрд╣реБрдВрдЪрд╛ рд╣реВрдВ рдХрд┐ рдЯрд┐рдХ рд░реЛрдЯреЗрд╢рди рдПрдХ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕реЗ рдХрднреА рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рд╢рд╛рдпрдж рдЗрд╕реЗ mplexporter рдФрд░ mpld3.js рджреЛрдиреЛрдВ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдирд╣реАрдВ рдХрд░рддрд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░реЛрдЯреЗрд╢рди рдХреА рдЬрд╛рдирдХрд╛рд░реА рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдордкреАрдПрд▓ рд╕реЗ рдбреА 3 рддрдХ рдкрд╛рд╕ рд╣реЛ рдЧрдИ рд╣реИред рд░реЛрдЯреЗрд╢рди рдЬрд╛рдирдХрд╛рд░реА рдореЗрдВ рдирд┐рдХрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП mplexporter/mplexporter/utils.py рдФрд░ рдореЗрдВ рдбреА 3 рдЧреНрд░рд╛рдл рдХреЛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ src/core/axis.js ред рдореИрдВ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдкреВрд░реА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рдЬреЛ рдХрд┐ рдЕрдм рдФрд░ рддреЗрдЬрд╝реА рд╕реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреА рдкрд╣рдЪрд╛рди рдХрд░ рд▓реА рд╣реИ, рд▓реЗрдХрд┐рди рдЕрднреА рдЯрд┐рдХ рд░реЛрдЯреЗрд╢рди рдРрд╕рд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИ рдЬреЛ mpld3 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдЗрд╕реЗ рдЬрд▓реНрдж рд╣реА рдЬреЛрдбрд╝рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛! :)

рдореЗрд░реЗ рдЕрдиреБрд╕рд╛рд░, xAxis рдХреЛ рдШреБрдорд╛рдиреЗ рдХрд╛ рдПрдХ рд╕рд░рд▓ рдФрд░ рдЖрд╕рд╛рди рдЙрдкрд╛рдп CSS рд╣реИред

css = """ .mpld3-xaxis text{ transform: translate(18px, 30px) rotate(45deg); } """

рдЗрд╕ CSS рдХреЛ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХрдиреЗрдХреНрдЯ рдкрд░ рд▓рд╛рдЧреВ рдХрд░реЗрдВ
mpld3.plugins.connect(fig, mpld3.plugins.PointHTMLTooltip(lines[0],labels=labels,voffset=10, hoffset=10,css=css))

рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдЖрдХрд░реНрд╖рдг рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

andreatramacere picture andreatramacere  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

sheldonpark picture sheldonpark  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dansteingart picture dansteingart  ┬╖  31рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dmiller7115 picture dmiller7115  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

arnaudrenaud picture arnaudrenaud  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ