3

GitHub で最も星の付いたプロジェクトを視覚化する棒グラフを作成してみました。ツールチップ内に追加'label'しましたが、内容がうまく収まらない項目や、特定のプロジェクトのツールチップにリンクが表示されないものがあります。下記参照、'xlink''label'

ここに画像の説明を入力

以下は、Pygal モジュールを使用した Python コードです。実行して、自分で .svg ファイルを確認してください。

import requests, pygal


url = 'https://api.github.com/search/repositories?q=language:python&sort=star'
r = requests.get(url)
repo_list = r.json()['items']

names, stars = [], []
for k in repo_list:
    names.append(k['name'])
    temp = {
            'value': k['stargazers_count'], 
            'label': k['description'],
            'xlink': k['html_url'],
           }
    stars.append(temp)

my_config = pygal.Config() 
my_config.x_label_rotation = 45

chart = pygal.Bar(my_config)
chart.title = 'GitHub, Python Most Starred Projects'
chart.x_labels = names
chart.add('', stars)
chart.render_to_file('MyFile.svg', force_uri_protocol = 'http')

ツールチップのフォント サイズまたはツールチップ ウィンドウのサイズを調整して、この問題を解決するにはどうすればよいですか?

4

1 に答える 1

2

これを行うためのクリーンな方法はないと思います。.svg ファイルを直接変更する必要があると思います。この質問をする Pygal プロジェクトに関する未解決の問題があります。誰かが と を使用して解決策を見つけたようですが、それは私にはうまくいきません。私のマシンでは、単一のスペースに変換されます。\nforce_uri_protocol='http'\n

私が思いついた最善の方法は、次のように、説明を特定の文字数に切り詰めることです。

temp = {
        'value': k['stargazers_count'], 
        'label': k['description'][:80] + "..." ,
        'xlink': k['html_url'],
       }

このソリューションが気に入った場合は、いくつかのロジックを追加して、短いラベルの末尾に省略記号が表示されないようにすることができます。これは、次にこの問題に遭遇したときに使用する解決策だと思います。

于 2016-08-27T16:42:12.587 に答える