dot.py 文件源码

python
阅读 35 收藏 0 点赞 0 评论 0

项目:Projects 作者: it2school 项目源码 文件源码
def dot(self, serie, r_max):
        """Draw a dot line"""
        serie_node = self.svg.serie(serie)
        view_values = list(map(self.view, serie.points))
        for i, value in safe_enumerate(serie.values):
            x, y = view_values[i]

            if self.logarithmic:
                log10min = log10(self._min) - 1
                log10max = log10(self._max or 1)

                if value != 0:
                    size = r_max * (
                        (log10(abs(value)) - log10min) /
                        (log10max - log10min)
                    )
                else:
                    size = 0
            else:
                size = r_max * (abs(value) / (self._max or 1))

            metadata = serie.metadata.get(i)
            dots = decorate(
                self.svg,
                self.svg.node(serie_node['plot'], class_="dots"),
                metadata)
            alter(self.svg.node(
                dots, 'circle',
                cx=x, cy=y, r=size,
                class_='dot reactive tooltip-trigger' + (
                    ' negative' if value < 0 else '')), metadata)

            val = self._format(serie, i)
            self._tooltip_data(
                dots, val, x, y, 'centered',
                self._get_x_label(i))
            self._static_value(serie_node, val, x, y, metadata)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号