Examples: query, "exact match", wildcard*, wild?ard, wild*rd
Fuzzy search: cake~ (finds cakes, bake)
Term boost: "red velvet"^4, chocolate^2
Field grouping: tags:(+work -"fun-stuff")
Escaping: Escape characters +-&|!(){}[]^"~*?:\ with \, e.g. \+
Range search: properties.timestamp:[1587729413488 TO *] (inclusive), properties.title:{A TO Z}(excluding A and Z)
Combinations: chocolate AND vanilla, chocolate OR vanilla, (chocolate OR vanilla) NOT "vanilla pudding"
Field search: properties.title:"The Title" AND text
Answered
Hello! I'M Using The Self-Hosted Version Of Clearml. I'M Doing Some Testing And It Seems That The Clearml Isn'T Auto-Logging My Matplotlib Plots. The Versions I'M Using Are Matplotlib==3.6.2 And Clearml==1.6.4. Am I Missing Something?

Hello! I'm using the self-hosted version of clearml. I'm doing some testing and it seems that the Clearml isn't auto-logging my matplotlib plots. The versions I'm using are matplotlib==3.6.2 and clearml==1.6.4. Am I missing something?

  
  
Posted one year ago
Votes Newest

Answers 11


I can share the specific bit that's not being logged. I can't share much more. It's a violin plot.
plt_data = [df[df.col1 == x][col2] for x in df.col1.unique()] plt.violinplot(plt_data) plt.show()

  
  
Posted one year ago

FrothyShark37 any chance you can share snippet to reproduce?

  
  
Posted one year ago

it was in my first code bit. that's how I created the plot
plt.violinplot(plt_data)

  
  
Posted one year ago

FrothyShark37 what was different in your script ?

  
  
Posted one year ago

Hi FrothyShark37
Can you verify with the latest version?
pip install -U clearml

  
  
Posted one year ago

Updated to 1.8.0. Still no plot logging.

  
  
Posted one year ago

Can you post here the actual line? seems like we can fix it to also support this scenario (if we could test it)

  
  
Posted one year ago

Thanks FrothyShark37
I just verified, this would work as well, I suspect what was missing is the plt.show call, this is the actual call that triggers clearml

  
  
Posted one year ago

This one seem to work

` from clearml import Task
task = Task.init(...)
import matplotlib.pyplot as plt
import numpy as np

plt.style.use('_mpl-gallery')

make data:

np.random.seed(10)
D = np.random.normal((3, 5, 4), (0.75, 1.00, 0.75), (200, 3))

plot:

fig, ax = plt.subplots()

vp = ax.violinplot(D, [2, 4, 6], widths=2,
showmeans=False, showmedians=False, showextrema=False)

styling:

for body in vp['bodies']:
body.set_alpha(0.9)
ax.set(xlim=(0, 8), xticks=np.arange(1, 8),
ylim=(0, 8), yticks=np.arange(1, 8))

plt.show() `

  
  
Posted one year ago

Yap, this way works. I changed mine and it works now. Thank you

  
  
Posted one year ago

I think the main diference was that I was using the plt directly but you used the ax from the subplots function. Maybe clearml doesn't pick up the plt function directly.

  
  
Posted one year ago
628 Views
11 Answers
one year ago
one year ago
Tags