我有一些帶有標簽的二維數據點,我想在 pygal 中呈現它們。例如,對于每個點,當我用鼠標經過它時,我需要可視化一個特征。首先,為了繪制沒有任何標簽的點,我執行了以下操作:import pygal # data = [(0, 0), (.1, .2), (.3, .1), (.5, 1), (.8, .6), (1, 1.08), (1.3, 1.1), (2, 3.23), (2.43, 2)]xy_chart = pygal.XY(stroke=False)xy_chart.title = 'Correlation'xy_chart.add('A', data)xy_chart.render()它按照我的意愿繪制了所有數據,沒有標簽(這意味著如果我將鼠標放在一個點上,它只會給我“A”類和該點的坐標)?,F在,為了給我的數據添加標簽,我應該如何修改代碼?最初,我嘗試這樣做:xy_chart.add('A', [{'value': data, 'label': r'$\tau = 2.3'}])但它給了我錯誤 unsupported operand type(s) for -: 'tuple' and 'tuple如果我每次只考慮列表中的一個元素,例如:first_elem = data[0]xy_chart.add('A', [{'value': first_elem, 'label': r'$\tau = 2.3'}])它工作沒有錯誤,但它不會在乳膠中呈現標簽,所以我在圖像中看到$\tau = 2.3$而不是呈現的乳膠代碼。所以有兩個問題:第一個是我如何在點上放置標簽,第二個是我如何在 Latex 中渲染這些標簽
1 回答

墨色風雨
TA貢獻1853條經驗 獲得超6個贊
關于您的第二個問題:我不確定 pygal 是否支持 LaTeX(我無法找到有關此的任何信息 - 如果我錯了,請糾正我)。
關于你的第一個問題:用字典填充你的數據列表,如下所示:
data = [{'value': (0, 0), 'label': "τ = 2.3"},
(.1, .2), (.3, .1), (.5, 1), (.8, .6), (1, 1.08), (1.3, 1.1),
(2, 3.23), (2.43, 2)]
...
xy_chart.add('A', data)
...
(我只在你列表的第一學期展示了它)。
順便說一句,您可以包含一些 unicode 字符,因此,除非您想要包含數學公式的標簽,否則您應該能夠獲得一些符號(如τ這里)。
您可以使用列表推導以編程方式確定您的標簽。例如,
data = [(0, 0), (.1, .2), (.3, .1), (.5, 1), (.8, .6), (1, 1.08), (1.3, 1.1), (2, 3.23), (2.43, 2)]
labelled_data = [{'value': k, 'label': "τ = 2.3"} for k in data]
...
xy_chart.add('A', labelled_data)
...
添加回答
舉報
0/150
提交
取消